L2 Use Case Analysis Flashcards

1
Q

What is a Use Case

A

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)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Why do we use “Use Cases”?

A
  • 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.

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

Why do use cases need to be developed?

A

To find out:
- What happens and in what order
- How the use case responds to a stimulus
- What the actors require/need

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

What is the purpose of the diagrams?

A

Serve as a high-level reference.

  • What use cases are there for the system under development?
  • Which actors interact with each use case?
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the purpose of Use case descriptions

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is Use case “Preconditions”?

A

Activities that must take place or any condition that must be true, before the use case can be started

  1. Student has been issued with
    the coursework
  2. Student has attempted the
    coursework.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is Use case “Flow of events”

A

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.

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

What is the Use case “Postconditions”

A

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

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

Who should the develop use cases?

A

The users (actors) in a workshop run by the developer/engineer/analyst.

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

When to use «include» in a use case diagram?

A

Include is used to extract use case fragments that are duplicated in multiple use cases (i.e., common mandatory behaviour)

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

When to use «extends» is a use case diagram

A

When a use case conditionally adds a step to another use case (i.e., optional behaviour)

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

Explain different levels of detail in a use case:

A

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!

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

Use case diagram for a
coursework submission system

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

Facebook Use Case : Create Account

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

Adding Non-functional requirements to
use cases

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

Can you draw a use case diagram for this
ATM example?

  • A bank owns an automated teller machine (cashpoint)
    system that enables its customers to:
    – withdraw money from their account
    – display their account balance
    – display the last 10 transactions on their account
  • Customers must be verified before they can access any of the ATM services
  • Customer accounts are stored in the bank’s database
A

The primary actor is the bank customer who intention is to achieve one or more of 3 the goals described represented by use cases (shown in blue)

  • The customer account database is a secondary actor helping the customer to achieve his/her goal
  • The 3 use cases all require the customer to verified (see “red” use case)
17
Q

Use case Guidelines

A
  1. Avoid Excessive Structuring
  2. Avoid Functional Decomposition
  3. Understand the difference between include and extend
    – Only use when absolutely necessary
18
Q

Facebook example: Different use levels

A
  • Cloud:
    – Maximize number of users
    – Maintain Reputation
    – Secure User’s Private Data
  • Sea:
    – Add Application
    – Add Friend
    – Create Account
  • Fish:
    – Login
    – Accept Terms of Service
  • Bottom-of-Ocean
    – Enter Password
    – Click on “submit”