Use cases
This presentation is the property of its rightful owner.
Sponsored Links
1 / 26

Use Cases PowerPoint PPT Presentation


  • 86 Views
  • Uploaded on
  • Presentation posted in: General

Use Cases. High-level system description. System description. Typical description has two parts data operations on that data Three possible descriptions requirements specification design. Many notations. UML Use cases Class diagram State diagram Hamlet and Maybee

Download Presentation

Use Cases

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 cases

Use Cases

High-level system description


System description

System description

  • Typical description has two parts

    • data

    • operations on that data

  • Three possible descriptions

    • requirements

    • specification

    • design

CS427


Many notations

Many notations

  • UML

    • Use cases

    • Class diagram

    • State diagram

  • Hamlet and Maybee

    • Finite state machine, Data flow diagram

    • Prolog

    • Pseudocode

CS427


Many purposes

Many purposes

  • Communicate to

    • User

    • Developers

    • Boss

  • Complete - lots of detail

  • Easy to read - less detail

CS427


Writing effective use cases

Writing Effective Use Cases

  • Alistair Cockburn

  • Know the inside cover, front and back

  • www.usecases.org

    • papers

    • discussion boards

CS427


Use case diagram

Use case diagram

  • Shows actors and use cases

  • Shows system scope and boundaries

  • Not a description of use cases

  • Like a context diagram

CS427


Scd for claims processing

SCD for Claims Processing

Claim adjudicator

Data entry

Data repair

Electronic claim

Claims Processing

System

Mainframe

Fax

Postal System

Postal System

CS427


Use cases1

Use Cases

  • Text - a form of writing.

  • Describes the system’s behavior as it responds to a request from an actor.

  • Many kinds of use cases

    • Brief / detailed

    • Requirement / specification / design

CS427


Use cases2

Use cases

  • Describe the sequence of events that happen when the system responds to a request

    • Can describe alternatives

    • Can describe errors

CS427


Use cases are text

Use cases are text

  • Use cases should be easy to read

    • keep them short

    • tell a story

    • write full sentences with active verb phrases

    • make the actors visible in each sentence

CS427


Many ways of writing use cases

Many ways of writing use cases

  • User stories

  • Actor-goal list

  • Use case briefs

  • Casual use cases

  • “Fully dressed” use cases

CS427


Actor goal list

Actor-Goal List

ActorTask-level goalPriority

ProviderSubmit paper claim1

Provider Submit fax claim2

ProviderSubmit electronic claim3

Adjud.Adjudicate problem2

CS427


Use case briefs

Use case briefs

Brief

Submit claim on paper, which is converted into electronic form, and either paid or sent for adjudication

Submit claim by fax, which is processed by OCR and either paid or sent for adjudication.

Decide whether a questionable claim should be paid by the mainframe payment system or rejected

Actor

Provider

Provider

Adjucator

Goal

Submit paper claim

Submit fax claim

Adjudicate failed claim

CS427


Brief casual version of submit fax claim

Brief (casual) version of Submit Fax Claim

The Provider submits a claim by fax. The claim processing system will log the image to optical disk, apply form dropout, deskewing, despeckling, and then process it using OCR. Knowledge workers will repair any fields that seem to be in error. The claim will then either be paid (using existing mainframe processing system) or sent to adjudication.

CS427


Detailed fully dressed version of submit fax claim

Detailed (fully dressed) version of Submit Fax Claim

Primary Actor: Provider

Goal in context: Pay legitimate claims while rejecting bad ones.

Scope: Business - the overall purchasing mechanism, electronic and nonelectronic, as seen by the people in the company.

Level: Summary

Stakeholders and interests:

Provider: Wants to be paid for services rendered.

Company: Wants to cut costs and avoid fraud

Precondition: none

Minimal guarantees: Pay only certified providers, pay only for services that are covered by plan, do not pay if there are obvious mistakes

CS427


Main success scenario

Main Success Scenario:

Trigger: Claim submitted by fax

1. Provider: submit claim by fax

2. Claim system: drop forms, deskew, despeckle, use OCR to convert to electronic form

3. Claim system: check claim to make sure it is legal

4. Mainframe payment system: pay claim

Extensions:

2a. Some fields have low confidence: Knowledge worker corrects

3a. Claim is not valid: send to adjudication

CS427


Use cases and requirements

Use Cases and Requirements

  • An important part of requirements

  • Help requirement traceability

  • Help manage requirements

CS427


Requirements

Requirements

  • Use cases

  • Stakeholders - people who care

  • Business case - cost of project, time to complete project

  • Interfaces with outside systems

  • Technology requirements

  • Ease of use, ease of maintenance, throughput and response time

CS427


Traceability

Traceability

  • Traceability - the ability to trace the effect of a requirement and determine who caused it

    • Why do we have this requirement? Who wrote it?

    • How is this requirement met?

    • What requirement caused this design?

CS427


Manage requirements

Manage requirements

  • Must agree to change in requirements

    • Usually increases price

    • Must be reviewed

  • Make sure each part of design is due to a requirement

  • Analyze problems: what was the root cause of this bug?

CS427


Scenarios and use cases

Scenarios and Use Cases

  • Scenario is concrete and detailed

    • names of people

    • $ values, particular dates, particular amounts

  • Scenario is a test case

  • Use Case is a contract, and collects all the scenarios

CS427


Goals and use cases

Goals and Use Cases

  • Actor has a goal for the use case

  • System forms subgoals to carry out its responsibility

  • Goals can fail

  • Use case describes a set of ways for carrying out the goal, and several ways of failing

CS427


When use cases don t work

When use cases don’t work

  • Compilers

    • one use case - compile a program

  • Despeckler

    • one use case - remove speckles

  • No interaction

  • Complexity is caused by

    • input format

    • transformation

CS427


Summary

Summary

  • Use cases are useful, but not perfect

  • Many ways to write use cases

  • Big projects need big use cases

  • Use the simplest way you can!

CS427


Reading

Reading

  • Chapter 8 of Hamlet and Maybee

  • Either chapters 7, 9, and 16 of Kruchten or read about the planning game (the first part of 10, the first part of 11, and 15 of Beck, or maybe http://c2.com/cgi/wiki?PlanningGame)

CS427


  • Login