Midterm Prep - Definitions Flashcards
A set of principal design decisions made during its development and any subsequent evolution. It is a characterization of the essence and essentials of the application
System Architecture
the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, AND the principles governing its design and evolution.
Software Architecture (ANSI/IEEE Standard 1474)
A set of principal design decisions that are:
- Simultaneously applicable to multiple and related systems
- Typically within 1 application domain
- With explicitly defined points of variations
Software Reference Architecture
A named collection of general architectural design decisions that are applicable in a given development context, constrain architectural design decisions that are specific to that particular system within the context, and elicit beneficial qualities in each resulting system.
Architectural Style
A named collection of architectural design decisions that are applicable to recurring design problems, and are parameterized for different software development contexts in which that problem appears.
Architectural Pattern
an artifact (abstraction) that captures some or all of the design decisions that comprise a system’s architecture. Architectural modeling is the specification and documentation of those design decisions.
Architectural Model
a set of “related” software components which has a) some common components and b) some variable components.
Software Product Family
A measure of the degree to which the main structural elements (components and relations) in the architecture exist in the source code. (Was it made?)
Completeness
A measure of the degree to which the source code corresponds to the various components of the architecture. (Was the right thing made?)
Traceability
A set of main components and how they are related
System Structure
What the main components do and what they do together
Functional Behavior
How the main components relate to each other in terms of control and data passing or sharing; the dynamic aspect.
Interactions
How the non-functional properties of the system are addressed. E.g. security, scalability, performance, dependability, etc.
Non-functional Characteristics
How should the components be built, with what tool, and what platforms describes this.
Implementation
The intentional design decisions in limited artifacts; the designer’s vision.
Prescriptive Architecture