activity diagrams and use cases.ppt€¦ · activity diagrams and use cases and business...

24
® IBM Software Group Activity Diagrams and Use Cases and Business Requirements, Oh My! Susan Burk © 2006 IBM Corporation Susan Burk Senior Managing Consultant IBM Rational Software [email protected]

Upload: others

Post on 07-Oct-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

®

IBM Software Group

Activity Diagrams and Use Cases and Business Requirements, Oh My!

Susan Burk

© 2006 IBM Corporation

Susan BurkSenior Managing ConsultantIBMRational [email protected]

Page 2: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Agenda

� Objectives

� What is activity diagramming?

� When should activity diagrams be used?

� What is a use case?

� How to use activity diagrams to find use cases

2

� How to use activity diagrams to find use cases

� When to use activity diagrams vs. use cases

� What about detailed business requirements?

Page 3: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Objectives

� Gain awareness of activity diagramming and use case

definition techniques

� Gain awareness of how these techniques work separately

and together in support of business analysis.

� Understand the value of working with these techniques in a

collaborative environment

3

collaborative environment

� Recognize that detailed requirements are not optimally

gathered “upfront”

Page 4: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Toy Store Case Study

4

Page 5: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

What is activity diagramming?

� Activity Diagramming or Business Processing Mapping or Modeling is a well

established technique for defining current and future state business processes

where work is routed between people to meet a business need.

�RUP/UML name for these diagrams is Activity Diagrams

� Each activity diagram is a visual representation of business workflow in response

to a business event

� Illustrates the business process by showing the interactions between people and

5

� Illustrates the business process by showing the interactions between people and

organizations

� Primary use is to identify opportunities for business improvement and optimize

business processes.

�A key tool for Six Sigma and Lean approaches for business process improvement

� Is occasionally used to illustrate interactions between people and systems

� When taken together, a group of business process models for a business area

aids in defining or confirming the scope of that area.

Page 6: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Terminology for Activity Diagramming

� An SwimlaneSwimlaneSwimlaneSwimlane is used to represent the role of someone

or something internal or external to a boundary.

6

� Standard flowchart symbols are used to represent

activities, decisions, flow etc.

Page 7: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Sample Activity Diagram

7

Page 8: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Another Sample with more automation…

8

Page 9: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Why draw activity diagrams?

� Activity diagrams enables clear discussions about what is in

or out of scope for one business process at a time

� Well-accepted by most groups – most people “get it”

� Easy to follow

9

� Easy to follow

� Effective and efficient thought-aid – can usually do one

diagram in one to three hours.

� Excellent for getting group consensus on what does happen

or what should happen.

Page 10: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

How to draw activity diagrams

� This is a list of general techniques used to build an activity diagram for current

state. Additional steps are required to build these diagrams using Six Sigma and

Lean.

�Name the Diagram

�Identify and Define Actors (roles)

�“Begin with the end in mind”

�Start at the beginning

10

�Start at the beginning

�Identify steps from beginning to end

� Flag hotspots

� Flag – but do not detail – business exceptions

�Determine how to handle business exceptions

�If time permits, create a wishlist for reduction or removal of hotspots

� For future state, optionally flag the benefits of one or more steps (instead of

hotspots, which should – hopefully – be removed).

� Activity Diagramming is – ideally – a “team sport”

Page 11: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

When should activity diagrams be used?� Does your project have all of these characteristics?

�The boundary includes direct interactions between people and

optionally includes one or more systems,

�The sequence in which activities occur is very important to scoping

discussions right from the start of the project.

�A number of stakeholders have differing understandings and/or

objectives for the scope …and/or….

11

objectives for the scope …and/or….

�Teams where there are many “picture-thinkers”

�Projects using Six-Sigma, Lean or other business modeling

methodologies

� Hint: The diagram does not have to be “perfect” ; it is a

starting point for thinking about a project

� What happens over time as the project changes?

�Update the diagram…or not?

Page 12: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

What is a use case?� Use Case - A sequence of actions

performed to yield a result of observable

business value

�Can be described in text, pictures or

both

� Use case are business-event sized:

�sequenced bundles of business-

acceptance-testable functionalityUse Case 2

