Architecture Views Flashcards

1
Q

Which views are differentiated?

A
  • context view
  • runtime view
  • building block view
  • deployment view
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Describe the contents of the context view

A
  • describes the environment of a system and the relationships and connections with this environment
  • emphasis on interfaces, references to corresponding interface concept should be made
  • delimits the scope of the system in question
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are important elements of the context view?

A
  • external actors (adjacent systems and users)
  • the system to be developed
  • all interfaces to adjacent systems

Description of all interfaces includes:
- type of interface (online, batch, …)
- data or resources passed via interface
- methods or functions used
- communication protocols
- communication patterns used (asynch, synch, …)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Describe the stakeholders of the context view

A
  • lots of stakeholders because interfaces are critically important

May include:
- project management
- requierement analysis (input providers -> ip)
- system analysis (ip)
- Technical or domain expers (ip)
- design and development
- testers
- downstream administration and operations
- controlling
- possibly lot more

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What notations are used for context view

A
  • many different notations
  • uml component / composite structure diagrams
  • for technically focused context views, supplement of UML nodes possible
  • power point presentations
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

In what connection does the context view stand with the other views?

A
  • provides abstract illustration of other views
  • their respective notations and diagrams can be used to supplement those of the context view
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Describe the contents of the building block view

A
  • during development: desired structure
  • once in production: real-world structure of the system
  • Aim: explicitly show building blocks of the system and their relationships inbetween
  • can be developed in top-down approach, starting from context view
  • if integration is needed, top-down approach may be supplemented by bottom-up abstraction of these systems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

In the building block view what should the description of a building block contain?

A
  • name
  • purpose/responsibility
  • Interface
  • reference to implementation

Other optional attributes may be added

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Describe the stakeholders of the building block view

A
  • project staff involved in design, architecture, development and testing of software
  • project management staff for activity plans and assistance in development of work
  • quality assurance
  • staff involved in future maintenance of resulting software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What descriptive elements / notations are used in the building block view?

A
  • UML class and component diagrams
  • components most used when external interfaces play significant role
  • class diagrams often in refinement
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Describe the contents of the runtime view

A
  • describes (dynamic) interactions between the instances of the building blocks at runtime
  • includes aspects of system operation like system start, runtime configuration and system administration
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Describe the stakeholders of the runtime view

A
  • operators of the software system
  • staff involved in architecture, design, development and testing of the software
  • system architects
  • quality assurance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are typical descriptive elements of the runtime view

A
  • UML activity, communication and sequence diagrams
  • Traditional flow charts
  • BPMN for representing business processes
  • small sections of (pseude)code
  • informal verbal sequence description in form of numbered lists
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How are UML communication and sequence diagrams different to each other and to what view to they belong?

A
  • runtime view
  • communication diagrams offer more flexibility on how to arrange the diagram, often being easier to understand
  • sequence diagrams have clear structure, flow from left to right, making it easier to understand where things start
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Describe the contents of the deployment view

A
  • describes details about technical infrastructure, how components are where to be deployed
  • assist operation and deployment of the system
  • system software belongs visible onto technical nodes/hardware building blocks
  • artifacts are assigned to their execution environment
  • this assignment can be made 1:1 or m:n
  • also mapping of the software system and “reality, e.g. in form of references to build and deploy scripts
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Describe the stakeholders of the deployment view

A
  • staff responsible for deployment and operation of the software system
  • system architect and software architects
  • developers
17
Q

What are typical descriptive elements in the deployment view

A
  • UML deployment diagrams
  • including elements like: channels, UML components/packages used for runtime elements (software systems)
18
Q

How do interedependencies affect architecture views?

A
  • changes in one view often has impact on other views
  • iterative process is desireable in which dependent views are updated following changes
  • special interdependencies should be documented
19
Q

What interdependencies exist usually between architecture views?

A
  • building block view and runtime view are derived from context view and thus dependent
  • building block view and runtime view also have a relationship with each other
  • deployment view uses building block view elements and exists in a technical context
20
Q

How does the Hierarchical refinement of architecture views work?

A
  • hierarchy begins with context view, presenting a black box
    1. level of refinement exposes the overall system as a white box, showing the inner composition out of building blocks
  • these inner building blocks are again black boxes that can/should be further refined
  • fluid transition to software system design, refinement of modules or components to specific classes
  • refinement affects most views, especially building block and runtime view
21
Q

What is usually part of black box building block descriptions?

A
  • Purpose/task
  • Input/output interfaces
  • Fulfilles requierements
  • Variability
  • Performance Characteristics
  • Storage location/file (source code)
  • other administrative information
  • open issues
22
Q

What is usally part of the white box description?

A
  • Overview diagram
  • Local building blocks (list/table)
  • Local relationships
  • Design decisions
23
Q

What does the context view focus on in technical vs. functional perspective?

A
  • functional: functional delimitation from other systems
  • technical: technical integration into existing or future infrastructure