final_deck Flashcards

(44 cards)

2
Q

Cons of Object Oriented Design:

A

– Provides only one level of encapsulation (the object).– One notion of interface– One type of explicit connector (procedure call) Programming language might dictate important design decisions– Assumes a shared address space

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

Architecture is a set of ________________ about a software system.

A

principal design decisions

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

Treating architecture as a phase _______ its foundation role in _______________.

A

denies, software devlopment

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

Our understanding of what works now, and how it works ______________.

A

affects our wants and perceived needs.

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

In a “faithful implementation” all of the structural elements found in the architecture are implemented in ____________.

A

the object code, source code, etc.

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

Traditional design phase suggests translating _______ into ________, so a programmer can implement them.

A

requirements into algorithms.

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

Pros of Object Oriented Design:

A

– UML modeling notation– Design patterns

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

Domain Specific Software Architecture (DSSA) captures and characterizes the best solutions and best practices from:

A

past projects within a domain.

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

In the implementation phase, the code should be ________ to the architecture.

A

faithful

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

The objective of the implementation phase is to create ___________ .

A

machine-executable source code

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

In “faithful implementation”, source code must not utilize major _______________ that have no corresponding elements in the architecture.

A

new computational elements

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

In “faithful implementation”, source code must not contain __________ between architectural elements that are not found in the architecture.

A

new connections

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

In an “unfaithful implementation,” the implementation does have an _________. It is _______, as opposed to what is documented.

A

architecture, latent

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

In an “unfaithful implementation,” there is a failure to recognize the distinction between ________ and __________ architecture.

A

planned, implemented

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

The earlier an error is detected and corrected, the ______________.

A

lower the aggregate cost

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

Implementation strategies include (5):

A

– Generative techniques– Frameworks– Middleware– Reuse-based techniques– Writing all code manually

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

The ____________ of a new application begins before the requirements.

A

perceived need

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

Analysis on architectural models can reveal (5):

A

– Component mismatch– Incomplete specifications– Undesired communication patterns– Deadlocks– Security flaws

20
Q

The Turbine model: (bottom to top)

A

– Requirements– Design– Coding/Implementation– Testing

21
Q

In the turbine model, the core of the turbine contains:

A

Requirements and Design documentation.

22
Q

Insights from our experiences: 1. Help us____ 2. enables us to __________

A
  1. imagine what might work. 2. assess development time costs.
23
Q

The visualization of the turbine model is _______ not _________.

A

Illustrative, perspective.

24
Q

The requirements activity is a co-equal partner with _________:

A

design activities

25
Q

The design activity is enriched by techniques that exploit knowledge gained in _______ product developments.

26
The implementation activity is centered on creating a _________ implementation of the architecture.
faithful
27
The implementation activity utilizes a variety of techniques to achieve this in a _________ manner
cost-effective
28
Analysis and testing activities can be focused on and guided by the ___________.
architecture
29
_________ _________ and ________ for an __________ must be pursued at the same time.
requirements analysis, consideration design, architecture
30
Evolution activities revolve around the product’s __________.
architecture
31
Architecture is more than a _________
"high-level design"
32
Context of Software Architecture (6)
requirements, design, implementation, analysis/testing, evolution, development process
33
Traditional SE suggests requirements analysis should remain __________.
unsullied by any consideration for a design.
34
In software engineering, new products come from the ___________ of _________ and their _________.
observation, existing solutions, limitations.
35
Requirements analysis: without reference to existing architecture, it becomes difficult to _______.
assess practicality, schedules, or costs.
36
Existing designs and architecture provide the _______.
solution vocabulary.
37
NFPs are the result of ________.
architectural choices.
38
An _______ will be required for assessment of whether the properties are achievable
architectural framework
39
Design phase decisions concern (3):
– system's structure, – identification of its primary components, – and their interconnections.
40
Design is an activity that ________
pervades software development.
41
DSSA reuse applicable parts of the ___________ and ______.
architecture and implementation.
42
Design Techniques (3) basic conceptual tools
separation of concerns, abstraction, modularity
43
__________ are activities undertaken to assess the qualities of an artifact.
analysis and testing
44
The traditional software engineering approach to maintenance is ___________.
largely ad hoc
45
No single “right” software process for __________ exists.
architecture-centric software engineering