 |
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?  Fig. 7.4 (1.0K) 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) | |
|  | B) | |
|  | C) | |
 |
 |
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) | |
|  | B) | |
|  | C) | |
 |
 |
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) | |
|  | B) | |
|  | C) | |
 |
 |
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?  Fig. 7.17 (1.0K) 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?  Fig. 7.19 (0.0K) 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. |
 |