Lecture 4 Flashcards

(19 cards)

1
Q

What is architecture reconstruction?

A

It is the process of obtaining the ‘as-built’ architecture of an implemented system from the existing legacy system.

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

Why reconstruct an architecture?

A

To understand architectural dependencies, re-document for simulations, evaluate conformance, recover tactics, document non-functional requirements, or identify failures due to complexity.

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

What should you define before starting architecture reconstruction?

A

You should define goals and objectives, such as reuse, understanding complexity, identifying patterns, or adding components while preserving conceptual integrity.

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

What are the main steps of the general reconstruction process?

A

Information extraction, database construction, view fusion, architectural view composition, and architecture analysis.

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

What is view fusion?

A

The process of combining multiple architectural views to create a more complete and accurate representation of a system.

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

What are typical database queries used in architecture reconstruction?

A

To define views of functional decomposition, shared information, and development responsibility.

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

Why is documenting architecture important?

A

To preserve knowledge, support communication, assist maintenance, support planning, fulfill external demands, and educate.

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

What types of software documentation exist?

A

Requirements specification, architecture/design documentation, code documentation, test documentation, user manuals, marketing material, and issue tracking.

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

What does IEEE 1471 require in an Architecture Description (AD)?

A

Stakeholders and concerns, vocabulary (viewpoints), a set of views with rationale, and inconsistencies among views.

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

What is a viewpoint in software architecture?

A

A specification that defines what is seen in a view, the stakeholders, concerns, modeling techniques, and its source.

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

What is Kruchten’s 4+1 View Model?

A

It includes Logical View, Development View, Process View, Physical View, and Scenarios (+1) to describe the software architecture.

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

Who are typical stakeholders of architectural views?

A

End users, integrators, developers, system engineers, and maintainers.

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

What is the logical view concerned with?

A

Shows system structure and key abstractions as objects or classes; focuses on functional requirements.

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

What does the process view address?

A

Concerns like concurrency, distribution, fault-tolerance, and performance using a logical network of processes.

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

What does the development view show?

A

Organization of software modules in the development environment, often using layered style.

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

What is the purpose of the physical view?

A

Maps software to hardware, showing component deployment across nodes, helping system engineers.

17
Q

What is the role of scenarios in the 4+1 model?

A

They illustrate how the elements of other views work together and help in validating and discovering architectural elements.

18
Q

What are common pitfalls when drawing architecture diagrams?

A

Inconsistent color-coding, missing relationships, unclear purposes, omitted technology choices, and mixing abstraction levels.

19
Q

What are some heuristics to improve architecture diagrams?

A

Use same kind of boxes per diagram, separate diagrams for different kinds, and ensure clarity in structure and context.