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
Q

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

A

d. Sequence diagram and design class diagram

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

In Unified Modeling Language (UML) notation, a stereotype is indicated by ____.
a. parentheses c. guillemets
b. brackets d. underline

A

c. guillemets

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

An input window class is an example of a(n) ____ design class type.
a. boundary c. entity
b. control d. persistent

A

a. boundary

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

A(n) ____ class acts as a switchboard between the view layer and the domain layer.
a. boundary c. entity
b. control d. persistent

A

b. control

29
Q

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

A

d. Stereotype name

30
Q

In design class notation, the ____ of an attribute is enclosed in curly braces {}.
a. visibility c. initial-value
b. type-expression d. property

A

d. property

31
Q

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}

A

c. visibility name(parameter list):type-expression

32
Q

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

a. visibility name:type-expression = initial-value{property}

33
Q

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

A

d. Customer to Order

34
Q

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

A

c. OrderHandler

35
Q

CRC stands for what?
a. Collaboration responsibility card c. class relationship collaboration
b. Class responsibility collaboration d. collaboration relationship class

A

b. Class responsibility collaboration

36
Q

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

A

b. stereotyping

37
Q

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

A

c. Method signatures

38
Q

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. A superior/subordinate relationship is usually navigated from the superior to the subordinate class

39
Q

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

A

d. update the design class diagram

40
Q

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. a solid arrow between the classes, pointing to the visible class

41
Q

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.

A

c. They are executed by the class instead of a specific object of the class.

42
Q

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.

A

b. The input window is coupled to the domain and the domain is coupled to the database.

43
Q

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

A

c. adds complexity

44
Q

____ is a qualitative measure of the consistency of functions within a single class.
a. Cohesion c. Coupling
b. Encapsulation d. Visibility

A

a. Cohesion

45
Q

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

a. very low

46
Q

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

A

d. object responsibility

47
Q

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

a. Client-server networked systems, c. Internet systems

48
Q

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

A

c. Attributes, f. Responsibilities

49
Q

The creation of a programming object based on the template provided by the class definition is called _______.

A

instantiation

50
Q

When a system has shared resources among multiple people or groups it is called a(n) _______.

A

enterprise-level system

51
Q

What is the name of the diagram that is an implementation diagram which shows the overall system architecture
and the logical components within it?

A

Component diagram

52
Q

When a system is built with public methods that other systems can use to access its functionality, that is called
the system’s _______.

A

application program interface (API)

53
Q

CGI stands for _______.

A

common gateway interface

54
Q

The main purpose of a(n) ____________________ diagram is to document and describe the programming classes that will be built for the new system.

A

design class

55
Q

A(n) ____________________ class is a class that is used to retrieve data from a database.

A

data access

56
Q

A(n) _______ class is one where its objects exist after the system is turned off.

A

persistent

57
Q

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 - ?

A

visibility

58
Q

What do we call the notation that shows all the information required to call or invoke a method?

A

method signature

59
Q

What is the term to denote a method that is invoked on a class instead of on an object?

A

class-level method

60
Q

The term used to identify an attribute that contains the same value for all objects of this type in the system is
_______.

A

class-level attribute

61
Q

A class that can never have objects of its type created is called a(n) _______.

A

abstract class

62
Q

A class that can be instantiated with objects of its type being created is called a(n) ______

A

concrete class

63
Q

The term “_______” is a design principle in which one object has reference to another object and can thus interact with it.

A

navigation visibility

64
Q

A brainstorming technique for designing interactions in use cases by assigning responsibilities and collaborations for classes is called _______ .

A

CRC cards

65
Q

The term “_______” is a measure of the focus or unity of purpose within a single class.

A

cohesion

66
Q

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?

A

Protection from variations

67
Q

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?

A

indirection

68
Q

A design principle in which objects are responsible for carrying out system processing is called ______.

A

object responsibility

69
Q

List 2 important UML design models, and describe their use.

A
  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