Final Exam Flashcards
What is the objective of System Design?
Define, organize and structure the components of the final solution to the construction such that it can serve as a blue print.
Will agile/iteration projects build more or fewer models?
Fewer
What are the three types of models?
Requirement models, Analysis models, and Design models
What are the two key elements in the environment?
Communications with External Systems
Conforming to an existing Technology Architecture
What are the two models used to describe the environment?
Network Diagram and Deployment Diagram
What is an Application component?
A well defined unit of software that performs some functions
What are some issues regarding package components?
Scope and size
Programming language
Build or Buy
What are the models developed during Component Design?
Package diagrams
Component diagrams
Deployment diagrams
What does designing the UI include?
Analysis and Design tasks, as well as heavy user involvement
What are the typical models used for user interface design?
Story boards
Screen and report mockups
In project management how should it proceed?
Requirement Analysis to Design to Implementation to System Testing to Delivery and Installation
What are the three goals of every project?
To meet the budget
To Finish on schedule
To meet the S/W specification
What is a project?
An undertaking, limited in time to achieve a set of goals that require a concerted effort.
What is the focus of project management?
Administration of resources
Accountability maintenance
Reacting to change
Making sure the goals are met
What are the four project phases?
Initiation
Planning
Closing
Execution
What occurs in the Initiation phase?
Assembling the team, defining the expectations, defining the scope
What occurs in the Planning phase?
Identifying the tasks
Developing the schedule and budget
What occurs in the Closing phase?
Delivering and submitting the project
Writing a report representing the evaluation of the project and the development staff
What occurs in the Execution phase?
Developing the project to accomplish the goal
Monitoring the changes to the project
Making corrections to the project
Adjusting the schedule
Leading the team staff
In traditional project management what occurs?
The entire project is planned upfront without any scope for changing
In agile project management what occurs?
What does current technology frequently use?
Relational database management systems
What are Integrity controls?
Something that controls and maintain the integrity of inputs, outputs, data and programs
What is Security Controls?
Something that protects the assets from threats, internal and external
What are the objectives of Integrity controls?
To ensure that only appropriate and correct business transactions are accepted
To ensure that transactions are recorded and processed correctly
To protect and safeguard assets such as the database
What do Input controls do?
Prevents invalid or erroneous data from entering the system
How do value limit controls perform the function of input controls?
By checking the range of inputs for reasonableness
How do completeness controls perform the function of input controls?
By ensuring that all the data has been entered
How do data validation controls perform the function of input controls?
By ensuring that specific data values are correct
How do field combination controls perform the function of input controls?
By ensuring that data is correct based on relationships between fields
What is the function of Output controls?
To ensure that the output arrives at the proper destination and is accurate, current and complete.
What is the function of Redundancy, Backup and Recovery?
To protect data and systems from catastrophes
What is the function of Security controls?
To protect all assets against external threats
What is the two main objectives for Security controls?
Protecting and maintaining a stable functioning operative environment
Protecting information and transactions during transmission across networks and the Internet
What are somethings one can use to implement Security controls?
Authentication
Access control list
Authorization
Registered Users
Unauthorized Users
Privileged Users
What are the 8 issues in system design?
Identifying design goals
Subsystem Decomposition
Identifying Concurrency
Hardware/Software Mapping
Persistent Data Management
Global Resource Handling
Software Control
Boundary Conditions
Nonfunction requirements is composed of what in System Design?
Identifying design goals
The Object model is composed of what in System Design?
Hardware/Software Mapping
Data Management
The Functional Model is composed of what in System Design?
System Decomposition
Boundary Conditions
The Dynamic Model is composed of what in System Design?
Concurrency
Software Control
Global Resource Handling
What are some examples of Design goals?
Reliability
Modifiability
Maintainability
Understandability
What are the Typical Design trade offs?
Functionality vs Usability
Cost vs Robustness
Efficiency vs Portability
Rapid development vs Functionality
Cost vs Reusability
Backward Compatibility vs Readability
What is a Subsystem?
Collection of classes, associations, operations, events and constraints that are closely interrelated with each other
What is a Service?
A set of named operations that share a common purpose
What is a Subsystem interface?
Set of fully typed UML operations
What is a Application programmer’s interface?
The specification of the subsystem interface in a specific programming language
What is a layer referring to the subsystem?
A subsystem that provides a service to another subsystem with the following restrictions
What is a partition?
A layer divided horizontally into several independent subsystems
What are the two major types of Layer relationships?
Compile time dependency “depends on”
Runtime dependency “calls”
What does Coherence measure?
Dependency among classes
What does Coupling measure?
Dependency among subsystems
Good design has what in relation to coherence and coupling?
High coherence and Low coupling
How can high coherence be achieved?
By having most interaction be within subsystems rather than across subsystems
How can low coupling be achieved?
By having a calling class having little information about the internals of the called class
What is Subsystem decomposition?
Identification of subsystems services and their association to each other
What is an Architectural Style?
A pattern for a subsystem decomposition
What is Software Architecture
An instance of an architectural style
What are some examples of Architectural Styles?
Client/Server
Peer-To-Peer
Repository
Model/View/Controller
Three-tier, Four-Tier Architecture
Service-Oriented Architecture
Pipes and Filters
What is the Client/Server Architectural Style?
One or many servers provide services to instances of subsystems called clients
What are some issues with Client/Server Architecutures?
Client/Server systems do not provide peer-to-peer communication
What is Peer-to-Peer Architectural Style?
A generalization of client/server architectural style where clients can be servers and servers can be clients
What is a virtual machine?
A subsystem connected to higher and lower level virtual machines by “provides services for” associations