Exam 1 Flashcards

1
Q

Choose one best answer that lists all answers to fill each blank given in the IEEE definition of software engineering: “The application of a [1], [2], [3] approach to the development, [4], and [5] of software.”

[1] systematic, [2] disciplined, [3] quantifiable, [4] design, [5] maintenance

[1] incremental, [2] constrained, [3] quantifiable, [4] operation, [5] testing

[1] systematic, [2] disciplined, [3] quantifiable, [4] operation, [5] maintenance

[1] systematic, [2] disciplined, [3] maintainable, [4] testing, [5] maintenance

[1] revolutionary, [2] disciplined, [3] scalable, [4] management, [5] maintenance

A

[1] systematic, [2] disciplined, [3] quantifiable, [4] operation, [5] maintenance

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

Software engineering is synonymous with “writing high-quality software.”
True
False

A

False

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

What affects the complexity of software probably more than any other factor? (Choose one best answer.)
size
time
scale
users

A

size

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

The NATO conference that coined the term “software engineering” occurred in the year ___________.
1968
1971
1985
1990

A

1968

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

What analogy was used at the NATO conference to describe how we build [software] systems?
airplanes
cars
watches
safes

A

airplanes

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

Software engineering is concerned with completing a project within budget and within schedule.
True
False

A

True

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

Things have greatly improved since the NATO conference of 1968. Today very few large software projects end in disaster.
True
False

A

False

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

During development, the FBI Virtual Case File system was abandoned after [1] dollars had been spent. As a result, [2] lines of code were also abandoned. Choose one best answer that can fill each blank.
[1] 17 million ; [2] 170,000
[1] 170 million ; [2] 700,000
[1] 700 million ; [2] 170,000
[1] 70 million ; [2] 17,000
[1] 7 million ; [2] 700,000

A

[1] 170 million ; [2] 700,000

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

Choose one best answer that can fill each blank correctly.

After the FBI Virtual Case File project was abandoned, the investigators concluded poorly defined [1]—in addition to poor networking plans and [2]—were to blame.

[1] testing; [2] poor development plans
[1] policy; [2] poor maintenance plans
[1] design; [2] poor development plans
[1] requirements; [2] insufficient testing
[1] requirements; [2] poor development plans

A

[1] requirements; [2] poor development plans

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

The Ariane 5 was purposely exploded, only 40 seconds after launch, because a floating point operation caused an Operand Error. The function in which this occurred was “correct.” So, what caused the problem? Choose one best answer.
The function was executed at a time when it should not have been.
There was a human error; a miscommunication between the operators.
The launcher was too heavy.
A bad data conversion from 64-bit floating point to a 16 bit signed integer wasn’t caught at all.

A

The function was executed at a time when it should not have been.

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

The radiation overdose example illustrates how time-related issues in software can be very difficult to detect.
True
False

A

True

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

A software project would be unsuccessful if: (Choose all correct answers.)
the project is over-budget and/or misses its scheduled release date
the performance of the software fails to meet expectations
the system is difficult to use
the quality of the software is too low
the system does not meet the requirements identified by the customer

A

the project is over-budget and/or misses its scheduled release date
the performance of the software fails to meet expectations
the system is difficult to use
the quality of the software is too low
the system does not meet the requirements identified by the customer

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

Which of the following could cause a software project to be unsuccessful? (Choose all correct answers.)
poor estimates of necessary development time
managers failed to identify and manage risks
unrealistic project goals
poor communication among develpers, customers, and users
inability to recognize and manage the complexity of the system

A

poor estimates of necessary development time
managers failed to identify and manage risks
unrealistic project goals
poor communication among develpers, customers, and users
inability to recognize and manage the complexity of the system

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

Poor programming skills is not listed in Section 1.3 as a reason why software projects are unsuccessful.
True
False

A

True

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

People who have a vested interest in the development and use of a software system are called stakeholders.
True
False

A

True

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

The person (or persons) responsible for purchasing the software is called the ____________.
customer
development team
project manager
product manager

A

customer

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

