Quiz 2 Flashcards
Treating architecture as a phase _______ its foundational role in _______________.
denies
software devlopment
Our understanding of what works now, and how it works ______________.
affects our wants and perceived needs
Traditional design phase suggests translating _______ into ________, so a programmer can implement them.
requirements into algorithms
Pros of Object Oriented Design:
- UML Modelling Notation
- Design Patterns
Cons of Object Oriented Design:
Provides only
- One level of encapsulation (the object)
– One notion of interface
– Programming language might dictate important design decisions
– Assumes a shared address space
Domain Specific Software Architecture (DSSA) captures and characterizes the best solutions and best practices from _____________.
past projects within a domain
Architecture is a set of ________________ about a software system.
principal design decisions
The Turbine model (bottom to top):
– Requirements
– Design
– Implementation / coding
– Testing
The Turbine model: (bottom to top)
– Requirements
– Design
– Implementation / coding
– Testing
In an “unfaithful implementation,” there is a failure to recognize the distinction between ________ and __________ architecture.
planned
implemented
Implementation strategies include (5):
– Generative techniques – Frameworks – Middleware – Reuse-based techniques – Writing all code manually
In the implementation phase, the code should be ________ to the architecture.
faithful
The objective of the implementation phase is to create ___________ .
machine-executable source code
The visualization of the turbine model is _______ not _________.
Illustrative
perspective
In a “faithful implementation” all of the structural elements found in the architecture are implemented in ____________.
the source code
In “faithful implementation”, source code must not utilize major _______________ that have no corresponding elements in the architecture.
new computational elements
In “faithful implementation”, source code must not contain __________ between architectural elements that are not found in the architecture.
new connections
In an “unfaithful implementation,” the implementation does have an _________. It is _______, as opposed to what is documented.
architecture, latent
The earlier an error is detected and corrected, the ______________.
lower the aggregate cost
The ____________ of a new application begins before the requirements.
perceived need
In the turbine model, the core of the turbine contains:
Requirements and Design documentation.
The requirements activity is a co-equal partner with _________:
design activities
The design activity is enriched by techniques that exploit knowledge gained in _______ product developments.
previous
The implementation activity is centered on creating a _________ implementation of the architecture.
faithful
The implementation activity utilizes a variety of techniques to achieve this in a _________ manner
cost-effective
Analysis and testing activities can be focused on and guided by the ___________.
architecture
Evolution activities revolve around the product’s __________.
architecture
The three fundamental understandings of software architecture:
- Every application has an architecture
- Every application has at least one architect
- Architecture is not a phase of development
Architecture-centric design deals with (6):
- Stakeholder issues
- Decision about use of COTS components
- Overarching style and structure
- Package and primary class structure
- Deployment issues
- Post implementation / deployment issues
In addition, architecture is not a phase because:
- It is more than “high level design”
- It is represented by source code, object code, etc
The context of software architecture are the following (6):
- Requirements
- Design
- Implementation
- Analysis and testing
- Evolution
- Development process
Traditional SE suggests that requirements analysis should remain ________________.
unsullied by any consideration for design
It is difficult to assess practicality, schedules or costs without ______________.
reference to existing architectures
Specifics instead of abstract concepts are discussed in __________________.
building architecture
New products engineering comes from the observation of ____________ and _____________.
existing solutions
their limitations
Existing designs and architecture provide the ___________.
solution vocabulary
Decisions in the traditional design phase concern:
- A system’s structure
- Identification of its primary components
- Their interconnections
The (3) basic conceptual tools of design techniques:
- Separation of concerns
- Abstraction
- Modularity