Term
|
Definition
a set of practices that emphasize collaboration and communication and establish a culture where building, testing, and releasing software can happen rapidly and reliably |
|
|
Term
|
Definition
A representation the relationship between an actor and the different use cases in which the actor is involved |
|
|
Term
|
Definition
A representation of the flow from one activity to another activity |
|
|
Term
|
Definition
modules should be designed so that information in a module is inaccessible to other modules with no need for that information |
|
|
Term
|
Definition
design software so that each module address a specific subset of requirements and has a simple interface with other parts of the program |
|
|
Term
|
Definition
Simplifying the design of a component without changing its external behavior |
|
|
Term
|
Definition
overall structure of software, ways in which components interact, and structure of data that components use |
|
|
Term
|
Definition
high level modules should not depend directly upon low level modules; both should depend upon abstractions |
|
|
Term
|
Definition
a technique for arranging complexity of computer systems that establishes a level of complexity on which a person interacts with the system, suppressing the more complex details below the current level |
|
|
Term
|
Definition
Design must be developed with thought given to the tests that will be conducted on the components |
|
|
Term
Object Oriented Design Concepts |
|
Definition
enables a system to be modeled as a set of objects that can be controlled and manipulated in a modular manner |
|
|
Term
|
Definition
beginning with a high level of abstraction and elaborating in order to work down to to a low level |
|
|
Term
|
Definition
solve complex problems by subdividing them into pieces and solving each piece independently |
|
|
Term
|
Definition
refine analysis classes by providing design detail |
|
|
Term
|
Definition
|
|
Term
|
Definition
divide software into separately named and addressable modules |
|
|
Term
|
Definition
conveys essence of a proven solution to a recurring problem |
|
|
Term
Architectural Design Elements |
|
Definition
give an overall view of the software and are usually depicted as a set of interconnected subsystems |
|
|
Term
Component Level Design Elements |
|
Definition
fully describe the internal detail of each component by defining data structures and algorithmic detail |
|
|
Term
Interface Design Elements |
|
Definition
depict how information flows into and out of a system and how it is communicated among the components |
|
|
Term
|
Definition
Create a model of data represented at a high level abstraction that is refined into progressively lower levels |
|
|
Term
Deployment Level Design Elements |
|
Definition
indicate how software functionality and subsystems will be allocated within the physical computing environment |
|
|
Term
Data Centered Architecture |
|
Definition
An architectural style in which a data store resides at the center and is accessed frequently by other components that modify data. promotes integrability |
|
|
Term
|
Definition
An architectural style applied when input data are to be transformed via a pipe and filter system into output data |
|
|
Term
Call and Return Architecture |
|
Definition
Enables you to achieve a program structure that is easy to modify and scale. includes main program/subprogram architectures and remote procedure call architectures |
|
|
Term
Object Oriented Architecture |
|
Definition
an architectural style in which the components of a system encapsulate data an the operations that must be applied to manipulate the data |
|
|
Term
|
Definition
An architectural style with a number of different layers, each accomplishing operations that become progressively closer to the machine instructions set |
|
|
Term
Architectural description language |
|
Definition
provides a semantics and syntax for describing a software architecture |
|
|
Term
|
Definition
provide a means of assessing the ability of a software architecture to meet the system's quality requirements and identify potential risks |
|
|
Term
|
Definition
documented links between software engineering work products |
|
|
Term
User Experience Architect |
|
Definition
works for project manager to manage estimates |
|
|
Term
|
Definition
teams produce software in short cycles ensuring that the software can be reliably released at any time |
|
|