The stakeholders who are responsible for monitoring the progress of a project—as well as establishing the schedule and budget—are the ________________.
project managers
business managers
development team
software engineers

A

project managers

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

The “product” of a software development effort includes more than source code—and more than documentation. It also includes test plans/results and productivity measurements. All of these products are called “work products” or ______________.
artifacts
deliverables
ingredients
components

A

artifacts

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

The activities within a software development project can include: (Choose all correct answers.)
Planning
Requirements elicitation (i.e., identifying requirements)
Determining how the software should be constructed to address the requirements
Implementing the software
Evaluating the quality of the work products

A

Planning
Requirements elicitation (i.e., identifying requirements)
Determining how the software should be constructed to address the requirements
Implementing the software
Evaluating the quality of the work products

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

Choose one best answer that lists correct answers for each blank on the following statement: A software process identifies when activities should be performed during software development. It usually identifies different [1], how they are ordered, how frequently they occur, and the project [2].
[1] use cases; [2] test cases
[1] modules; [2] deliverables
[1] artifacts; [2] plans
[1] phases; [2] deliverables

A

[1] phases; [2] deliverables

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

Choose one best answer that matches the blank given in the following: One of the well-known, but old, software processes is called the waterfall process (i.e., model). Its phases are executed in a strictly ___________ order.
sequential
parallel
alphabetical
synchronous
random

A

sequential

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

Choose one best answer that lists all answers that can fill each blank on the following statement correctly: Identify the phases of the waterfall model, in the order in which they would occur: [1], [2], [3], [4], and [5].
[1] planning, [2] design, [3] implementation, [4] testing, [5] operation
[1] inception, [2] design, [3] construction, [4] testing, [5] maintenance
[1] validation, [2] design, [3] implementation, [4] testing, [5] maintenance
[1] requirements, [2] design, [3] implementation, [4] testing, [5] maintenance
[1] requirements, [2] specification, [3] development, [4] testing, [5] maintenance

A

[1] requirements, [2] design, [3] implementation, [4] testing, [5] maintenance

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

Several software engineering principles are listed in the text book. Which of the following is a correct statement? (Choose all correct answers.)
Make speed number one.
High-quality software is possible.
Give products to customers early.
Use an appropriate software process.
Minimize intellectual property.
Inspect code.
Software is the key to success.

A

High-quality software is possible.
Give products to customers early.
Use an appropriate software process.
Inspect code.

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

The Software Engineering Code of Ethics and Professional Practice was written by the ACM (Association of Computing Machinery), not by IEEE Computer Society.
True
False

A

False

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

A software process prescribes the interrelationship among the phases by expressing their order and frequency, but does not define the deliverables of the project.
True
False

A

False

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

The inception of a product is where product ideas are formulated and a vision is established.
True
False

A

True

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

Requirements analysis is performed before the planning phase.
True
False

A

False

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

Within most software process models, the following phases are followed:
planning, implementation and testing
requirements analysis, design, implementation, testing
inception, planning, requirements analysis, design, implementation, testing, maintenance
none of the above

A

inception, planning, requirements analysis, design, implementation, testing, maintenance

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

A software design document is used as input to the:
Testing
Design
Implementation
none of the above

A

Implementation

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

An advantage of using the waterfall process is that resources are always active and never idle waiting for others to complete dependent tasks.
True
False

A

False

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

The results of the design phase are typically captured in the Software Project Management Plan.
True
False

A

False

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

During the maintenance phase, modifications that are made to the software usually arise due to:
Software defects
Customer enhancement requests
Performance or reliability improvements
all of the above
none of the above

A

all of the above

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

The intention of internal releases is to send to customers for evaluation.
True
False

A

False

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

Advantages of the spiral model are:
Risks are managed early and throughout the process
It is more cost effective
It requires fewer resources
all of the above

A

Risks are managed early and throughout the process

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

The Agile process advocates the following:
Small, close knit teams
Regular, frequent, customer meetings
code-centric approach
all of the above
none of the above

A

all of the above

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

Which is a reason for an organization not to make a project open source?
To gain market knowledge
To support core business
To have many individuals add to the code base
To support services

A

To have many individuals add to the code base

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

