L2 Use Case Analysis Flashcards
What is a Use Case
Is a behavioural model of a system.
It describes how a system responds to stimuli from “outside” of the system.
- A use case model consists of:
– A use case diagram (see below)
– A set of use case descriptions (textual)
Why do we use “Use Cases”?
- Offer a way to structure requirements according to stakeholder needs/goals
They are good because:
- They describe “scenarios” or sample execution scenarios for the system under development, which are easy to understand
- They are mainly textual so easy to use as a way to communicate between different stakeholders.
- They can be used to derive test cases.
- They are a standard part of the Unified Modeling Language.
Why do use cases need to be developed?
To find out:
- What happens and in what order
- How the use case responds to a stimulus
- What the actors require/need
What is the purpose of the diagrams?
Serve as a high-level reference.
- What use cases are there for the system under development?
- Which actors interact with each use case?
What is the purpose of Use case descriptions
- The diagrams serve as a high-level reference.
- What use cases are there for the system under
development? - Which actors interact with each use case?
- Use cases need to be developed to find out:
- What happens and in what order – i.e., how the use case
responds to a stimulus - What the actors require/need.
- Use case descriptions are used to develop use
cases
– Use case descriptions are developed as scenarios
What is Use case “Preconditions”?
Activities that must take place or any condition that must be true, before the use case can be started
- Student has been issued with
the coursework - Student has attempted the
coursework.
What is Use case “Flow of events”
User actions and system responses that will take place during execution of the use case under normal conditions
May include alternate flows
An alternative flow describes a scenario other than the basic flow that results in a user completing or achieving their goal.
Example:
1. Student submits coursework.
2. Course administrator records submission.
3. Course administrator passes submission to tutor.
4. Tutor marks submission.
5. Tutor returns marked submission.
6. Course administrator records mark.
7. Course administrator returns marked submission.
What is the Use case “Postconditions”
State of the system at the conclusion of the execution with normal flow events
Example:
1. Students receives a mark.
2. Student’s mark is recorded
Who should the develop use cases?
The users (actors) in a workshop run by the developer/engineer/analyst.
When to use «include» in a use case diagram?
Include is used to extract use case fragments that are duplicated in multiple use cases (i.e., common mandatory behaviour)
When to use «extends» is a use case diagram
When a use case conditionally adds a step to another use case (i.e., optional behaviour)
Explain different levels of detail in a use case:
Cloud level: Very high level summary. Typically a business goal.
Sea level: Or user goal. Key characteristics: single sitting & user gets a result
Fish level: Usually the include or extend use cases
Bottom-of-the-ocean level: Too low!
Use case diagram for a
coursework submission system
Facebook Use Case : Create Account
Adding Non-functional requirements to
use cases