use case modelling n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
USE CASE MODELLING PowerPoint Presentation
Download Presentation
USE CASE MODELLING

Loading in 2 Seconds...

play fullscreen
1 / 33

USE CASE MODELLING - PowerPoint PPT Presentation


  • 98 Views
  • Uploaded on

USE CASE MODELLING. A use case is a scenario that describes the use of a system by an actor to accomplish a specific goal. An actor is a user playing a role with respect to the system. - people, other systems.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'USE CASE MODELLING' - omar


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
use case modelling
USE CASE MODELLING
  • A use case is a scenario that describes the use of a system by an actor to accomplish a specific goal.
  • An actor is a user playing a role with respect to the system. - people, other systems.
  • ScenarioA sequence of steps that describe the interactions between an actor and the system.
  • The use case model consists of the collection of all actors and all use cases.
use cases help
Use cases help ..

·Capture the system's functional requirements from the users' perspective

·Actively involve users in the requirements-gathering process

· Provide the basis for identifying major classes and their relationships

·Serve as the foundation for developing system test cases

use case modelling1
USE CASE MODELLING

-functional reqts., analysis phase

- what a system does: functions represented as use cases

- Actor: external agent that interacts with the system, exchanges info. with the system (user, sub-system, etc.)

- a role played by user

Note: a use case represents a complete functionality.

  • view of system behavior from an external person’s viewpoint
  • effective tool for validating requirements
  • an effective communication tool
  • basis for a test plan
  • basis for user manual

Developing the use cases in not difficult; ensuring that you have them all is murder.

slide4

Customer

Loses a Tape

  • Use Case Diagrams
    • Actor
    • Line: actor communicates with or is associated with use-case
slide5

Loses a Tape

<<extends>>

Customer

<<uses>>

VIP Loses a Tape

Customer

Buy a Tape

  • Use Case relationships:
    • <<uses>>: one use case always involves the steps of another
    • <<extends>>: under certain conditions, a use case follows a variant
goals of use cases
Goals of use cases
  • Interactions that provide value to actors
  • No implementation specific language
    • No assumptions about how the use case may be realized in code or user-interface
    • Note: use-cases drive the whole life-cycle, and they get refined – implementation specific use-cases
  • User-appropriate level of detail
    • General at requirements gathering stage
  • User-appropriate volume
    • Large systems: no more than 70-80 use cases
    • Small number of use cases – forces abstraction
use case scenarios
Use case scenarios
  • a realization of a use case.
  • Instance of an use case that effectively tests one path through a use case
  • To demonstrate whether a use case accurately reflects user needs
  • useful during testing

Example:

Use case name: Determine benefits eligibility for enrollee

Steps:

1. This use case starts when the social worker enters the enrollee’s name and employment situation.

2. This use case ends when the system responds with a determination of whether the enrollee is eligible for benefits and the financial extent of benefits.

Alternative path:

In step 1, if the enrollee has applied for benefits previously, based on the enrollee’s own disclosure, the social worker enters the enrollee’s name to search for his or her previous records

use case scenario example
Use case scenario - example

Example of scenario

  • The social worker asks Edward Trueman if he has applied previously for and/or received benefits. And Mr. Trueman replies that he has applied previously.
  • The social worker provides Mr. Trueman’s name as search criterion
  • The system provides Mr. Trueman’s previous records, which state that he applied for benefits on Dec 9th, 1997, and was determined to be ineligible on Dec 9th 1997 because of his current part-time employment status at Boeing Aerospace in the capacity of assembly line worker.
slide9

<<Extends>>

<<Extends>>

Class

registration

Registration

Clerk

Student

Registration for

special class

Prereq courses

not completed

Student Billing

Bursar’s

office

Instructor

Use-Case Diagram

Extends: extension to or variation of a use-case that exists in its own right

slide10

Order Food

Customer

Service Person

Hire Employee

Applicant

<<uses>>

Reorder

supplies

Manager

Supplier

<<uses>>

Track sales

and inv. data

Produce

mgt. reports

Uses: factors common behavior amongst multiple use-cases into a

generalized use-case.

slide11

Step 1: Identifying Actors and Use Cases

    • From context diagram, workflow diagram

Step2: Construct Use Case Model

    • System scope and boundary in terms of use cases and actors
    • partitioned into sub-systems

Step 3:Use Case sequence of actions

Step4: Identifying use case dependencies

Step5: Use case alternate course of actions

Step6: Finding Potential Objects

    • Nouns in use case

Step7: Selecting proposed Objects

  • Class Diagram (Object Association Model, Object Relationship Model)
slide12
Finding the actors
      • Ask client and domain experts how system will be used
      • Who will perform the obvious tasks? Secondary tasks of maintenance and administration? Interact with other systems?
      • Clear and differentiated names (eg. manager vs supervisor)
slide13
Recording the use cases
      • For each actor, what interactions /”results” they require of the system –each is a use case
      • Not overly precise yet, just note them down
    • What tasks does the actor want the system to perform
    • What information must the actor provide to the system
    • Are there events that the actor must tell system about
    • Does actor need to be informed when something happens
    • Does actor help initialize or shut down the system
slide14
Example: video store systemActor: Customer

- What tasks does the actor want the system to perform?

    • Find movie to rent, rent tape, return tape, reserve tape
  • What information must the actor provide to the system?
    • Name, address, membership#, film name
  • Are there events that the actor must tell system about?
    • Change of address
  • Does actor need to be informed when something happens?
    • Reserved tape is ready to be rented
  • Does actor help initialize or shut down the system
    • no