Agile process is an alternative to more classical approaches which are considered too “process heavy.”
True
False

A

True

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

The Agile Manifesto is anti-methodology and advocates not using any methodology when developing a software product.
True
False

A

False

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

Agile methods advocate delivering working software, but not testing the working software.
True
False

A

False

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

The Agile Manifesto contains fundamental values and principles which should be followed when developing software.
True
False

A

True

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

Pair programming is a practice found in extreme programming.
True
False

A

True

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

During SCRUM the following questions need to be answered:
What items have been completed since last meeting?
What issues have been discovered that need to be resolved?
What new assignments make sense for the team to complete until the next scrum meeting?
all of the above
none of the above

A

all of the above

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

A SCRUM master is appointed and responsible for conducting the daily SCRUM as well as:
measuring progress
coding, designing and testing
clearing obstacles
A and C only
none of the above

A

A and C only

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

When using the SCRUM process, daily scrum meetings should last no more than an hour.
True
False

A

False

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

Agile processes should not merge with non-agile processes.
True
False

A

False

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

The Agile process has been in use now since the early 60’s.
True
False

A

False

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

Individuals and interactions over process and tools is a main principle of the Agile software process.
True
False

A

True

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

A major principle of the Agile software is:
Producing more than enough documentation
Creating overly complex architectures
Working software is the primary measure of progress
none of the above

A

Working software is the primary measure of progress

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

Refactoring is the process of:
adding unit tests to the code
changing the way in which a feature works
altering the form of the code base while retaining the same functionality
none of the above

A

altering the form of the code base while retaining the same functionality

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

A teams’ velocity is the assessment of:
how quickly a team can complete an iteration
how much a team can complete within an iteration
the relative difficulty of stories and the rate at which it is able to implement them
none of the above

A

the relative difficulty of stories and the rate at which it is able to implement them

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

Please choose practices which adhere to the Extreme Programming methodology:
Feature driven development
Single programming only
Work at an extremely fast pace
all of the above
none of the above

A

none of the above

52
Q

Please choose priorities which adhere to the Crystal methodology:
Safety in the project outcome
Efficiency in development
Habitability of the conventions
all of the above
A and C only

A

all of the above

53
Q

Pair programming is:
when individuals have to merge code together
when individuals are contributing to the same code base
continual inspection of by one team member of the work of a teammate
none of the above

A

continual inspection of by one team member of the work of a teammate

54
Q

Which is not a practice of Agile?
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Following a plan rather than responding to change
Customer collaboration over contract negotiation

A

Following a plan rather than responding to change

55
Q

Within agile projects, the description of user actions through the application is called:
user stories
user case studies
functional cases
none of the above

A

user stories

56
Q

A diagram that depicts the different states within an application is called
a use case narrative
a dataflow diagram
a deployment diagram
none of the above

A

none of the above

57
Q

Data flow diagrams describe the flow of end-user activity and processing throughout an application.
True
False

A

False

58
Q

The SCRUM agile process insists that the customer community supply:
multiple stakeholders
a single stakeholder
at most two stakeholders
none of the above

A

a single stakeholder

59
Q

When customers develop the vision of the application, it is referred to as the applications model.
True
False

A

True

60
Q

The people who have some interest in the outcome of the product are called its stakeholders.
True
False

A

True

61
Q

Typically after an interview with a stakeholder, it is common to draft a SRS of the high-level requirements.
True
False

A

True

62
Q

Within a requirements analysis document, an overview is intended to allow readers to quickly understand the main purpose of the intended application.
True
False

A

True

63
Q

A common way to analyze stakeholder requirements is to:
Send emails to each of the stakeholders
Interview the stakeholders face-to-face
Send each stakeholder a letter asking for requirements
none of the above

A

Interview the stakeholders face-to-face

64
Q

A data flow diagram describes:
the different states within an application
the flow of data through the application
end-user actions through the application
all of the above

A

the flow of data through the application

65
Q

Use cases describe the typical sequence of interactions between users of an application and the application itself and provide a narrative of how the application is used.
True
False

A

True

66
Q

