Download - DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203
![Page 1: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/1.jpg)
DYA|Software,Architecture for mission-
critical applications
Robert Deckers Xootic v1 20101203
![Page 2: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/2.jpg)
2
Architecture “approaches/techniques”
ComponentsInterface
specifications
4 + 1 view
RUP
Design by contract
Object oriented
Model driven
Zachmann framework
Togaf
Use case driven
Aspect oriented
UML++
Performancebudgets
Software productfamily
Service oriented
What to do?
![Page 3: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/3.jpg)
3
Good architecture is…
Technology independent
Homogeneouscomponents
Cost aware
Reliable systems
Maitainablesystems
Modular
Flexible
Fast systems
reusable
Enlarge profit
Simple
Service oriented
Future proof
User firendlysystems
predictableprojects
not always
Situation dependent
![Page 4: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/4.jpg)
4
SystemArchitectuur
Correct, Consistent, Communicated
t
ROI
Project
Software engineer
Tester
Art. 4.11
functionaliteit
Correct : it fits the environment
Communicated : everyone knows what he should know
Government
End user
Businessmanager
HRM
Program manager
Network mgt
Componentbuilder
Application mgt
Consistent : its well engineered
Good Architecture takes care of:
Control of architecture activitities Assessable architecture Good system
![Page 5: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/5.jpg)
5
Good architecture is correct
The architecture is based on validated statements about the environent and the stakeholder concerns in particular. Concerns are prioritized. The architecture forms the right balance between the concerns.
Achieved by:
• Consciously balanced concenrs
• Enough environment analysis
• Validated environment information
“The system fits its environment”
![Page 6: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/6.jpg)
6
Good architecture is consistent
The architecture forms a whole. Architecture statements do not conflict with eachother and in relation to the environment. The system can become reality with the architecture.
Achieved by:
• Consciously managed
• Demonstrable realizable
• Verification on contradictions
“The system is well constructed”
![Page 7: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/7.jpg)
7
Goede architecture is communicatedThe stakeholders know their relation with the architecture and what is expected from them. The stakeholders understand how their concenrs are covered in the architecture. A communicated architecture starts with a communicatable architecture description
Achieved by:
• Consciously executed
• Embedded in the organization
• Translatable into actions
“Everyone knows what he should know.“
![Page 8: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/8.jpg)
8
The way to good architecture
• Master and manage architecture
• Balanced decisions
• Guarantee commonality and facilitate variation
• Do!
T
Customer need
Application
Software
system
Rea
lizat
ion
Construction
Technolog
yRea
lizat
ion
proc
ess
/
orga
niza
tion
Bedrijfs-functie
Proces Infrastructuur
Medewerker
Organisatie
Dataobject
Bedrijfsobject
Applicatie
Comp 1 Comp 2 Comp 3 Comp 4
App comp 1
App comp 5
App comp 4
Centrale component
analyseren
uitdragen
opstellensysteem
omgeving
architectuur
architect
stakeholder
Correct
Consistent
Communicated
![Page 9: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/9.jpg)
ContentDYA|Software Visio
n
Software architecture and software architect
Architecture Reasoning Model
Familyarchitectur
es
Manage and
masterTasks of the architect
Good Architecture
Organization wideSoftwarearchitectuur
![Page 10: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/10.jpg)
10
CustomerCliëntConsumerRelationBuyer
Software development is a human job
![Page 11: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/11.jpg)
11
Definition Software Architecture
Based on • DYA (architecture guides development)
• IEEE-1471 (architecture description serves stakeholders)
The software architecture of a system is a set of statements that guide the design, realisation and evolution of the software in its environment
The statements are a model of:
• the fundamental structure of the software elements or the relationship between the elements and the environment,
• principles that guide the creation of the elements
![Page 12: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/12.jpg)
12
DYA – Architecture Process
◦ www.dya.info
![Page 13: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/13.jpg)
13
Working area of the software architect
Information analist, Business architect
Requirements engineer,
\
Programmamanager, Project leader,
Development manager
Software engineer, designer, Tester,
Infrastructure/hardwarearchitect
Softwarearchitect
Planning, Development process,
Risks,Expertise/knowledge
Business needs,Role in the business proces
Functionality,Quality
Component, Interface
Design pattern, hardware resources
![Page 14: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/14.jpg)
14
What architecture does (should do)
Offer
Solution direction
For the most
Important properties
that are
Difficult to realize
Main design : functional, technical, approachArchitecture principles
Business goals - Unique - Right quality
Not standard, What went wrong last time? Multiple departments – disciplines - systems
![Page 15: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/15.jpg)
15
Manage and master
stakeholderdecision
specification
aspect ia about concern
influences
takes
statement
adresses
environment
system
has interest in
has interaction with
model view
viewpoint
derived from
derived according tosets rules for
![Page 16: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/16.jpg)
16
T
Customer need
Application
Softwaresystem
Rea
lizat
ion
Construction
Technology
Rea
lizat
ion
proc
ess
/
orga
niza
tion
Different concerns
Iterative developme
nt
Based on open source
Phase out old system
Service delivered via phone, mail, counter
and webBefore the
competition
Build off-shore
Complies to standard
reliable
Components should reusabe
Runs on a mobile
Fast new procducts
Share personnel with other project
Green image
Specific and prioritized • Focus for architecture decisions• Organization alignment
![Page 17: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/17.jpg)
17
Different representations
Adjust communication to target audience • support in the organization• translation into actions by the target audience
![Page 18: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/18.jpg)
18
Different solutions
buy – make – outsource – cloud - open source agile – waterfall - …
Conscious descisions • Architecture realizable• traceable
![Page 19: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/19.jpg)
19
Architecture Reasoning Model
T
Rea
lizat
ion
Construction
Technology Rea
lizat
ion
proc
ess
orga
niza
tion
Customer need
Application
App
roac
h
Function
Design
Environment
Border
System
programmerhardware architect(technical) designer
tester
Project leaderProgram manager
Development manager
Information analist End user
businessarchitect / -manager requirements engineerEnvironment
Border
System• consistent architecture• balanced decisions• stakeholders aligned
![Page 20: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/20.jpg)
20
Family: applications with the same genes
Component 5
App 6 App 7 App 8 App 9
App 1 App 5 App 4
App 3 App 2Family members
App 6 App 7
App 2
App 1
Design/realization patterns
Use central component
• Homogeneous landscape manageable• Reuse faster and better
![Page 21: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/21.jpg)
21
Family architecture: set up
• Family scope− Criteria: business, technology, process
− Possible members
• Ownership
• Proces from family to member and back− Family requirements/goals
− Deploy and learn
![Page 22: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/22.jpg)
22
Family architecture: Commonality
• Fix requirements− Part of project requirements
− Acceptance criteria
• Fix (software)elements− Components
− Design patterns
− Platform…
• Fix process/organization− Deliverables and how to’s
− People: Roles and knowledge
![Page 23: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/23.jpg)
23
Family architecture: variation
Software mechanisms:
• Composition
• Inheritance
• Extension
• Configuration
• Type instantiation/parametrization
• Generation
![Page 24: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/24.jpg)
24
Tasks of the architect
•Analyze environment and system
•Define the architecture
•Convey the architecture
![Page 25: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/25.jpg)
25
Environment analysis
• Other systems− Part of, consists of, chain, family
• Developments in the environment
• Find aspects
• Select stakeholders− Influence and importance
− In time
• Useful concerns: − goals, tasks, information need
• Validation
![Page 26: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/26.jpg)
26
Define the architecture
• Balanced decisions
• Central concepts− Software components
− Services
− Software as a service
− Guidelines
− Functions
− COTS
− Expertise
− Aspect orientation
• Analyse the impact of changes
![Page 27: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/27.jpg)
27
Convey the architecture
• Select viewpoints
• Plan the communication
• Embed the architecture in the realization− Publish the top-level concerns
• Support mgt decision. Mgt must be aware of:− Architecture Follows business goals
− Changing an existing architecture is not easy
− Aimed to be a benefit
− The architect makes the architecture
![Page 28: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/28.jpg)
28
For architects(that know dutch)
![Page 29: DYA|Software, Architecture for mission-critical applications Robert Deckers Xootic v1 20101203](https://reader030.vdocuments.mx/reader030/viewer/2022013100/551b86b5550346942b8b4b05/html5/thumbnails/29.jpg)