Use Case Modeling - PowerPoint PPT Presentation

About This Presentation
Title:

Use Case Modeling

Description:

Use Case Modeling 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 ... – PowerPoint PPT presentation

Number of Views:117
Avg rating:3.0/5.0
Slides: 31
Provided by: SidB6
Category:

less

Transcript and Presenter's Notes

Title: Use Case Modeling


1
Use Case Modeling
2
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.
  • Scenario A 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.

3
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

4
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 persons
    viewpoint
  • effective tool for validating requirements
  • an effective communication tool
  • basis for a test plan
  • basis for user manual
  • Developing the use cases is not difficult
    ensuring that you have them all is very difficult.

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

6
  • Use Case relationships
  • ltltusesgtgt one use case always involves the steps
    of another
  • ltltextendsgtgt under certain conditions, a use case
    follows a variant

7
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

8
Use case scenarios
  • Realization of a use case
  • Instance of a 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 enrollees 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 enrollees own
    disclosure, the social worker enters the
    enrollees name to search for his or her previous
    records

9
Use case scenario - example
  • Example of scenario
  • The social worker asks Edward Trueman if he has
    applied previously for and/or received benefits.
  • Mr. Trueman replies that he has applied
    previously.
  • The social worker provides Mr. Truemans name as
    search criterion
  • The system provides Mr. Truemans 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.

10
ltltExtendsgtgt
ltltExtendsgtgt
Class registration
Registration Clerk
Student
Registration for special class
Prereq courses not completed
Student Billing
Bursars office
Instructor
Use-Case Diagram
Extends extension to or variation of a use-case
that exists in its own right
11
Order Food
Customer
Service Person
Hire Employee
Applicant
Reorder supplies
ltltusesgtgt
Manager
Supplier
ltltusesgtgt
Track sales and inv. data
Produce mgt. reports
Uses factors common behavior amongst multiple
use-cases into a generalized use-case.
12
  • 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 3Use 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)

13
  • 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)

14
  • 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

15
  • Example video store system Actor
    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, media 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

16
  • 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, limited details initially.

17
  • 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 be informed when new movies are
    available.

18
  • 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

19
  • 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 customers account

20
  • 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 customers record is updated as well.
    The manager may authorize purchase of a
    replacement tape.

21
  • Scenarios a use case scenario shows the flow of
    events in a particular instance of a use case.
  • focused 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?

22
  • 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

23
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
24
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
Submit Promotion Order
Send Club Promotion
depends on
Create New Monthly Promotion
25
(No Transcript)
26
(No Transcript)
27
(No Transcript)
28
(No Transcript)
29
(No Transcript)
30
Member Services Context Model
Write a Comment
User Comments (0)
About PowerShow.com