With regard to agile processes and other processes, agile processes
accept frequent change in requirements
do not have requirements
freeze requirements for a set period of time
all of the above

A

accept frequent change in requirements

67
Q

Changing from one GUI state to another is called a:
transition
leap
bound
all of the above
a and b only

A

transition

68
Q

Ensuring the application is compliant with the HIPAA privacy act, is an example of a security requirement.
True
False

A

True

69
Q

In understanding detailed GUI requirements, it is not important to:
know your user
apply principle of good screen design
create solid backend services
all of the above

A

create solid backend services

70
Q

Domain classes are used to categorize requirements using the class style method to organizing requirements.
True
False

A

True

71
Q

A disadvantage of organizing requirements by class is:
classes are hard to track
it requires development to get involved
the class may change which would break the relationship between requirements and design
none of the above

A

the relationship between requirements and design

72
Q

Traceability of detailed requirements means:
trace the requirement to the design only
trace the requirement through the design to the implementation
ensure that the requirement is documented
all of the above

A

trace the requirement through the design to the implementation

73
Q

In an agile project, the detailed requirements are usually expressed in terms of in-code comments and unit tests rather than being written explicitly in a separate document.
True
False

A

True

74
Q

Organizing detailed requirements by operational sequences is called:
use case organization
state organization
feature organization
none of the above

A

use case organization

75
Q

There are multiple ways to organize detailed requirements, they are:
by feature
by use-case
by state
all of the above

A

all of the above

76
Q

The oldest manner of organizing detailed requirements is by use case.
True
False

A

False

77
Q

Audit trails are an example of what type of requirement:
reliability
serviceability
security
none of the above

A

security

78
Q

For simple projects, requirements can be tracked:
in a spreadsheet
on a napkin
in email
all of the above

A

in a spreadsheet

79
Q

When capability needs to be reduced from a project perspective it is good to:
not implement the most difficult requirements
implement the requirements with the least amount of tests
appropriate triage the requirements
none of the above

A

appropriate triage the requirements

80
Q

Test driven development is when:
tests are written after code is implemented
tests are written before code is implemented
tests are written at the end of the project
none of the above

A

tests are written before code is implemented

81
Q

Which one of the following does not fall into the category of common security requirements?
Confidentiality
Portability
Integrity
Authentication
Authorization

A

Portability

82
Q

Even when a requirement is testable, it can be time consuming. In order to be complete, we should also consider:
reducing the number of tests to shorten the time
estimate the cost of testing
having upper management test as well
none of the above

A

estimate the cost of testing

83
Q

We usually think of details as being far less important than the ‘‘big picture,’’ but a missing requirements detail does not have that large of an effect on projects.
True
False

A

False

84
Q

“The player can decide the qualities of Encounter characters,” is an example of an ambiguous requirement.
True
False

A

True

85
Q

Understandability appears to be a highly subjective quality because it depends on peoples’ opinion and it cannot be measured.
True
False

A

False

86
Q

“The system shall display the difference in salary between the client and the worldwide average for the same trade” is a testable requirement.
True
False

A

False

87
Q

A requirement is considered to be traceable if:
it maps back to the SRS only
it can be tested only
it maps back to the design, implementation and test
none of the above

A

it maps back to the design, implementation and test

88
Q

In order to validate a requirement it must be:
designed and completed
testable
implemented
none of the above

A

testable

89
Q

Which quality assurance metrics are not in the IEEE Standard 982.2-1988:
Degree of completeness
Traceability
Consistent with the remaining requirements
Defect traceability

A

Defect traceability

90
Q

Detailed requirements are the first software process documents that can be inspected against prior documentation.
True
False

A

True

91
Q

To deal with a set of requirements, we should be able to access the ones we want, when we want them This is the quality of:
availability
accessibility
measurability
all of the above

A

accessibility

92
Q

Comprehensive requirements means:
how thorough the requirements are
the extent to which the customer’s wants and needs are included
how descriptive the requirements are
none of the above

A

the extent to which the customer’s wants and needs are included

93
Q

A set of requirements is self complete if:
it is testable
it was designed properly
it contains every part whose inclusion is necessitated by parts already present
none of the above

