Computer Science 307 : Software Engineering : Chapter 5
A class attribute is: Another class that collaborates with this class. A relationship between two classes. A behavior that defines the class. A characteristic that describes the class.
A characteristic that describes the class.
What is a class diagram? A diagram that shows the relationships between different software components A diagram that represents interactions between a software system and user A diagram that represents instances of a class A diagram that represents actual classes which would be used in developing code
A diagram that represents actual classes which would be used in developing code
What is a system actor? Someone who develops a system. A mechanical component of the system, like a personal computer or other device. A human or external entity that interacts with the system. A computer process, e.g. a program, that 'acts' (performs a function) inside the system to produce a result.
A human or external entity that interacts with the system.
What does a use case diagram depict? How data flows through a system or application. A system actor performing an action by interacting with the system. The system state. The relationship between various system actors.
A use case diagram depicts a system actor performing an action by interacting with the system.
What is the difference between a use case diagram and an activity diagram? A use case diagram shows how one activity using the system leads to another. An activity diagram shows how actors interact with the system. A use case diagram shows how system actors interact inside the system boundary. An activity diagram shows how system actors interact outside the system boundary. A use case diagram shows how actors interact with the system. An activity diagram shows how one activity using the sytem leads to another. An activity diagram shows how system actors interact with each other. A use case diagram shows how use cases interact with the user.
A use case diagram shows how actors interact with the system. An activity diagram shows how one activity using the sytem leads to another.
Which of these is an advantage of software prototyping? Indicator of resources needed for development Use feedback to make improvements Determine if the software meets the requirements All of the answers are correct
All of the answers are correct
Which of the following is a characteristic of a Use Case? Contains an interaction(s) Specifies a User Relates to a Specific Outcome All of the answers are correct.
All of the answers are correct.
What is it referred to when an end user is allowed to test a prototype? Beta testing Throwaway Alpha testing Evolutionary
Beta testing
Which of the following is NOT used in a UML model? Code Text Symbols Diagrams
Code
Which type of modeling primarily identifies the entities that the application will deal with, and traditionally doesn't describe the attributes of those entities? Logical modeling Conceptual modeling Physical modeling Scenario-based modeling
Conceptual modeling
Which of these steps is part of the guiding principle of risk management? Creating contingency plans. Delivering quality in all steps. Trusting in your colleagues. Listening to a focus group.
Creating contingency plans. Risks are a part of any business process, including software engineering. Creating contingency plans can help you assess risks and be prepared for them.
Which of the following is NOT one of the six selection characteristics used to identify classes to be included in the model? External entities Multiple attributes Retained information Common operations
External entities
What is the first step in software prototyping? Develop the prototype Beta testing Identify initial requirements Evolutionary
Identify initial requirements
Which of the following is NOT a characteristic of Requirement Engineering? Documenting Capabilities a system will incorporate. Important to the overall system. Identifying Risks a system will address. Enumerating Capabilities a system will incorporate.
Identifying Risks a system will address.
Collaboration is _____ to Requirements Engineering. None of the answers are correct. Useless Unrelated Important
Important
Another term for data modeling is: Logical modeling Information modeling Conceptual modeling Physical modeling
Information modeling
Why is change management important? To accept potential risks and create back-up plans. It helps develop a process for analysis and incorporation of change requests. It ensures delivery of value in the end result for consumers. To move swiftly and maintain flexibility internally.
It helps develop a process for analysis and incorporation of change requests.
At what stage are data attributes and relationships defined? Conceptual modeling Logical modeling Physical modeling Scenario-based modeling
Logical modeling
The term ''multiplicity'' in the context of class-based modeling means: A group of classes with the same attributes. Many instances of the same class. A class that is dependent on another class. Many instances of a class having a relationship of the same type with another class.
Many instances of a class having a relationship of the same type with another class.
Which of the following is NOT an element of the Requirements Model? Validation Solicitation Marketing Analysis
Marketing
A grammatical parse underlines which parts of the problem statement or use case: Nouns and noun clauses Adjectives Verbs only Verbs and nouns
Nouns and noun clauses
Which of these stages of modeling describes the structure of a database in full detail? Conceptual modeling Logical modeling Physical modeling Requirements modeling
Physical modeling
Which of the following is NOT an element of UML models? Package Node Program Note
Program UML model diagrams consist of the following basic elements : Class, object, interface, collaboration, use case, note, node and package.
In the principles that guide process, this component should be the main focus at every step, activity, action, and task. Communication Agility Team-building Quality
Quality
In which phase of software engineering are UML models used? Requirements modeling phase Requirements collection phase Deployment phase Requirements analysis phase
Requirements modeling phase UML is a pictorial language consisting of symbols, diagrams, text, pseudo-code or anything that describes a software system. UML models are particularly used in the requirements modeling phase to model software systems.
The validation of requirements is done through _____. Outcomes Reviews Calculations Analysis
Reviews The validation of requirements is done through reviews.
Which of the following stages is NOT part of data modeling? Physical modeling Scenario-based modeling Logical modeling Conceptual modeling
Scenario-based modeling
While there is no 'right way' of proceeding through requirements modeling for software engineering, which stage does it typically begin with? Flow-oriented modeling. Scenario-based modeling. Class-based modeling. Behavioral modeling.
Scenario-based modeling Requirements modeling typically begins with scenario-based modeling, to develop the use cases that are referred to by the ensuing stages of the process.
Which software prototyping tool only shows what the end screen will look like? Simulated software Scripting languages Throwaway Screen generator
Screen generator
What are the two main models for prototypes? Alpha and beta Throwaway and evolutionary Simulated software Revise and review
Throwaway and evolutionary
What does it mean to be agile in business or in software modeling? To move slowly but deliberately on decision-making. To shift directions quickly while maintaining focus. To build camaraderie among a team of employees. To ensure that the final product will be valuable.
To shift directions quickly while maintaining focus.
Which of the following statements is false? UML is a programming language. UML is a modeling language. UML stands for Unified Modeling language UML reduces the complexity of software systems.
UML is a programming language.
Which language is used to draw use case diagrams? UML, Unified Modeling Language. Venn diagrams. ERD, Entity Relationship Diagram. Flow charts.
UML, Unified Modeling Language.
Any diagrams that result from the process of class-based modeling are most often created using which method? Class-Responsibility-Collaborator (CRC) cards Unified Modeling Language (UML) Entity-Relationship-Diagram (ERD) Association diagram
Unified Modeling Language (UML)
Which guiding principle should be envisioned in the end result of the software modeling process? Adaptation of all involved. Value to all involved. Agility for all involved. Team-building with all involved.
Value to all involved. Value for all involved, from other teams involved in the software engineering process to the end result for the consumer, should be a steady vision of the engineering team.