CH12 (Test Bank) Flashcards

1
Q

T/F: “Just in time” systems design is a popular technique used in adaptive approaches to projects.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

T/F: In object-oriented design, the design models are extensions of the analysis models.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

T/F: One tenet of Agile philosophy is that while analysis models may be useful, it generally is not necessary to develop design models.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

T/F: The objective of object-oriented analysis is to identify the objects that must work together to carry out each use
case.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

T/F: Software systems can generally be divided into three types of systems: single-user systems, enterprise-level systems, and Web-based systems.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

T/F: The primary difference between Web based systems and non-Internet systems is in how the view layer interacts
with the domain and data access layers.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

T/F: The objective of object-oriented detailed design is to identify and specify all the objects that must work together
to carry out each use case.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

T/F: The most important model in object-oriented detailed design is a class diagram.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

T/F: One big difference between an Internet based system and a Client/Server system is that an Internet system maintains state information.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

T/F: The interface for a component in a component diagram is denoted by a ball or a port.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

T/F: Two layer architectures are interesting in theory, but are seldom if ever used.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

T/F: The primary difference between a design class symbol and a problem domain class symbol is the addition of
method signatures.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

T/F: Detailed Object-oriented design (OOD) is done on a use case-by-use case basis.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

T/F: Developers do not typically add more classes to design class diagrams than were originally defined in the domain model.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

T/F: It is usually a bad idea to try to include user-interface classes to a CRC design.

A

F

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Which of the following is NOT part of a multilayer object-oriented design (OOD)?
a. Database access c. User input form
b. Problem domain object d. Functional module

A

d. Functional module

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Which analysis model serves as an input model to a design class diagram?
a. Use case diagram c. Domain model class diagram
b. Activity diagram d. System sequence diagram (SSD)

A

c. Domain model class diagram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Which of the following is NOT one of the categories of difference between networked based systems and Internet based systems?
a. State configuration c. Server configuration
b. Client configuration d. Connectivity configuration

A

d. Connectivity configuration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Ports and sockets are used to show the interface in what kind of UML diagram?
a. Deployment diagram c. Package diagram
b. Network diagram d. Component diagram

A

d. Component diagram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Which of the following diagrams is used for architectural design?
a. Interaction diagrams c. State machine diagrams
b. Package diagrams d. Component diagrams

A

d. Component diagrams

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

The original method used to process input data in a Web based system was by using computer programs in
a. the Java programming language
b. the .NET programming suite
c. the C++ language for the CGI
d. the Javascript programming language

A

c. the C++ language for the CGI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

MVC stands for _______.
a. modules-variables-constants c. model-view-connection
b. module-variables-connections d. model-view-controller

A

d. model-view-controller

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

A set of public methods of a system that can be used by the outside world is referred to as ______.
a. MVC c. CRC
b. API d. DCD

A

b. API

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Which diagram is directly used to write programming code for object-oriented systems?
a. Sequence diagram c. Package diagram
b. Design class diagram d. State-machine diagram

A