A

it contains every part whose inclusion is necessitated by parts already present

94
Q

The following requirements, “A player can choose the hair color of a character” and “The hair color of a character can only be brown” are considered what type of requirements?
inconsistent
consistent
constraints
all of the above

A

inconsistent

95
Q

When defining a use case, you should ask yourself, “What are the goals of the actor?” as opposed to “What does the actor typically do?”
True
False

A

True

96
Q

What linguistic test can be used to determine if something is a feature of the system (or one of functional requirements)?
The system is <something>.
The system has <something>.
The system does <something>.
The system provides <something>.</something></something></something></something>

A

The system does <something>.</something>

97
Q

It is common to work on varying scenarios of the same use case over several iterations.
True
False

A

True

98
Q

At the requirements level, behavior is described in
operations associated with classes.
use cases only.
class operations and use cases.
use case diagrams only.
use case diagrams and operations.

A

use cases only.

99
Q

A use case defines a contract with respect to how the system should behave.
True
False

A

True

100
Q

A Conceptual (Domain) Model is:
A representation of the concepts that solve the problem.
A model of the system implementation.
A representation of concepts in the problem domain.
A model of the user interactions with the system.
A model of the system functions that deal with problem
domain concepts.

A

A representation of concepts in the problem domain.

101
Q

A software class is less specific than a conceptual class because the latter is specific to a particular programming language whereas the former is not.
True
False

A

False

102
Q

An association between two conceptual classes is inherently bidirectional. In other words, each class is aware of the other class via the identified association.
True
False

A

True

103
Q

The artifacts that can help your requirements modeling are use case diagrams, use cases, and requirements-level class diagrams. Among theses, behavioral aspects of the domain are described in:
operations shown in a requirements-level class diagram.
use cases only.
class operations and use cases.
use case diagrams only.
use case diagrams and operations.

A

use cases only.

104
Q

A conceptual class represents a concept from the real world, which could be almost anything with a label. Even a “thought” could be viewed as a conceptual class.
True
False

A

True

105
Q

Collaboration among software objects can be described using a requirements-level class diagram.
True
False

A

False

106
Q

Concepts in a conceptual (domain) model should include:
Software artifacts such as windows, a database, and
data structures.
Actions that are listed in a use case scenario.
Places, events, policies, and their relationships.
Places, events, transactions, policies, and their operations.
Physical objects, places, transactions, events, policies, catalogs, contracts.

A

Physical objects, places, transactions, events, policies, catalogs, contracts.

107
Q

One way to identify concepts to include in a Conceptual (Domain) Model is to:
Find relationships between entities in the problem description, use cases, and requirements specification.
Find nouns or noun-phrases in the problem description, use cases, and requirements specification.
Find verbs or verb-phrases in the problem description, use cases, and requirements specification.
Find adjectives in the problem description, use cases, and requirements specification.
Find elements of pure data types in the problem description.

A

Find nouns or noun-phrases in the problem description, use cases, and requirements specification.

108
Q

Rather than use an attribute as a key that associates two types, you should do which one of the following?
Use a relational data base.
Use a context variable.
Use generalization/specialization to create a hierarchy between the two concepts.
Use composition and multiplicity to create a hierarchy between the two concepts.
Use an association.

A

Use an association.

109
Q

The development of a conceptual (domain) model:
May occur in parallel to the development of the use cases.
Must always follow the development of use cases and the
requirements list.
Must occur after collaboration diagrams and system sequence
diagrams are completed.
May occur after collaboration diagrams are completed.
Must occur before developing use case diagrams.

A

May occur in parallel to the development of the use cases.

110
Q

Using evolutionary development, it is important to create a domain model that is as accurate as possible before creating sequence diagrams.
True
False

A

False

111
Q

When constructing a domain model: (Choose all correct answers)
one needs to identify as many associations as possible.
An n-ary association relates n classes (concepts).
data flows are represented as associations.
two classes (concepts) may have several different associations between them.
the type of an attribute should normally be a complex domain concept.

A