slide15
Example: video store system

Resulting use cases:

  • Customer joins and provides contact information including name, address, phone#, credit information, spouse and kids
  • Customer browses system looking for a tape to rent
  • Customer comes to store looking for a specific tape to rent
  • Customer rents a tape
  • Customer returns a tape
  • Customer reserves a tape
  • Customer is contacted when a reserved tape is ready

Note: simple phrases, without much details initially.

slide16
Finding the actors
      • Ask client and domain experts how system will be used
      • Who will perform the obvious tasks? Secondary tasks of maintenance and administration? Interact with other systems?
      • Clear and differentiated names (eg. manager vs supervisor)
slide17
Recording the use cases
      • For each actor, what interactions /”results” they require of the system –each is a use case
      • Not overly precise yet, just note them down
    • What tasks does the actor want the system to perform
    • What information must the actor provide to the system
    • Are there events that the actor must tell system about
    • Does actor need to be informed when something happens
    • Does actor help initialize or shut down the system
slide18
Example: video store systemActor: Customer

- What tasks does the actor want the system to perform?

    • Find movie to rent, rent tape, return tape, reserve tape
  • What information must the actor provide to the system?
    • Name, address, membership#, film name
  • Are there events that the actor must tell system about?
    • Change of address
  • Does actor need to be informed when something happens?
    • Reserved tape is ready to be rented
  • Does actor help initialize or shut down the system
    • no
slide19
Example: video store system

Resulting use cases:

  • Customer joins and provides contact information including name, address, phone#, credit information, spouse and kids
  • Customer browses system looking for a tape to rent
  • Customer comes to store looking for a specific tape to rent
  • Customer rents a tape
  • Customer returns a tape
  • Customer reserves a tape
  • Customer is contacted when a reserved tape is ready

Note: simple phrases, without much details initially.

slide20
Example: video store system
    • Other actors:
      • Clerk adds a new film to the system
      • It is time to order more films – manager wants to know which films are popular so as to get extra copies
      • Store orders 10 new copies of film; when they arrive, clerk adds them to system and puts them on shelf
      • Manager wants to know if he is making money
  • thinking of these may lead to some more customer use cases:

- Customer wants to know new movies in the store.

slide21
Example: video store system
  • Use cases from attributes of “things”
    • tapes have actors, film name, director, release date
    • Customer wants to find every movie starring a specific actor
    • Customer wants to find movies with same director as the last film she rented
    • Manager wants to put together list of movies rated ‘G’.
  • Use cases to manage the attributes:
    • Clerk adds new film to system
    • Clerk removes obsolete film from system
    • Clerk updates information about a film
slide22
Example: video store system
  • These use cases can remind us of similar responsibilities for customers:
    • Clerk adds customer to the system
    • Clerk removes customer account from system
    • Clerk updates customer’s account
slide23
Use case name, description

Example: Customer Loses a Tape

The customer reports to the clerk that he has lost a tape. The clerk prints out the rental record and asks customer to speak with the manager, who will arrange for the customer to pay a fee. The system will be updated to reflect lost tape, and customer’s record is updated as well. The manager may authorize purchase of a replacement tape.

slide24
Scenarios: a use case scenario shows the flow of events in a particular instance of a use case.
    • focussed on the business problem, not the solution
    • shows most common situation
    • can have greater or less detail as required to understand flow of interactions and events
    • also consider exceptional rather than the normal situations.
  • Scenario guidelines
    • how does the scenario begin? what causes it to end?
    • what is the distinction between what the actors do and how the system responds
    • what feedback will the actor receive?
    • which activities may repeat, and what causes them to stop?
    • Is there conditional branching in the flow of the scenario?
slide25
Formal description of use cases:
      • Use case name
      • Actors, brief description
      • Actions taking place
      • scenario – flow of events
      • Some use cases have multiple scenarios to explore various contingent activities
      • Preconditions –before the use case can begin
        • Eg. for Lost a Tape use case, customer must be member and must have rented a tape.
      • Post-conditions: state of system and perhaps for actors, after the use case is completed
slide26

Orders SubSystem

Submit Regular Order

Member Services Department

Past Member

Club Member

Request Sales Reports

Submit Promotion Order

Request Membership rpts

Submit subscription renewal

Create new subscription program

Marketing Department

Submit New Subscription

Send subscription renewal offer

Send new subscription offer

Create New Seasonal Promotion

Create New Monthly Promotion

Request Promotion Reports

Membership System

Promotions SubSystem

Member Services System

Send Club Promotion

Potential Member

slide27

Member Services System Use Case Dependency Diagram

depends on

Request Membership rpts

depends on

Send subscription renewal offer

subscription renewal

depends on

Request Promotion Reports

Create new subscription program

depends on

Send new subscription offer

Submit New Subscription

Request Sales Reports

Create New Seasonal Promotion

depends on

depends on

OR

Submit Regular Order

Send Club Promotion

Submit Promotion Order

depends on

Create New Monthly Promotion

slide33

Member Services

Context Model

Club

Member

Subscription Offer

Club promotion

Promotion order

New Subscription

Potential

Member

regular order

Past

Member

Member credit status

Subscription renewal

offer

Subscription renewal

New Membership Plan & Sub. Offer

A/C Receivable DB

Order to be filled

Sales and Promotion Reports

Membership Reports

New Monthly OR Seasonal Promotion

Warehouse

Marketing Dept.

Member Services Dept.