CS 390 Intro to Software Eng Midterm
d. Behavioral models (diagrams)
Which of these is not an element of Scenario-based models? a. Use-Cases - textual b. Use Cases - diagrams c. Activity diagrams d. Behavioral models (diagrams) e. Swimlane diagrams
Why does computer hardware cost so much?
Which question no longer concerns the modern software engineer? o Why does computer hardware cost so much? o Why does the software take a long time to finish? o Why does it cost so much to develop a piece of software? o Why can't software errors be removed from products prior to delivery?
Real-time software (See book 9th ed pg 7 for correct list)
Which type of software systems is NOT among seven broad categories of computer software? o System software o Real-time software o Application software o Engineering/scientific software o Embedded software o Product-line software o Web/mobile applications o Artificial intelligence software
False
Use-Case actors are always people (human beings), never systems (software) or devices (hardware). a. True b. False
The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering process to software.
What is the IEEE definition for Software Engineering? o The application of a systematic approach to the development of software; that is, the application of engineering process to software. o Software Engineering is a collection of activities, actions, and tasks that are performed when some work product is to be created. o The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering process to software. o The application of a systematic, disciplined, quantifiable approach to the communication, planning, analysis, design, modeling, coding, testing, deployment and maintenance of software.
Quality Focus (or, Goal), Processes, Methods, Tools
What is the correct order - from bottom (basis) to the top - of main four layers in the software engineering as layered technology - i.e. Software Engineering Layered Model? o Quality Focus (or, Goal), Tools, Methods, Processes o Quality Focus (or, Goal), Processes, Methods, Tools o Tools, Methods, Processes, Quality Focus (or, Goal) o Methods, Tools, Processes, Quality Focus (or, Goal)
a, b, and c
Which of the following are recognized Engineering Process Flow types? a. Parallel (or, Concurrent process flow) b. Iterative process flow c. Linear process flow d. Spiral process flow e. a, b, c and d f. a and b g. b and c h. a, b and c
develop an abbreviated solution for the problem
Which of the following is NOT an objective for building a requirements model? a. define set of software requirements that can be validated b. describe customer requirements c. develop an abbreviated solution for the problem d. establish basis for software design
a, b and c
Which of the following should be considered as candidate objects in a problem space? a. events b. people c. structures d. a, b and c e. none of listed options
Manufacturing
Which of the items listed below is not one of the software engineering layers? o Process o Manufacturing o Methods o Tools
communication, planning, modeling, construction, deployment
Which of these are the 5 correct generic software engineering framework activities? o communication, planning, modeling, construction, deployment o communication, risk management, measurement, production, reviewing o analysis, designing, programming, debugging, maintenance o analysis, planning, designing, programming, testing
d. Data models (diagrams)
Which of these is not an element of Analysis Model? a. Scenario-based models (diagrams) b. Behavioral models (diagrams) c. Class-based models (diagrams) d. Data models (diagrams) e. Data-flow models (diagrams) f. Activity diagrams
a and b
Which of these is not an element of Behavioral models? a. Use-Cases - textual b. Control Flow diagrams c. Sequence diagrams d. State Transition Diagrams (STD) e. a and b f. c and d
True
Creation and refinement of Use Case Diagrams is an important part of Scenario-Based Modeling. a. True b. False
True
Creation and refinement of use cases is an important part of scenario-based modeling. a. True b. False
True
Developers and customers create use-cases to help the software team understand how different classes of end-users will use functions. a. True b. False
a, b and c
During project inception the intent of the tasks are to determine a. basic problem understanding b. nature of the solution needed c. people who want a solution d. none of the above e. All of the above f. a and b g. a, b and c h. a and c
a, b, and c
Evolutionary software process models a. Are iterative in nature b. Can easily accommodate product requirements changes c. Do not generally produce throwaway systems d. a, b, and c e. None of listed options
the system an actor exchange information? (not sure)
For purposes of Behavior Modeling an event occurs whenever o a state and process exchange information o the system an actor exchange information o two actors exchange information o two objects exchange information
observable mode of behavior
For purposes of behavior modeling, a state is any o consumer or producer of data o data object hierarchy o observable mode of behavior o well defined process
True
Software processes can be constructed out of pre-existing software patterns to best meet the needs of a software project. a. True b. False
Not sure, either: Data Objects (DO) OR Processing Narrative
"True/False and Multiple Choice" questions 1. Which of these is NOT an element of Data-Flow models? o Data Flow Diagrams (DFD) o Entity Relationship Diagrams (ERD) o Data Objects (DO) o Control-Flow Diagram (CFD) o Processing Narrative
False
It is generally accepted that one cannot have weak software processes and create high quality end products. a. True b. False
False
It is important to consider alternative actor interactions when creating a preliminary use case. a. True b. False
True
It is relatively common for different customers to propose conflicting requirements, each arguing that his or her version is the right one. a. True b. False
True
Most software development projects are initiated to try to meet some business needs. o True o False
True
Planning ahead for software reuse reduces the cost and increases the value of the systems into which they are incorporated. o True o False
False
Requirements engineering is a generic process that does not vary from one software project to another. a. True b. False
Multiple change requests introduce errors in component interactions
Software deteriorates rather than wears out because o Software suffers from exposure to hostile environments o Defects are more likely to arise after the software has been used often o Multiple change requests introduce errors in component interactions o Software spare parts become harder to order
False
Software engineering umbrella activities are only applied during the initial phases of software development projects. o True o False
False
Software is a product and can be manufactured using the same technologies used for other engineering artifacts. o True o False
False
A stakeholder is anyone who will purchase the completed software system under development. a. True b. False
True
Brainstorming is one technique that may be used to derive a complete set of use case exceptions. a. True b. False
True
Creation and refinement of Activity Diagrams is an important part of ScenarioBased Modeling. a. True b. False
False
Creation and refinement of Data-Flow Diagrams is an important part of Behavioral Modeling. a. True b. False
False
Creation and refinement of Data-Flow Diagrams is an important part of Scenario-Based Modeling. a. True b. False
True
Creation and refinement of Sequence Diagrams is an important part of Behavioral Modeling. a. True b. False
False
Creation and refinement of Sequence Diagrams is an important part of Scenario-Based Modeling. a. True b. False
True (? not sure)
Creation and refinement of State Transition Diagrams is an important part of Behavioral Modeling a. True b. False
True
Creation and refinement of SwimLane Diagrams is an important part of Scenario-Based Modeling. a. True b. False
False
In general, software only succeeds if its behavior is consistent with the objectives of its designers. o True o False
False
In requirements validation the requirements model is reviewed to ensure its technical feasibility. a. True b. False
Sequence Diagrams, State Transition Diagrams (STD)
In software engineering, Behavioral Models include ??? o State Transition Diagrams (STD), Activity Diagrams, Sequence Diagrams o Sequence Diagrams, State Transition Diagrams (STD) o Activity Diagrams, Swim Lane diagrams, Use-Case Diagrams o State Transition Diagrams (STD), Entity-Relationship Diagrams (ERD)
A variation of Incremental Model of software engineering process.
The Agile SDLC Model is o A good approach to engineer/develop embedded software systems. o A variation of Incremental Model of software engineering process. o A variation of Spiral Evolutionary SDLC Model. o An old fashioned model that is rarely used any more.
b and c
The Data Flow Diagram (DFD) a. depicts relationships between data objects b. depicts functions that transform the data flow c. indicates how data are transformed by the system d. indicates system reactions to external events e. all of the above f. a and b g. a and c h. b and c i. a, b and c j. a and d
depicts relationships between data objects
The Entity Relationship Diagram (ERD) o depicts relationships between data objects o depicts functions that transform the data flow o indicates how data are transformed by the system o indicates system reactions to external events
A good approach to develop software systems that require have human-computer interaction (HCI) in operational mode.
The Prototyping SDLC Model is o A good approach to develop software systems that require have human-computer interaction (HCI) in operational mode. o A good approach when the final working software system is required quickly. o The best approach to use for projects with large software development teams. o An old fashioned model that is rarely used any more.
A reasonable approach to develop computer games.
The Prototyping SDLC Model is o The best approach to use for projects with small-size software development teams. o The best approach to use for projects with large software development teams. o An old fashioned model that is rarely used any more. o A reasonable approach to develop computer games.
A good approach to engineer/develop Virtual Reality (VR) and Augmented Reality (AR) software systems.
The Prototyping SDLC Model is o a. A good approach to engineer/develop software systems by small size software development teams. o b. A good approach to engineer/develop Virtual Reality (VR) and Augmented Reality (AR) software systems. o c. The best approach to use for projects with large size software development teams. o d. A good approach to engineer/develop software systems by mid size software development teams. o a, b, c and d o a and b
A good approach when the final working software system is required as quickly as possible
The Rapid Application Development (RAD) SDLC Model is o A good approach to develop software systems that require heavy human-computer interaction (HCI) in operational mode. o A good approach when the final working software system is required as quickly as possible. o The best approach to use for projects with large software development teams. o An old fashioned model that is rarely used any more.
indicates system reactions to external events
The State Transition Diagram (STD) o depicts relationships between data objects o depicts functions that transform the data flow o indicates how data are transformed by the system o indicates system reactions to external events
A good approach to engineer/develop embedded software systems.
The Waterfall SDLC Model is o A good approach to engineer/develop embedded software systems. o A good approach when a working program is required quickly. o The best approach to use for projects with large software development teams. o An old fashioned model that is rarely used any more.
A good approach to engineer/develop software systems by small size software development teams.
The Waterfall SDLC Model is o a. A good approach to engineer/develop software systems by small size software development teams. o b. A good approach when the final working software system is required quickly. o c. The best approach to use for projects with large size software development teams. o d. A good approach to engineer/develop software systems by midsize software development teams. o a, b, c and d o None of listed options
a, b, c, d and e
The advantages of the Spiral Evolutionary SDLC Model include a. Evolution of the large-scale software system b. Customer involvement into software engineering process c. Good Risk Management d. Good Change Management e. Careful step-by-step ("spiral-by-spiral") development f. a, b, c, d and e g. a, c and e h. a and e i. None of listed options
A useful approach when a customer cannot define requirements clearly.
The prototyping model of software development is a. A reasonable approach when requirements are well defined. b. A useful approach when a customer cannot define requirements clearly. c. The best approach to use for projects with large development teams. d. A risky model that rarely produces a meaningful product.
a, b and c
The result of the requirements engineering task is an analysis model that defines which of the following problem domain(s)? a. information b. functional c. behavioral d. a, b and c e. none of listed options
Includes project risks evaluation during each iteration
The spiral model of software development a. Ends with the delivery of the software product b. Is more chaotic than the incremental model c. Includes project risks evaluation during each iteration d. All of the above
A reasonable approach when requirements are well defined.
The waterfall model of software development is a. A reasonable approach when requirements are well defined. b. A good approach when a working program is required quickly. c. The best approach to use for projects with large development teams. d. An old fashioned model that is rarely used any more.
b, c and d
Three things that make requirements elicitation difficult are problems of a. budgeting b. scope c. understanding d. Volatility e. All of the above f. a and b g. a, b and c h. b and c i. b, c and d j. none of the above