Flashcards for 2nd CEN Exam
Quiz yourself by thinking what should be in
each of the black spaces below before clicking
on it to display the answer.
Help!
|
|
||||
---|---|---|---|---|---|
analysis | focus is on the application domain
🗑
|
||||
design | focus on the solution domain
🗑
|
||||
design window | time in which design decisions have to be made
🗑
|
||||
Identify Design Goals Additional NFRs, Trade-offs | non-functional requirements
🗑
|
||||
Subsystem Decomposition Layers vs Partitions Coherence & Coupling | Functional Model
🗑
|
||||
Identify Concurrency Identification of Parallelism (processes, threads) | Dynamic Model
🗑
|
||||
Hardware / Software Mapping Identification of NOdes, Special Purpose Systems, Buy vs Build | Object Model
🗑
|
||||
Persistent Data Management Storing Persistent Objets, Filesystem vs database | Object Model
🗑
|
||||
Global Resource Handling Access Control, ACL vs Capabilities Security | Object Model
🗑
|
||||
Software Control monolithic, event driven, concurrent processes | Functional Model
🗑
|
||||
Boundary Conditions Initialization, Termination, Failure | Non-Functional Requirements
🗑
|
||||
Design Trade offs: Functionality vs Cost vs Efficiency vs Rapid Development v Cost v Backward Compatibility vs | Functionality vs Usability
Cost vs Robustness
Efficiency vs Portability
Rapid Development vs Functionality
Cost vs Reusability
Backward Compatibility vs Readability
🗑
|
||||
Subsystem | Collection of classes, associations, operations, events and constraints that are closely interrelated with each other
🗑
|
||||
Service | Set of named operations that share a common purpose. (Their origin are use cases from functional model)
🗑
|
||||
Subsystem Interface | Set of fully typed UML operations; defined during object design
🗑
|
||||
Application programmer's interface API | specification of the subsystem interface in a specific programming language. Should only be used during implementation.
🗑
|
||||
layer | subsystem that provides a service to another subsystem with the following restrictions: only depends on services from lower layers; has no knowledge of higher layers.
🗑
|
||||
partition | horizontal division of layer into several independent subsystems; weakly coupled subsystem
🗑
|
||||
virtual machine | subsystem connected to higher and lower level virtual machines by "provides services for" associations. Abstraction that provides a set of attributes and operations.
🗑
|
||||
High Coherence | classes in subsystem perform similar tasks and are related to each other via many associations (good design)
🗑
|
||||
Low coherence | lots of miscellaneous and auxiliary classes, almost no associations
🗑
|
||||
High Coupling | Changes to one subsystem will have high impact on the other subsystem
🗑
|
||||
Low coupling | A change in one subsystem does not affect any other subsystem (good design)
🗑
|
||||
Client / Server | one or more servers produce services to instances of subsystems, called clients; End users interact with client.
🗑
|
||||
Peer to Peer | "Clients can be servers and servers can be clients."
🗑
|
||||
Repository | Subsystems access and modify data from a single data structure.
🗑
|
||||
Model-view-controller | model: responsible for application domain knowledge
view: responsible for displaying application domain objects to the user
controller: responsible for sequence of interactions with the user and notifying views of changes in the model
🗑
|
||||
pipeline | chain of processing elements arranged so that the output of one element is the input to the next element
🗑
|
||||
system design | activity that reduces the gap between the problem and an existing (virtual) machine
🗑
|
||||
design goals | describes the importnat system qualities
defines the values against which options are evaluated
🗑
|
||||
subsystem decomposition | break down the overall system into manageable parts by using the principles of cohesion and coherence
🗑
|
||||
architectural style | pattern of a typical subsystem decomposition
🗑
|
||||
software architecture | instance of an architectural style
🗑
|
Review the information in the table. When you are ready to quiz yourself you can hide individual columns or the entire table. Then you can click on the empty cells to reveal the answer. Try to recall what will be displayed before clicking the empty cell.
To hide a column, click on the column name.
To hide the entire table, click on the "Hide All" button.
You may also shuffle the rows of the table by clicking on the "Shuffle" button.
Or sort by any of the columns using the down arrow next to any column heading.
If you know all the data on any row, you can temporarily remove it by tapping the trash can to the right of the row.
To hide a column, click on the column name.
To hide the entire table, click on the "Hide All" button.
You may also shuffle the rows of the table by clicking on the "Shuffle" button.
Or sort by any of the columns using the down arrow next to any column heading.
If you know all the data on any row, you can temporarily remove it by tapping the trash can to the right of the row.
Embed Code - If you would like this activity on your web page, copy the script below and paste it into your web page.
Normal Size Small Size show me how
Normal Size Small Size show me how
Created by:
ejs09f
Popular Computers sets