Shared Flashcard Set

Details

Software Architecture & Design Final
:(
32
Computer Science
Undergraduate 3
12/10/2016

Additional Computer Science Flashcards

 


 

Cards

Term
DevOps
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
Use Case Diagram
Definition
A representation the relationship between an actor and the different use cases in which the actor is involved
Term
Activity Diagram
Definition
A representation of the flow from one activity to another activity
Term
Information Hiding
Definition
modules should be designed so that information in a module is inaccessible to other modules with no need for that information
Term
Functional Independence
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
Refactoring
Definition
Simplifying the design of a component without changing its external behavior
Term
Architecture
Definition
overall structure of software, ways in which components interact, and structure of data that components use
Term
Dependency Inversion
Definition
high level modules should not depend directly upon low level modules; both should depend upon abstractions
Term
Abstraction
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
Design for Test
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
Refinement
Definition
beginning with a high level of abstraction and elaborating in order to work down to to a low level
Term
Separation of Concerns
Definition
solve complex problems by subdividing them into pieces and solving each piece independently
Term
Design Classes
Definition
refine analysis classes by providing design detail
Term
Aspect
Definition
a crosscutting concern
Term
Modularity
Definition
divide software into separately named and addressable modules
Term
Pattern
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
Data Design Elements
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
Data Flow Architecture
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
Layered Architecture
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
Architecture review
Definition
provide a means of assessing the ability of a software architecture to meet the system's quality requirements and identify potential risks
Term
Traceability
Definition
documented links between software engineering work products
Term
User Experience Architect
Definition
works for project manager to manage
estimates
Term
Continuous Delivery
Definition
teams produce software in short cycles ensuring that the software can be reliably released at any time
Supporting users have an ad free experience!