b. Design class diagram

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Which two models are the primary models in object-oriented detailed design? a. Design class diagram and component diagram b. Package diagram and CRC cards c. Sequence diagram and state machine diagram d. Sequence diagram and design class diagram
d. Sequence diagram and design class diagram
26
In Unified Modeling Language (UML) notation, a stereotype is indicated by ____. a. parentheses c. guillemets b. brackets d. underline
c. guillemets
27
An input window class is an example of a(n) ____ design class type. a. boundary c. entity b. control d. persistent
a. boundary
28
A(n) ____ class acts as a switchboard between the view layer and the domain layer. a. boundary c. entity b. control d. persistent
b. control
29
Which of the following is included in the top compartment of a design class? a. Attributes c. Type-expression b. Parameter list d. Stereotype name
d. Stereotype name
30
In design class notation, the ____ of an attribute is enclosed in curly braces {}. a. visibility c. initial-value b. type-expression d. property
d. property
31
Which of the following is valid Unified Modeling Language (UML) notation for a method signature? a. visibility name:type-expression {parameter list} b. name:class-name (parameter list):type-expression c. visibility name(parameter list):type-expression d. visibility class-name:name:type-expression {parameter list}
c. visibility name(parameter list):type-expression
32
Which of the following is correct UML notation for an attribute in a design class? a. visibility name:type-expression = initial-value{property} b. visibility class-name:type-expression {property} c. visibility name:initial-value(property) d. visibility name:type-expression initial-value (property)
a. visibility name:type-expression = initial-value{property}
33
Given two classes, customer and order, which class would probably have navigational visibility to which class? a. Cannot determine based on the information provided b. Bidirectional -- each has visibility to the other c. Order to Customer d. Customer to Order
d. Customer to Order
34
If you are doing detailed design for the use case Create New Order, which class should receive the first input? a. OrderTransaction c. OrderHandler b. Order d. Customer
c. OrderHandler
35
CRC stands for what? a. Collaboration responsibility card c. class relationship collaboration b. Class responsibility collaboration d. collaboration relationship class
b. Class responsibility collaboration
36
UML provides a technique to extend the standard UML notation to include new symbols. This technique is called ________. a. extending c. prototyping b. stereotyping d. externalizing
b. stereotyping
37
Which of the following is usually NOT included in a first-cut design class diagram? a. Initial value information for attributes c. Method signatures b. Attribute types d. Navigation visibility arrows
c. Method signatures
38
Which of the following is a general guideline for designing navigation visibility? a. A superior/subordinate relationship is usually navigated from the superior to the subordinate class b. A superior/subordinate relationship is usually navigated from the subordinate to the superior class c. Relationships in which objects in one class cannot exist without objects of another class are usually navigated from the more dependent class to the more independent class d. Navigation arrows should not be modified during the design process
a. A superior/subordinate relationship is usually navigated from the superior to the subordinate class
39
After completing a use-case design using CRC cards, the next step is to _______. a. add required utility classes c. program the use case b. select another use case d. update the design class diagram
d. update the design class diagram
40
In a design class diagram, navigation visibility is identified by ____. a. a solid arrow between the classes, pointing to the visible class b. a solid arrow between the classes, initiating from the visible class c. a dashed arrow between the classes, pointing to the visible class d. a solid line between the classes
a. a solid arrow between the classes, pointing to the visible class
41
Which of the following is true of class-level methods? a. They depend on the existence of a particular object. b. They cannot access data across all objects. c. They are executed by the class instead of a specific object of the class. d. There can only be one class method per class.
c. They are executed by the class instead of a specific object of the class.
42
Which of the following is the best coupling choice for an input window, domain, and database object in a system? a. The input window is coupled to both the domain and database objects. b. The input window is coupled to the domain and the domain is coupled to the database. c. The input window and the domain are both coupled to the database object. d. All objects are coupled to each other.
b. The input window is coupled to the domain and the domain is coupled to the database.
43
High coupling ____ in a system. a. is easier to maintain b. reduces ripple effects in a system when changes occur c. adds complexity d. decreases visibility between classes
c. adds complexity
44
____ is a qualitative measure of the consistency of functions within a single class. a. Cohesion c. Coupling b. Encapsulation d. Visibility
a. Cohesion
45
A class that is responsible for accessing both the Internet and a database has ____ cohesion. a. very low c. medium b. low d. high
a. very low
46
A class named SaleItem which has methods to calculate its own price is said to have good ______. a. API c. coupling b. cohesion d. object responsibility
d. object responsibility
47
Which of the following are two primary methods used to design and implement enterprise-level systems. a. Client-server networked systems d. Desktop systems b. Client-server stand alone systems e. Mobile app systems c. Internet systems f. Open-source systems
a. Client-server networked systems, c. Internet systems
48
Which of the following are information items on CRC cards. (Choose two) a. Object names d. Stereotypes b. Method signatures e. Interactions c. Attributes f. Responsibilities
c. Attributes, f. Responsibilities
49
The creation of a programming object based on the template provided by the class definition is called _______.
instantiation
50
When a system has shared resources among multiple people or groups it is called a(n) _______.
enterprise-level system
51
What is the name of the diagram that is an implementation diagram which shows the overall system architecture and the logical components within it?
Component diagram
52
When a system is built with public methods that other systems can use to access its functionality, that is called the system’s _______.
application program interface (API)
53
CGI stands for _______.
common gateway interface
54
The main purpose of a(n) ____________________ diagram is to document and describe the programming classes that will be built for the new system.
design class
55
A(n) ____________________ class is a class that is used to retrieve data from a database.
data access
56
A(n) _______ class is one where its objects exist after the system is turned off.
persistent
57
What is the term used to define the characteristic of an object attribute that describes whether it can be directly accessed by another object -- denoted by + or - ?
visibility
58
What do we call the notation that shows all the information required to call or invoke a method?
method signature
59
What is the term to denote a method that is invoked on a class instead of on an object?
class-level method
60
The term used to identify an attribute that contains the same value for all objects of this type in the system is _______.
class-level attribute
61
A class that can never have objects of its type created is called a(n) _______.
abstract class
62
A class that can be instantiated with objects of its type being created is called a(n) ______
concrete class
63
The term “_______” is a design principle in which one object has reference to another object and can thus interact with it.
navigation visibility
64
A brainstorming technique for designing interactions in use cases by assigning responsibilities and collaborations for classes is called _______ .
CRC cards
65
The term “_______” is a measure of the focus or unity of purpose within a single class.
cohesion
66
hat is the term that is used to describe a design principle in which parts of a system that are unlikely to change are segregated from those that will?
Protection from variations
67
What term is used to describe a design principle in which an intermediate class is placed between two classes to decouple them but still link them?
indirection
68
A design principle in which objects are responsible for carrying out system processing is called ______.
object responsibility
69
List 2 important UML design models, and describe their use.
1. Component diagram -- to show the overall structure of the solution with identification and relationships between the major components, such as servers, of the solution. 2. Deployment diagram -- to show the equipment used to deploy the solution, and which components reside on which equipment 3. Design class diagram -- to describe all the programming classes, their attributes and methods. 4. Interaction diagrams (sequence diagrams or communication diagrams) -- to show the detail design of a use case by identifying all the internal messages required 5. Design state machine diagram -- to describe the states of an object and thus define the valid states and transitions of an object 6. Package diagrams -- to show which sets of classes associate together in subsystems or other closely related groups of classes