McGraw-Hill OnlineMcGraw-Hill Higher EducationLearning Center
Student Centre | Lecturer Centre | Info Centre | HOME

Glossary
Q 18.C supplement
Self-test Questions

Cover
Object-Oriented Systems Analysis and Design Using UML, 2/e
Simon Bennett, Systems Architect with GEHE UK
Steve McRobb, Senior Lecturer, De Montfort University
Ray Farmer, Associate Dean, Coventry University

Requirements Modelling

Self-test Questions



1

Which of the following is not a good reason for constructing a requirements model?
A)It can show the business situation in enough detail to check that the requirements have been captured fully and correctly.
B)It can demonstrate that all the use cases have been drawn using the correct notation.
C)It can be organized in such a way that it will be useful later for designing the software.
2

Which of the following statements best describes what a class diagram can include?
A)Only classes.
B)Only classes and their relationships.
C)Classes, instances and their relationships.
3

Which is the correct name for "a possible set of classes, together with an understanding of how those classes might interact to deliver the functionality of a use case"?
A)A use case class diagram.
B)A realization.
C)A collaboration.
4

What is the significance of the dependency arrow in this diagram?

<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif::Fig. 7.4::/sites/dl/free/0077098641/41598/ch7_p4_1.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif">Fig. 7.4 (1.0K)</a>
Fig. 7.4

A)It shows that elements within the collaboration (the dotted ellipse) may reference elements within the use case (the solid ellipse).
B)It shows that the collaboration (the dotted ellipse) cannot be implemented until the use case (the solid ellipse) has been implemented.
C)It shows the direction of the flow of control when the software executes.
5

One of the following is not a difference between a class diagram and a collaboration diagram. Which one?
A)A collaboration diagram shows object interaction, while a class diagram ignores this.
B)A class diagram shows more of the structural details than the collaboration diagram.
C)A class diagram shows the names of the classes, while the collaboration ignores these.
6

Which of these figures is a collaboration diagram?
A)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p6_1.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
B)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p6_2.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
C)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p6_3.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
7

Which of these is the correct set of analysis class stereotypes in standard UML?
A)Interface, control and entity.
B)Boundary, control and entity.
C)Interface, sequence and entity.
8

One of the following is not an advantage of stereotyping analysis classes. Which one?
A)The resulting packages can form a basis for the system's architecture.
B)It can be useful to differentiate classes that have broad similarities in the way that they behave.
C)Once a class is stereotyped, its behaviour is likely to become more predictable.
9

What do boundary classes represent?
A)Customers and suppliers of the business.
B)People who will use the system.
C)Interaction between the system and its actors.
10

What is the significance of the double colon in the class name: User Interface::AddAdvertUI?
A)The class called AddAdvertUI is in the package called User Interface.
B)User Interface is the stereotype of a class called AddAdvertUI.
C)User Interface and AddAdvertUI are two alternative names for the same class.
11

Which one of these is not a permitted symbol for a boundary class?
A)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p11_1.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
B)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p11_2.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
C)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p11_3.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
12

What are entity classes?
A)Classes that contain data.
B)Classes that contain persistent data.
C)Classes that represent something or some concept in the application domain.
13

One of these is not a permitted symbol for an entity class. Which one?
A)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p13_1.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
B)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p13_2.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
C)
<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif:: ::/sites/dl/free/0077098641/41598/ch7_p13_3.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif"> (0.0K)</a>
14

What do control classes represent?
A)The calculation and scheduling aspects of the logic of the use case.
B)Classes that interact with the users of the system.
C)Classes that control the storage of persistent data.
15

One of the following cannot directly affect the state of an object. Which one?
A)A change in the value of one of its attributes.
B)The creation or destruction of another object of the same class.
C)The creation or destruction of a link with another object.
16

What is the difference between a link and an association?
A)A link connects two instances, while an association connects two classes.
B)A link is a transient association.
C)A link is an association between two entity classes.
17

What is the significance of the directional arrow indicated on this diagram?

<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif::Fig. 7.17::/sites/dl/free/0077098641/41598/ch7_p17.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif">Fig. 7.17 (1.0K)</a>
Fig. 7.17

A)It shows the direction in which you should read the name of the association.
B)It shows the direction in which messages can be sent along the association.
C)It shows the order in which the objects will be connected when a link is created.
18

What is the significance of the multiplicity of an association?
A)It denotes the number of different classes that can be linked together.
B)It constrains the number of objects of one participating class that can be linked to an object of the other class.
C)It constrains the number of times that an object of one participating class can be linked during its lifetime.
19

Which of the following answers is the correct interpretation of the association multiplicities shown on this diagram?

<a onClick="window.open('/olcweb/cgi/pluginpop.cgi?it=gif::Fig. 7.19::/sites/dl/free/0077098641/41598/ch7_p19.gif','popWin', 'width=NaN,height=NaN,resizable,scrollbars');" href="#"><img valign="absmiddle" height="16" width="16" border="0" src="/olcweb/styles/shared/linkicons/image.gif">Fig. 7.19 (0.0K)</a>
Fig. 7.19

A)A staff member need not be associated with any grades, or it can be associated with an indeterminate number of grades; a grade must be associated with one or more staff members.
B)A grade cannot be associated with a staff member but a staff member can be associated with a grade.
C)A grade need not be associated with any staff members, or it can be associated with an indeterminate number of staff members; a staff member must be associated with one or more grades.
20

How do operations differ from methods?
A)A method is a particular implementation of an operation.
B)An operation is a particular implementation of a method.
C)Some object-oriented programming languages have methods, while other have operations.
21

When do we not need to represent the whole system as a class in the analysis model?
A)When the users have not stated that this is a requirement.
B)When the system does not need to interact directly with other systems.
C)When the system does not need to encapsulate data or behaviour that applies only to the system as a whole.
22

What is a domain class model?
A)A class model that does not include either boundary or control classes.
B)An analysis class model that is independent of any particular use cases.
C)A class model that has been implemented in a particular domain.
23

One of the following is a bad guideline for deciding the class where an operation should be located. Which one?
A)The operation represents a service that objects of that class should provide to objects of other classes.
B)The operation needs to access or update data that is stored in another class that has an association with that class.
C)The operation needs to access or update data that is stored in an attribute of that class.
24

What is the main purpose of the Class-Responsibility-Collaboration technique?
A)To decide which team members will be responsible for developing each part of the software.
B)To decide which classes of the system should be responsible for each use case.
C)To decide how responsibilities should be distributed among the classes of the system.
25

Why is it often difficult to determine the most appropriate choice of responsibilities for each class?
A)Because there may be several alternatives that appear equally justified.
B)Because the developers may not know enough about how the users want the system to be designed.
C)Because members of the development team are often lazy and avoid responsibility as much as they can.
26

The requirements of different use cases may suggest different operations for the same class. How do we resolve this?
A)We split the class so that there is one for each use case, and model each class with the particular operations required for its use case.
B)We include in the class all the operations that are suggested by all the use cases.
C)We model the class with only that subset of operations that applies to all use cases.
27

Which of the following is an advantage of the use of a control class in realizing a use case?
A)A control class prevents users from being able to change the way that the entity classes work.
B)A control class reduces the need for entity classes to know anything about other entity classes unless this is directly relevant to their own responsibilities.
C)A control class allows the system to communicate with other systems on different networks.