3 Modeling software architectures Flashcards

1
Q

What is a model?

A

A model is a simplified representation of reality created for a specific purpose.

Example: In urban planning, a 3D city model helps architects plan infrastructure while omitting unnecessary details.

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

What is a meta-model?

A

A meta-model is the model of a model. It defines the rules and syntax for creating models.

Example: UML diagram follow a meta-model that specifies how classes, objects and relationships should be structured.

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

What is view-based modeling?

A

It is a way of modeling where each view addresses the needs of a specific stakeholder.

Example: In software development, a developer might use a class diagram (Logical View), while a network engineer might prefer a deployment diagram (Physical View).

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

What is an architectural view?

A

Architectural view support divide and conquer, by displaying only useful structures at once.

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

How many architectural view types are important? What are their names?

A

Three types.
1. Module view type,
2. Component & Connector view type and
3. Allocation view type

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

What is the module view type?

A

It describes the system’s static structure, showing code units like modules and their relationships.

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

What are some architectural styles of the module view type?

A
  1. Decomposition structure
  2. Uses structure
  3. Layer structure
  4. Class structure
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the component and connector view type?

A

It describes the system’s dynamic structure, through components (services, peers, clients, servers, filters) and how they interact with connectors that are responsible for their communication, like call-return and pipes

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

What are some architectural styles of the component and connector view type?

A
  1. Peer-to-peer
  2. Shared-data
  3. Client-server
  4. Call-return
  5. Data-flow
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the allocation view type?

A

It describes the system’s physical structure on how software elements are allocated on their respective hardware elements.

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

What are some architectural styles of the allocation view type?

A
  1. Work assignment
  2. Implementation
  3. Deployment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the 4+1 view model?

A

It is a general purpose software architecture framework. It divides a system in four views:
(1) logical view,
(2) development view,
(3) process view and
(4) physical view.

Also it considers the +1 that refers to the systems behavior.

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

Why is it called 4+1 and not 5 view model?

A

Because the fifth is described by textual scenarios, wrapping the four views together and should show how they work together, so it does not describe aspects of the architecture as the other four.

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

What is the ISO/IEC 42010 view model?

A

ISO/IEC 42010 provides a more general, flexible, and formal framework for documenting any system’s architecture, while the 4+1 View Model is a more specific method aimed at describing software architecture through a set of predefined views.

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