







Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
A comprehensive set of revision questions and answers covering fundamental concepts in software engineering. It explores key attributes of good software, critical software systems, software failure aspects, and definitions of software engineering and processes. The document delves into various software process models, including the waterfall model, v-model, and lightweight models like prototyping and incremental development. It also examines requirements engineering, modeling techniques like uml, and challenges in software engineering. Valuable for students and professionals seeking to solidify their understanding of software engineering principles and practices.
Typology: Exams
1 / 13
This page cannot be seen from the preview
Don't miss anything!








What are the four attributes of good software - Solution 1. Dependability
What are the seven principles of software engineering - Solution 1. Manage using a phased life-cycle plan
What is the difference between requirements and design phase - Solution Requirements are what we want done, and design is how are we going to achieve it What are the main steps for Requirements Engineering - Solution Elicitation Specification Validation Negotiation What is meant by Elicitation - Solution Understanding the problem What is meant by specification - Solution Describing the problem What is meant by validation - Solution Agreeing on the nature of the problem What is meant by negotiation - Solution Agreeing on the boundaries of the problem What are characteristics of a good SRS - Solution unambiguous Consistent Correct Complete Verifiable Testable Modifiable What does UML stand for - Solution Uniform Modeling Language What are the classic modeling techniques - Solution Entity relationship Modeling Finite state machines Data flow diagrams CRC cards What is another name for UML Diagrams - Solution Object oriented modeling What does an ER diagram consist of - Solution Entity
Entity Types Attribute values Attribute Relationship A rectangle in a ER diagram signifies - Solution Entitiy type An elispse in an ER diagram signifies - Solution Attributes A diamond in an ER diagram signifies - Solution Relationship Cardinality is specified by - Solution {0..1} Modulality is specified by - Solution {0 ... 10} What does this cardinality symbol mean {0...N} - Solution 0 to many What does this cardinality symbol mean {1...1} - Solution 1 to 1 What does this cardinality symbol mean ... - Solution What is finite state machine - Solution Models of a system in terms of a finite number of states and transitions between those states How are state represented in a State transitions diagram - Solution bubbles How is the starting point represented in state transition diagram - Solution Solid Bubble How is the end point represented in state transition diagram - Solution Double circles How are transitions from one state to another represented on a state transitions diagram - Solution arcs How is an external entity represented in a work context diagram - Solution a rectangle
Contributes greatly to getting errors out early Produces much more understandable and maintainable code Makes many other software jobs easier, like integration and testing. What are some examples of MPP - Solution Object oriented Top Down Structured Programming Why is it important to maintain clear accountability for results - Solution Each individual on the project team should have a clear statement of the results for which he or his group are accountable, and a clear understanding that his future rewards depend on how well he does in producing those results. Why is it important to use few and better people on a project - Solution Doing so reduces the communications overhead on a project by getting the job done with fewer, more productive performers Why should you maintain a commitment to improve the process - Solution Doing so verifies that the particular form of the principles adopted by an organization is indeed the best match for its particular needs and priorities. What are the key aspects of the RAD Model - Solution Fixed time frames within which activities are done Time frame is decided upon first The use of Joint Requirements Planning (JRP) and Joint Application Design (JAD) Requirements prioritization through a triage Development in a SWAT team What are the four phases of the RAD model - Solution Requirements Planning; User Design; Rapid Construction; Cutover When Should RAD be used - Solution RAD should be used when there is a need to create a system that can be modularized in 2-3 months of time, and resource cost is not a priority
What are the key aspects of Dynamic Systems Development Method. (DSDM) - Solution Active user involvement Teams must be empowered to make decisions Focus on frequent delivery of products Iterative and incremental development Changes must be reversible Testing is integrated throughout the lifecycle What are the phases of DSDM - Solution Feasibility study /Business study Functional model Iteration Design /Build Iteration Implementation When should DSDM be used - Solution DSDM should be used when subject matter experts can be used in all phases of development, and on the job training is not an option. When would you use the incremental model - Solution This model can be used when the requirements of the complete system are clearly defined and understood. When some some details can evolve with time. There is a need to get a product to the market early. A new technology is being used. Resources with needed skill set are not available. When would you use the Prototype model - Solution Requirements are unstable or have to be clarified Develop user interfaces Short-lived demonstrations New, original development With the analysis and design portions of object-oriented development. What are the key aspects of Extreme Programming - Solution Small phases Simplicity Pair Programming Onsite Customer involvement When would you use Extreme Programming - Solution On projects with small teams Expert Programming skills are not needed
What are CRC card - Solution Standard index card that has been divided into three sections What is the following diagram - Solution What is the following diagram - Solution What are the two types of associations - Solution Aggregation and Composition What type of association is symbolized by a straight line and a diamond - Solution Aggregation What type of association is symbolized by a straight line and a solid diamond - Solution Composition Define Aggregation - Solution An aggregation is consider the whole class where the part can survive if the whole dies Define Composition - Solution A composition is a class that is part of a whole class where the part would die of the whole dies List the association strengths in order of weakest to strongest - Solution Dependency Aggregation Composition What associations are shown in the following diagram - Solution Aggregation Composition What is a type of association is a room to a building - Solution Composition because you cannot have a room without a building What is a type of association is a employee to a department - Solution aggregation because an employee will survive without a department What are the two types of directional associtaions - Solution bi-directional uni-directional
Dependency associations are signified by what - Solution straight dotted line with an arrow Define Architectural Style - Solution A style or description of component or connector types and a pattern of their runtime control and data transfer What are some examples of Architectural style - Solution Main Program with subroutines Data Abstraction Implicit Invocation Pipes and Filters Repository Layers of abstraction What are the four things that come to mind with Architectural Style - Solution What problem are we trying to solve What components are utilized What connectors are utilized What is the context and what are the contraints A connector is defined as what - Solution A line that connects components A component is defined as what - Solution A box that represents functional aspects What are the four types of components - Solution Computational Memory Manager Controller What are the six types of connectors - Solution Procedure Data Flow Implicit Invocation Message Passing Shared Data Instantiation What architectural style uses shared data - Solution Main with subroutines What architectural style uses local data - Solution Abstraction
Basses model view is comprised of what - Solution Decomposition Uses layered Class What bass view is concerned with Work Assignment, deployment and implementation - Solution Allocation view What bass view is concerned with runtime events, process, concurrency, shared data, and client server - Solution Component and Connector What bass view is concerned with units related by is a submodule - Solution Model (decomposition) In a class diagram as class or a node contains what - Solution name, attributes, and methods In a class diagram as class or a relationship is denoted by what - Solution Specialized lines that range from associations, to generalizations to inheritance and dependancies What part of a class diagram provides behavior that can be overwritten in the extending class - Solution Abstraction What does an interface do on a component diagram - Solution Allows communications between sub components What does a port do on a component diagram - Solution Allows components to talks to each other What are the differences between the conceptual, logical and Implementation view points - Solution Logical shows key interactions withing th systems Conceptual shows the high level map of the system Implementation shows the organization of the submodels in the system How do you decide which viewpoint to use - Solution Stakeholder voice their concerns Viewpoint address those concerns Identify, prioritize, and combine viewpoints to address concerns