IN4MATX Big Quiz Review
Use cases can have a variety of readers. Which of the following is *not* a valid possible reader of your use cases: -Reviewers -Actors -Software testers -System testers -System engineers -Human factors engineers -Software engineers
Actors
According to Brooks (back in "his time"), which is following is *NOT* listed explicitly in his paper as a "potential silver bullet"? -Incremental development -Requirements refinement -Buy vs. Build -Great software designers -Great software designs -Rapid prototype
Great software designs
Which of the following are not likely to read your software requirements document: System Engineers Software Maintainers Project managers Marketing Personnel Software Testers Civil Engineers Software developers Software Documenters
Civil Engineers
By definition, a UML class has three parts. What are the three parts?
Class Name Class Attributes Class Operations
What are the four essential properties that make software difficult?
Complexity, Conformity, Changeability, Invisibility
Which of the following chapters does not typically appear after Functional Requirements: Potential Risks Assumptions Non-functional Requirements Other Requirements Future Changes Design and implementation decisions Glossary of terms
Design and implementation decisions
Humans are familiar with Design in many aspects of everyday life. Which of the following DOES NOT typically involve creative aspects of human design activities: -Making jewelry -Making planes, trains, and automobiles -Software engineering and architecture -Making clothes (fashion) -Bridge engineering and architecture -Pouring concrete during Bridge construction
Pouring concrete during Bridge construction
Which of the following does not typically appear before Functional Requirements: Introduction Presumptions Application Context Environmental Requirements Executive Summary
Presumptions
We live in a 24/7 news cycle, and there are many news sources that generate large amounts of new information, such as AP, Reuters, Bloomberg, etc. Many software systems use that data to provide custom news or RSS feeds. Such systems ask for, or listen to, only a small subset of the large amounts of data available from the news sources. This kind of architectural style is called:
Publish-Subscribe
Which of the following is NOT considered to be Design? (i.e., it is NOT a design method or design activity) -UI mockups -Testing and debugging your code -Object-oriented decomposition with UML -Relational database design -Functional decomposition
Testing and debugging your code
On a UML class diagram, an arrow from class A to class B, indicates that class A has access (visibility) to class B.
True
According to Brooks, which of the following is *NOT* an essential property of Software? -Complexity -Changeability -Visibility -Conformity
Visibility
Which one of the following statements about requirements is true? -Requirements errors generally cause only minor problems in the resulting system. These problems are simple and cheap to fix -Requirements describe how the software should work, without saying what it should do -Requirements Issues are at the root of many software failures -Requirements analysis/engineering should only be done once the architecture of the system has been designed -The requirements phase is the most costly phase in the software life cycle, in terms of dollars spent
-Requirements Issues are at the root of many software failures -The requirements phase is the most costly phase in the software life cycle, in terms of dollars spent
Our materials include several useful questions when trying to identify use cases. Which of the following questions is not typically used to identify use cases: -Can all functional requirements be performed by the use cases? -What functions will the actor want from the system? -Does the system store information? -Who starts up and shuts down the system? -What are the tasks of each actor? -Which use cases will support and maintain the system?
-What functions will the actor want from the system? -Who starts up and shuts down the system?
Which one of the following is true about software architectural styles? - A software architectural style provides us with a named set of components, connectors, and configurations. - Using a software architectural style broadens the architectural design decisions we can make. - Using a software architectural style usually makes it harder to evolve the resulting system - A software architectural style rarely offers benefits to the resulting system. - The client-server style is applicable to any given problem/context.
A software architectural style provides us with a named set of components, connectors, and configurations.
Use cases support and comply with the SE principle of: -Incrementality -Modularity -Rigor and Formality -Generality -Abstraction -Anticipation of Change -All of the above
All of the above
According to our Lecture materials, for the next version of Netflix software, which of the following requirements analysis techniques is Netflix most likely to use? -Harrassing the customer -Creating use cases -Data-driven analysis and buisiness metrics -Physically observing the customer -Interviewing the customer
Data-driven analysis and business metrics
What are the chapters of the SRS before the Functional Requirements?
Introduction, Executive Summary, Context, and Environmental constraints.
Which of the following is not true about software architectural styles? -A software architectural style can offer benefits to the resulting system -It is not common to mix different software architectural styles in one system -A software architectural style provides us with a named set of components, connectors, and configurations -Some software architectural styles may not be applicable to a given problem/context -A software architectural style constrains the architectural design decisions we can make
It is not common to mix different software architectural styles in one system
Farm-to-market or "farm to plate" restaurants typically rely upon a well-defined supply-chain, where items such as fruit and vegetables are picked on the farm, then shipped by trucks to distribution centers, then to restaurants, and so on, until they are served on plates. When creating software architectures using a similar approach, the corresponding architectural style is called:
Layered
Reuse is a major benefit of the Layered architectural style. Which layer(s) are usually the most reusable?
Lower Layers
Which of the following is NOT correct for a UML Association: -One association can connect three classes in a many to many relationship -One association can connect two classes in a many to many relationship -An association can have an arrowhead on one side, but not the other -One association can connect two classes in a one to many relationship -An association can have arrowheads on both sides of the association -One association can connect two classes in a one to one relationship
One association can connect three classes in a many to many relationship
What are the chapters of the SRS after the Functional Requirements?
Other requirements, Risks and Assumptions, Future changes, and Glossary of terms,
What is Ziv's Law?
Requirements can not be fully understood or fully specified correctly, at least not with 100% certainty
Which one of the following is true about the pipe-and-filter architectural style? -Pipes register their interest in information that filters provide. -It is an efficient way to filter large amounts of information and broadcast only relevant information to interested parties -The main responsibility of connectors in this style is to transfer data from one filter to another. -Multiplayer online video games are usually designed in this style. -Scalability is a major benefit of this style.
The main responsibility of connectors in this style is to transfer data from one filter to another.
What is the most accurate definition of Association?
The most basic general-purpose relationship between two classes
When does Architectural erosion happen?
The prescriptive architecture is modified before the descriptive architecture is modified
What is the most accurate definition of Aggregation?
The whole-part or is-part-of relationship, where one class contains another
Which of the following does not appear, nor belong, on a UML class diagram: -Class attributes (data members) -Relationship names -Class operations (methods) -Class names -Use case names
Use case names
The following seem to be true statements about use cases. Which of the following is not an *entirely true statement* ? -Use cases are textual descriptions of how the system can be used to meet users' goals -Use cases can be used to specify all possible requirements for all types of systems -Use cases generally lead to better testing and verification that the system meets its original requirements -Use cases generally lead to better object-oriented designs and implementations -Use cases generally support better understanding and communication of the requirements among developers customers and users
Use cases can be used to specify all possible requirements for all types of systems
Who are the people generally interested in use cases?
Users, customers, managers, business people
Who are the people who are generally interested in requirements documents?
users, customers, managers, and business people