Use case 1

Use Case Model

Use case 2

Actor C

Actor A

12

acceptance-testable functionality

� Finding use cases helps us:

�Plan

�Estimate

�Analyze and Architect

�Design

�Test

� Finding and detailing use cases is also –

ideally – a “team sport”

Use Case 2

Specification Use case 3

Actor B

Page 13: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Use CaseModel for the Toy Storebased onContextDiagram(not complete)

13

Page 14: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Example of a Simple Use CaseThe Toy Store

Use-Case: Issue Duplicate Receipt Brief Description Provide a duplicate copy of a receipt to a customer Actors

Customer Assumptions:

Requests for duplicate receipts and the issuance of a duplicate receipt are not logged or counted. Preconditions

Customer exists Post-conditions

14 14

Post-conditions

None Basic Flow of Events 1. Confirm customer is active.

a. Alternative: Customer is not active.

2. Find purchase for customer based on customer name and date of purchase.

a. Alternative: Purchase not found.

b. Alternative: Purchase was backordered.

3. Create a copy of the receipt.

4. Based on mailing preferences, send the copy of the receipt to the customer.

Alternative Flows Customer is not active: Continue the use case. Purchase not found: Inform customer and end the use case. Purchase is backordered: Inform the customer that order fulfillment is still in

progress and end the use case.

Page 15: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

A more complexuse case(1 of 3)

15

Page 16: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

A more complexuse case(2 of 3)

16

Page 17: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

A more complexuse case(3 of 3)

17

Page 18: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Finding use cases on activity diagrams

� Each action in the one swim lane that best represents the

project boundary is either a use case or a piece of a use case

� If the actions in that swimlane must be done together, they

are part of one use case

� Any action within that swimlane which provides business

18

� Any action within that swimlane which provides business

value in and of itself is a candidate use case

�If the project boundary covers more than one swimlane, the

use cases can be found within the swimlanes within the

boundary using the same thought process as for a project

whose boundary is one swimlane wide.

� Ideally, finding use cases is a “team sport”

Page 19: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Sample Activity Diagram with encircled use case

19

A very small use case…(system is an electronic filing cabinet..)

Page 20: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

The project boundary has expanded How many use cases are there in this version?Depending on the business needs, there are 2 or 3…or 1…

20

Page 21: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

How many use cases are there in this version?Depending on the business needs, there are 2 or 3…or 1…

21

Page 22: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

Other ways to find use cases:

� Work with context diagrams

� Work with lists

�List of Lifecycle events for a Business Concept

� The “lifecycle” of a Toy from the time it arrives at the Toy Store until it

leaves or returns or…

� Each item on the list is a use case or a piece of a use case

22

� Each item on the list is a use case or a piece of a use case

�List of high-level business-acceptance-testable activities

� Each item on the list is a use case or a piece of a use case

� Bottom line: There are lots of ways to find use cases

�Use the technique which communicates best for your team

� Best practice: Find a way to take a very high-level view while

identifying the use cases.

Page 23: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

When to use activity diagrams vs. use cases

� Activity Diagrams are an important tool whenever business

workflow is important

� Ultimately, use cases usually provide the authoritative view of

the bunches of requirements, especially when their scope is

automation of business activities.

23

� Picture thinkers vs. text thinkers

� May need both techniques for some teams, but try to

avoid redundancy

� When an activity diagram gets very detailed, it may be

time to switch to text.

Page 24: Activity Diagrams and Use Cases.ppt€¦ · Activity Diagrams and Use Cases and Business Requirements, Oh My! ... The sequence in which activities occur is very important to scoping

IBM Software Group | Rational software

What about “detailed requirements”?� They are still needed!

�Many will be surfaced during use case analysis (each use case contains one or more requirements)

�Others will be surfaced later

� When working with use cases, it’s not necessary to start with a

“requirements document”.

�The use case approach changes

24

�The use case approach changes

� When Detailed business requirements are needed

� How they are organized.

�By not doing the detailed requirements document first thing, the project focus is

more on the business need instead of a software solution.

� When a separate requirements document is mandated, all of the use

cases must be mapped back to the requirements (use case vs.

requirements matrix)