UML Flashcards

1
Q

Define: Use Case

A

A list of event steps defining the interactions between an actor and a system
Ultimate criterion: if it ends with a value for the user, it is a use case

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

Define: Essential use case

A

Describes user intentions and system responsibilities

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

Define: System use case

A

Describes user actions and system responses at a technical level

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

What are the 3 UML use case relationships

A

Includes:
a common subpart is used within a containing use case
Extends:
A variant or exceptional situation that extends the normal case
Generalisation:
Several special use cases generalised to a common general description

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

Capturing alternative execution paths in a communication diagram

A

with guards and letter notation

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

Using interaction diagrams in implementation phase

A

Creating method skeletons

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

Using interaction diagrams in the testing phase

A

Generate test cases

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

Value of super states

A

Reduce complexity of system by hiding state information

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

Define: Super-state

A

The parent state of one or multiple substates

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

Define: OCL

A

Derivative of UML describing rules for UML models

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

Uses of OCL

A

Provide constraints on:

Limits, Uniqueness, Consistency and Contracts

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

OCL Limits

A

Constrain values to certain ranges

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

OCL Uniqueness

A

Constrain instance values to be unique

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

OCL Consistency

A

Express invariants on data structures

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

OCL contracts

A

Pre/post conditions for operations

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

OCL invariants

A

constraint that states a condition that must always be met by all instances of the component, type or interface. Invariants must be true all the time

17
Q

When to use OCL

A

To express restrictions that can’t be shown with visual notation only

18
Q

How do substates reduce complexity of state diagram

A

Allows for single superstate with multiple substate variations I.e. concurrent substates,

19
Q

Situation for textual constraints in a diagram (2)

A
  1. textual constraints are easier to read than standard logical notations
  2. “loose semantics” allows admissible solutions to the constraint, without prescribing a specific solution
20
Q

Properties of a good class diagram

A

Honestly, not sure

Simple? Let me know what you think, Raz (If you see this)

21
Q

Why are class diagrams created at the analysis stage of engineering

A

Helps understand the requirements of the domain and identify its components

22
Q

Sequence diagram vs Communication diagram

A

Sequence diagram shows how interactions progress with respect to time
Communication diagram only shows in what order interactions progress

23
Q

UMLs approach to container types (I.e. Set)

A

On the association line, example:

Book: 1 {readOnly} has -> {ordered, unique} * :Reservation

24
Q

Benefits of association classes/high arity association

A

No multiple relationships between two objects

High arity associations (aggregation in between) give a symmetric contribution to relationship

25
Q

UML language/notation features to deal with complexity (3)

A

Superstates - reduce complexity by information hiding
Textual constraints?
Not sure, again

26
Q

Qualified Association

A

Kind of like an enum, I guess. Ex. Car has wheels, wheels have positions between them and cars