final_deck Flashcards

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.

A

previous

26
Q

The implementation activity is centered on creating a _________ implementation of the architecture.

A

faithful

27
Q

The implementation activity utilizes a variety of techniques to achieve this in a _________ manner

A

cost-effective

28
Q

Analysis and testing activities can be focused on and guided by the ___________.

A

architecture

29
Q

_________ _________ and ________ for an __________ must be pursued at the same time.

A

requirements analysis, consideration design, architecture

30
Q

Evolution activities revolve around the product’s __________.

A

architecture

31
Q

Architecture is more than a _________

A

“high-level design”

32
Q

Context of Software Architecture (6)

A

requirements, design, implementation, analysis/testing, evolution, development process

33
Q

Traditional SE suggests requirements analysis should remain __________.

A

unsullied by any consideration for a design.

34
Q

In software engineering, new products come from the ___________ of _________ and their _________.

A

observation, existing solutions, limitations.

35
Q

Requirements analysis: without reference to existing architecture, it becomes difficult to _______.

A

assess practicality, schedules, or costs.

36
Q

Existing designs and architecture provide the _______.

A

solution vocabulary.

37
Q

NFPs are the result of ________.

A

architectural choices.

38
Q

An _______ will be required for assessment of whether the properties are achievable

A

architectural framework

39
Q

Design phase decisions concern (3):

A

– system’s structure, – identification of its primary components, – and their interconnections.

40
Q

Design is an activity that ________

A

pervades software development.

41
Q

DSSA reuse applicable parts of the ___________ and ______.

A

architecture and implementation.

42
Q

Design Techniques (3) basic conceptual tools

A

separation of concerns, abstraction, modularity

43
Q

__________ are activities undertaken to assess the qualities of an artifact.

A

analysis and testing

44
Q

The traditional software engineering approach to maintenance is ___________.

A

largely ad hoc

45
Q

No single “right” software process for __________ exists.

A

architecture-centric software engineering