Week 6 Flashcards

1
Q

Class diagrams, sequence diagrams, interaction diagrams and type diagrams are all used in what?

A

Object Oriented Analysis

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

What does CRC stand for?

A

Class-Responsibility-Collaboration

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

What are CRC cards used for?

A

Identifying classes that participate in a scenario

Allocating responsibilities - what can it do, what does it know

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

What does an unfilled diamond signify?

A

Aggregation

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

What does a filled diamond signify?

A

Composition

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

How is an initial pseudostate shown in a state machine?

A

filled circle with arrow pointing to first state

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

how is a final pseudostate shown on state machine diagrams?

A

“bullseye” symbol, filled circle with thin circle surrounding it

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

What types of trigger are to be found on state machines?

A

Change trigger

Call trigger

Signal trigger

relative time trigger

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

In a state machine, when does a change trigger occur?

A

When a condition becomes true

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

In a state machine, when does a call trigger occur?

A

When an object receives a call to one of its operations either from another object or itself

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

In a state machine, when does a signal trigger occur?

A

when an object receives a signal (asynchronous)

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

In a state machine, when does a relative-time trigger occur?

A

when a designated amount of time has elapsed after the event

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

what two approaches may be used to prepare state machines?

A

Behavioural approach

Life cycle approach

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

What are the 8 steps of behavioural approach to preparing state machines?

A

1) Examine all diagrams that involve each class with heavy messaging
2) Identify the incoming messages on each diagram that may correspond to events, and the resulting states
3) Document these events on a state machine
4) Elaborate as necessary to cater for additional interactions
5) Develop any nested state machines
6) Review to ensure consistency with use cases
7) Iterate 4,5,6 until the required detail is met
8) Check the consistency with the class diagram, or other diagrams and models

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

What are the 8 steps of the life cycle approach to producing state machines?

A

1) Identify major system events
2) Identify each class likely to have a state dependent response to the events
3) For each class, produce a first-cut state machine by considering the typical lifecycle of an instance of the class
4) Elaborate to encompass more detailed behaviour
5) Enhance the state machine to include alternative scenarios
6) Review to ensure consistent with use cases
7) Iterate 4,5,6 until necessary detail reached
8) Ensure consistency with other diagrams, models and state machines

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

What is the difference between a protocol and behavioural state machine?

A

Protocol state machines only show all the legal transitions with their pre and post conditions

no entry, exit or do activity sections or deep or shallow history states

17
Q

What is the syntax for a protocol transition?

A

[pre condition] trigger / [post condition]

e.g.

[barrierState=lowered] raiseBarrier / [barrierState=raised]

18
Q

Why are consistency checks importank in the perparation of a complete set of models

A

Highlights omissions and errors, and encourages the clarificiation or any ambiguity or incompleteness in the requirements