Flashcards
software engineering chap 2
Cards in this deck (16)
- 1What are 3 fundimental understandings of software architectureEvery application has an architecture
Every application has at least one architect
Architecture is not a phase of development - 2What is architecture- Architecture is a set of principal design decisions about a software system
- Is more than a "high-level design" - 3Context of Software ArchitectureRequirements
Design
Implementation
Analysis and Testing
Evolution
Development Process - 4Requirements AnalysisTraditional approach is to do requirements analysis without thought to design
Problem : little to no references to existing architectures, practicality, scheduled costs. - 5the NEW requirement analysis-Existing designs provide partial solutions
-understand what works now
-insights from experience with existing systems
- analysis and consideration must be pursued at same time - 6NFP - Non-functional Propertiesex: security, reliability, availability, efficiency, availability, fault tolerance
- result from architectural; choices
- may require an architectural framework - 7Twin Peaks Model- draws attention to the relationship between requirements and architectural design
-progressively discover and specify requirements while concurrently exploring different architecture
- must anticipate futur tech
- addresses problems with liniar development. - 8Traditionally, the design phase is where decisions are made regarding:A system’s structure
Its primary components
The interconnections between components - 9Architecture-Centric Designstakeholder issues
decision about use of COTS component
overarching style and structure
package and primary class structure
deployment issues
post implementation/deployment issues - 10Object-Oriented Design (OOD)Main abstraction entity in OOD
Encapsulates state and functions to access/manipulate that state - 11OOD prosUML modeling notation
Design patterns - 12OOD consProvides only one level of encapsulation (the object), one notion of interface, & one type of explicit connector (method call) OO programming language might dictate important design decisions OOD assumes a shared address space (no support for distributed objects)
Dependent on (and constrained by) OO programming language - might
dictate important design decisions
OOD assumes a shared address space (no support for distributed
objects, etc.) - 13DSSA (Domain Specific Software Architecture)-Capturing and characterizing the best solutions and best practices from past projects within a domain
-Production of new applications can focus on the points of novel variation
-Reuse applicable parts of the architecture and implementation
-Applicable for product lines - 14ImplementationThe objective is to create machine-executable source
code
That code should be faithful to the architecture - 15Faithful Implementation- structure elements of architecture are implemented in the source code
- source code musen't major new computational elements that have no corresponding elements in the architecture or other achetectual elements - 16—
Information
- Description
- Computer Science Flashcards on software engineering chap 2, created by James Drover on 15/06/2017.
- Created by
- James Drover
- Views
- 0
- Rating