OO Use Cases (PPT 5-8) Flashcards
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
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
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)
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
What s the UML representation of an actor?
A stick man
How do we name actors?
- Usually a noun or noun-phrase
- Capture the role they play, not just their position
What should a single use case represent?
- Represent a major piece of functionality
- should be something complete
- deliver something of value to an actor
What does CRUD mean?
Create Retrieve Update Delete If something needs all of these items then it is one use case, not four
What is a secondary actor?
It is an actor which is involved during a use case
What is a Use Case Specification?
It is a description of a complete sequence of actions
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
How do use cases start?
When an actor does something.
What is the basic flow of events?
It is the most common pathway or mian success scenario. Captured as dialogue between actor and system.
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
Why are alternate flows important?
They may raise major design decisions