An n-ary association relates n classes (concepts).
two classes (concepts) may have several different associations between them.

112
Q

Which of the following are good examples of specialization in a requirements model? Indicate all good examples.
Stack specializes List
Student specializes Person
Oak specializes Tree
Wheel specializes Car
SequenceIndex specializes Sequence

A

Student specializes Person
Oak specializes Tree

113
Q

Most System Sequence Diagrams (SSDs) are created in inception.
True
False

A

False

114
Q

System events should be expressed in terms of the physical input device.
True
False

A

False

115
Q

UML SSDs are used to illustrate the system internal behaviors as UML Sequence Diagrams (SDs) do.
True
False

A

False

116
Q

Which of the following are true about an SSD? (multiple answers)
SSD stands for Static Sequence Diagram.
An SSD is a picture that shows, for one particular scenario of a use case, interactions between external actors and the system.
For the events shown by external actors, an order is also shown.
An SSD does not show inter-system events.

A

An SSD is a picture that shows, for one particular scenario of a use case, interactions between external actors and the system.
For the events shown by

117
Q

Which of the following is not a good description of information that should be described in a contract (i.e., an operation contract that is specified for an SSD)? (multiple answers)
Preconditions
Postconditions
Name of system operation, and its parameters
All system internal actions to be performed during the operation
Use cases this operation can occur with
All primary actors of the use case that this operation can occur with
Noteworthy assumptions about the state of the system or objects in the domain model before execution of the operation.
None of the above

A

All system internal actions to be performed during the operation

All primary actors of the use case that this operation can occur with

118
Q

Which of the following is not a category that postconditions of an operation contract fall into?
Instance creation or deletion.
Attribute change of value.
Associations formed or broken.
An algorithm or solution of the operation

A

An algorithm or solution of the operation

119
Q

Which of the following is not a true statement about operation contracts?
Operation contracts are useful to understand and identify what should happen when a complex system operation is invoked.
Postconditions in operation contracts should be expressed in the context of the Domain Model objects.
Postconditions in operation contracts should always be expressed in the present tense.
When new instances are created, it is likely that associations to several objects need be established.

A

Postconditions in operation contracts should always be expressed in the present tense.

120
Q

Drawing an SSD is relevant to know which events are coming into the system.
True
False

A

True

121
Q

How do we indicate a Singleton instance in a class diagram?
«Singleton»
With a ‘1’ in the upper right-hand corner
Just draw a single one
None of the above

A

With a ‘1’ in the upper right-hand corner

122
Q

A sequence diagram describes
only the interactions between objects; it does not describe what happens inside of an object.
how an object state changes as a result of receiving an event.
the interactions between objects and the activities that take place within an object.
how an object is transformed by message.
a detailed algorithm for a method.

A

only the interactions between objects; it does not describe what happens inside of an object.

123
Q

Which of the following statements about UML dependencies are true? (multiple answers)
A dependency represents a transient relationship between class objects.
When an object A creates another object B, a create dependency exists between the objects A and B.
A dependency in UML should always be implemented in Java by defining a reference as a class member.
If an object of class A is passed in as a parameter to a method defined in class B, then a dependency exists between class A and class B.
A solid line with an arrow at the one end is used to depict all types of dependencies.

A

A dependency represents a transient relationship between class objects.
When an object A creates another object B, a create dependency exists between the objects A and B.
If an object of class A is passed in as a parameter to a method defined in class B, then a dependency exists between class A and class B.

124
Q

A lifeline in a sequence diagram
represents an instance.
represents a class
represents the body of a method.
represents the exception handling mechanisms of an object
represents associations.

A

represents an instance.

125
Q

To handle the logic (e.g., looping) required for a sequence being modeled, we can use frames with appropriate operators (e.g., loop for looping), which is formally called “sequence diagram fragments.” Which one of the following statements about sequence diagram fragments is not true?
Fragments can be nested.
The alt fragment is used to show alternative interactions.
The par fragment is used to show groups of interactions that can occur in parallel.
A neg fragment describes interactions that are optional.
A fragment can span multiple lifelines.

A

A neg fragment describes interactions that are optional.