1. Trang chủ
  2. » Ngoại Ngữ

Use Case Examples.pdf

30 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Use Cases
Tác giả Craig Larman
Chuyên ngành Software Engineering
Thể loại Reference
Định dạng
Số trang 30
Dung lượng 1,01 MB

Nội dung

Actors, Scenarios, and Use CasesActor: entity that shows a behavior, e.g.: a person role, computer system, or organization Scenario: specific sequence of actions and interactions betw

Trang 1

Use Cases

Reference: Craig Larman, Applying UML and Patterns, Ch 6

Trang 3

Example: Point of Sale

1.Customer arrives at a checkout (+goods) 2.Cashier uses POS system to record items 3.System presents a running total and line-

item details 4.Customer enters payment information,

which the system validates and records 5.System updates inventory

6.Customer receives receipt from the system and leaves.

Trang 4

Actors, Scenarios, and Use Cases

Actor: entity that shows a behavior,

e.g.: a person (role), computer system, or organization

Scenario: specific sequence of actions and interactions

between actors and a system

use case instancesinge path of using the systeme.g., purchasing 10 items with cash (or even more detailed)

Use case: collection of related success & failure

scenarios that describe an actor using a system to

support a goal

Trang 5

Use Case Example with Scenarios (casual format)

UC Handle Returns

checkout with items to return The cashier uses the POS system to record each returned item …

Alternate Scenarios:

if the customer paid by credit

If the item identifier is not found in the system …

If the system detects failure to communicate with the external accounting system …

Trang 6

Use-Case Model

Set of all written use cases Model of the system’s functionality and environment

Unified Process (UP) defined artifact within the requirements discipline

UP also requires glossary.May optionally include a UML use case diagram

use cases, actors, and their relationshipscontext diagram

Trang 7

Three Kinds of Actors

Trang 8

Use Case FormatBrief

Succinct one-paragraph summaryusually the main success scenariodone during early requirements analysis should take only a couple of minutes

mainly done after many use cases are identified and during early requirements workshop for high-value and high-risk requirements (e.g., core architectural)

Trang 9

A Template for Fully Dressed Style

Use case name

•start with a verb

Stakeholders and interests

•who cares about this use case, and what do they want?

Preconditions

•what must be true on start, and worth telling the reader

Success guarantee (postcondition)

• what must be true on successful completion, and worth telling the reader

Main success scenario

•a typical, unconditional happy path scenario of success

Technology and data variations list

•varying I/O methods and date formats

Frequency of occurrence

Miscellaneous

Trang 10

Coffee Maker Example

Example of a “semi” fully dressed use case

CoffeeMaker

http://agile.csc.ncsu.edu/SEMaterials/tutorials/coffee_maker/

Trang 11

Template for a fully dressed use case

Trang 12

Write in an Essential Style (early phase)

Keep the user interface outFocus on actor intent

User’s intentions and system’s responsibilities rather than their concrete actions

Example

Manage Users:

1 Administrator identifies self.

2 System authenticates identity.Another is concrete style that embeds user interface decisions - avoid during early analysis

Example

1 Administrator enters ID and Password in a dialog box

Trang 13

Write Black-Box Use Cases

Focus on what the system must do,

i.e., the behavior or functional requirements

Not on how it will do (the design)

Examples:

Good: The system records the saleBad: The system writes the sale to the database Worse: System generates SQL INSERT statement for the sale

Trang 14

Take an Actor and Actor-Goal Perspective

Use case definition by Jacobson

A set of use-case instances, where each instance is

a sequence of actions a system performs that yields an observable result of value to a particular

actor [Jacobson]Write requirements focusing

 on the users/actors of a system,

 asking about their goals and typical situations

 and what they consider a valuable result

Trang 15

Actor-Goal List

Trang 16

One Column vs Two Column FormatTwo column emphasizes interaction

Trang 17

How to Find Use Cases?

Choose the system boundarywhat you are building?

who will be using the system?what else will be used that you are not building?Find primary actors and their goals

brainstorm the primary actors firstwho starts and stops the system?who gets notified when there are errors or failures?Define use cases that satisfy user goals

prepare an actor-goal list (and not actor-task list)in general, one use case for each user goal

name the use case similar to the user goal

Trang 18

What Tests Can Help Find Useful Use Cases?

Which of these are valid use cases?

Negotiate a Supplier Contract

Handle Returns

Log in

Move Piece on the Game Board

Trang 19

What Tests Can Help Find Useful Use Cases?

Which of these are valid use cases?

Negotiate a Supplier Contract

Handle Returns

Log in

Move Piece on the Game Board

All of these can be use cases at different levels,

depending on the system, boundary, actors, and goals

Trang 20

What Tests Can Help Find Useful Use Cases?

Rather than asking

”What is a valid use case?”More practical question:

“What is a useful level of focus to express use cases for application requirements analysis?”Rules of thumb

The Boss TestThe EBP TestThe size test

Trang 21

What Tests Can Help Find Useful Use Cases?

The boss test

“What have you been doing all day?”

Your reply “logging in!”

Is your boss happy? No value? No good use case!

The Elementary Business Process (EBP) test

a task performed by one person in one place at one time, in response to a business event, which adds measurable business value and leaves data in a consistent state

Good Examples: Approve Credit or Price OrderBad Examples: delete a line item or print the document

The size test

Just a single step in a sequence of others -> not good!

Trang 22

Applying Tests

Negotiate a supplier contract

Much broader than EBP, rather a business use case

Handle returns

OK with the Boss EBP Size is good.

Log in

Boss is not happy is this is all you do all day!

Move piece on game board

Single step – fails the size test.

Trang 23

Use Case (Context) Diagrams: Suggested Notation

Trang 24

Use Case Diagrams

Downplay diagramming, Keep it short and simpleFocus on text

Do not focus on use case relationships

Context diagram of the systemShows boundary

What lies outside of itHow it gets used

Should be done in conjunction with an actor-goal list

Trang 25

Alternative Actor Notation

Trang 26

Use Cases form Basis for Others

Trang 27

Use Cases in Iterative Development

Functional requirements are primarily captured in use cases

Use cases drive the iteration planning and workEasy for users to understand

Influence user manual/documentationFunctional or system testing corresponds to the scenarios of use cases

Independent of implementing technologyUI shortcuts for most common scenarios

Trang 28

More examples?

iTrust

http://agile.csc.ncsu.edu/iTrust/wiki/

doku.php

Trang 29

 Questions/Comments/Thoughts?

Trang 30

and Patterns - Larman and

www.craiglarman.com

Ngày đăng: 14/09/2024, 16:46

w