OO Use Cases (PPT 5-8) Flashcards Preview

Object Oriented Analysis and Design > OO Use Cases (PPT 5-8) > Flashcards

Flashcards in OO Use Cases (PPT 5-8) Deck (26):
1

What are Use Cases?

A description of a complete sequence of actions, and variants thereof, performed by a system in order to yield a result of value to an actor

2

What components does a Use Case need?

-Actors: Things outside the system which interact with it
-Use Cases: Functionality provided by the system to meet goals of the actors

3

Who or what can be an actor?

-Human users
-Other software systems
-Sometimes electro-mechanical systems (this depends on the system, sometimes its not the mechanical system, its what interacts with that)

4

What are usually not actors?

-The system itself
-Databases
-Computer OS or peripherals (Unless developing drivers or low level applications)
-Automated tasks could be an actor but it depends on the situation

5

What s the UML representation of an actor?

A stick man

6

How do we name actors?

-Usually a noun or noun-phrase
-Capture the role they play, not just their position

7

What should a single use case represent?

-Represent a major piece of functionality
-should be something complete
-deliver something of value to an actor

8

What does CRUD mean?

Create
Retrieve
Update
Delete
If something needs all of these items then it is one use case, not four

9

What is a secondary actor?

It is an actor which is involved during a use case

10

What is a Use Case Specification?

It is a description of a complete sequence of actions

11

What do we need to specify for each use case?

-How it starts
-Basic steps required to fulfil the case
-Any alternate ways of fulfilling it

12

How do use cases start?

When an actor does something.

13

What is the basic flow of events?

It is the most common pathway or mian success scenario. Captured as dialogue between actor and system.

14

How do we identify alternate flows?

Go through basic flow and think of:
-Different decisions that could be made
-Things that could go wrong
-Lack of response from an actor

15

Why are alternate flows important?

They may raise major design decisions

16

How do we document alternatives?

Give each one a unique identifier, usually in the form (An) where n is the number of alternate flow. We then give them a descriptive name, a small description and the flow of events

17

What does include do?

If several use cases share common behaviour, this can be refactored out into a separate use case using include

18

When should we use include?

-If several use cases share the same piece of behaviour
-If the new use case would contain a reasonable amount of dialogue

19

What is generalizing a relationship?

This is when one use case inherits all the characteristics of another use case.

20

What are some common mistakes made with include and extend?

-Overusing both of them
-Trying to force them into somewhere that doesn't fit

21

How can use cases be used throughout the life cycle?

-Can help plan and deliver iterations
-Can help with estimating effort
-Can also help with testing and user documentation

22

How are use cases used at the inception of the life cycle?

-Sketch use cases out and elaborate on riskier ones
-Rank each for risk, business value and architectural significance
-Attack riskiest and most significant first

23

How are use cases used at the elaboration stage?

-Attack the riskiest and most significant first
-Completely elaborate, analyse, design and implement

24

How can we estimate effort from use cases?

Can use Use Case Points
-Determine weighting of actors (simple, average, complex)
-Determine weighting of use cases (simple, average, complex)
-Assign amount of hours for UCP

25

When should we use extend?

When two use cases do the same thing but one does a little more

26

What does extend do?

It is used to add new, optional behaviour to an already existing use case