44
Use Cases Promises A Lot!

10 models to supplement use cases

Embed Size (px)

DESCRIPTION

Use Cases are not enough to specify requirements. You need to supplement them with other models and documents. This is my list of models to supplement a use case. By Andreas Hägglund Feel free to use the presentation when you give me credit. http://se.linkedin.com/in/andreashagglund http://www.systemvaruhuset.net http://www.systemvaruhuset.se

Citation preview

Page 1: 10 models to supplement use cases

Use Cases Promises A Lot!

Page 2: 10 models to supplement use cases

No More Misunderstandings!

Page 3: 10 models to supplement use cases

Client Commitment!

Page 4: 10 models to supplement use cases

Filled With Information

Page 5: 10 models to supplement use cases

In Theory…

Complete

Page 6: 10 models to supplement use cases

In practice…

Give no details

Give no sequence

Give only parts of the requirements

”Use case diagrams are very close to useless ” - Martin Fowler

Use lots of words that can be

misunderstood

Page 7: 10 models to supplement use cases

Use Cases Alone Aren't the

Answer to Everything

Page 8: 10 models to supplement use cases

This Is My List Of Models To

Supplement A Use Case

Page 9: 10 models to supplement use cases

The Meaning of Words

Abstract Concepts

Signs (Words, Icons, Sounds)

”Tri:”

Real World Objects

The Semiotic Triangle

Page 10: 10 models to supplement use cases

Words refer to abstract concepts in our minds that

refer to the ”real world objects” we experience

What you consider a fast vehicle depends on your

previous experiences and your context

Page 11: 10 models to supplement use cases

The Glossary

The Glossary defines terms used so that we all

get the same ”picture”

Page 12: 10 models to supplement use cases

Example of Glossary

Class diagram and entity models can be used to

define terms in a glossary

Is it?

Or?

Uses Customer Product

Pays for Customer Product

Page 13: 10 models to supplement use cases

2. Navigating the Use Case

A Use Case with lots of Alternatives and

Exceptions may turn into a Labyrinth!

Page 14: 10 models to supplement use cases

The flow chart

A flow chart creates an overview

and makes a use case easier to navigate

Page 15: 10 models to supplement use cases

Example of Flow Chart

Page 16: 10 models to supplement use cases

The Use Case Sequence

A Use Case Diagram does

not tell you in which order

you do things

Bake Pizza

Sell Pizza

Settle payment

Page 17: 10 models to supplement use cases

The Business Process Do…

The Business Process Model helps putting the

use cases in perspective and in sequence

They facilitate understanding the businesses

priorities

Page 18: 10 models to supplement use cases

3. The Business Process Model

Page 19: 10 models to supplement use cases

3. The Business Process Model

Who

When

Use Case 2 Use Case 1

Page 20: 10 models to supplement use cases

4. Role to Actor Map

Everybody wants to be Arnold!

Page 21: 10 models to supplement use cases

4. Role to Actor Map

Not everyody is…

Page 22: 10 models to supplement use cases

4. Role to Actor Map

Actors are not organizational roles!

They are entities that interact with

the system

Page 23: 10 models to supplement use cases

4. Role to Actor Map

One Organizational Role can translate to many

Actors…

One Actor can translate to many

Organizational Roles…

Page 24: 10 models to supplement use cases

4. Role to Actor Map

<<Organizational Role>>

CEO

<<Organizational Role>>

CEO Secretary

<<Organizational Role>>

Marketing Analyst

<<trace>>

<<trace>>

<<trace>>

Page 25: 10 models to supplement use cases

Which Is Our Goal?

Page 26: 10 models to supplement use cases

Which Is Our Goal?

The Goal Model helps making sure that everyone

is working in the same direction and is used to

prioritize and discard requirements

Page 27: 10 models to supplement use cases

5. The Goal Model

Class diagram and entity models can be used to

create a goal model

Leads to <<Goal>>

Low Costs <<Goal>>

Large Profit

Leads to <<Problem>>

Sad Customers <<Goal>>

High Prices

Leads to

Page 28: 10 models to supplement use cases

Part of the Picture

A use Case only gives

part of the picture

Create and assign issue

Close Issue

Schedule issue

Estimate issue

Resolve issue

Verify solution

Put issue on hold

Page 29: 10 models to supplement use cases

A More Complete Picture

Created

Assigned

Estimated Scheduled Resolved

On Hold

Verified

Closed

Page 30: 10 models to supplement use cases

6. The State Chart

A State Chart shows the life cycle of one object

cross cutting several use cases, giving you a

more comprehensive view

Page 31: 10 models to supplement use cases

Structural Business Rules

Constraints we put on the information we store

Page 32: 10 models to supplement use cases

Structural Business Rules

Class diagram and entity models can be used to

define structural business rules

Can we register people who has not yet bought

anything?

0..* Customer Product

Has bought

1..* Customer Product

Has bought

Page 33: 10 models to supplement use cases

8. Generic requirements

Requirements that affect more than one use

case, often quality attributes

Page 34: 10 models to supplement use cases

8. The system generic requirements

<<Performance Requirement>>

95% of pages must respond in 8 seconds or less

(Sub)system

Page 35: 10 models to supplement use cases

Business Rules

If

Sweden wins against Norway at the same time

that Denmark looses against Canada and

Norway wins against Russia

or

if Sweden wins against Norway and Denmark

then

Sweden will become world champions in ice

hockey!

Page 36: 10 models to supplement use cases

9. The Business Rules

Sweden is world champion

Or

And

Sweden beat Norway

And

Canada beat Denmark

Norway beat Russia

if

then

if if

Sweden beats Denmark

if

If

Sweden wins against Norway at the same time that

Denmark looses against Canada and Norway wins

against Russia

or

if Sweden wins against Norway and Denmark

then Sweden will become world champions in ice

hockey!

Page 37: 10 models to supplement use cases

Where do we find the function?

Page 38: 10 models to supplement use cases

Navigation Map

Start

Buy Admin Analyze Register

Search Product

Place Order

Cancel Pay

Page 39: 10 models to supplement use cases

10. Navigation Map

The Navigation Map shows how the user can

navigate between functions

Page 40: 10 models to supplement use cases

Modeling Languages

1. Glossary – UML Class Diagram

2. Flow Chart – UML Activity Diagram

3. Business Process Model – BPMN Diagram*

4. Role Actor Map – UML Class Diagram

5. Goal Model – UML Class Diagram

6. Life Cycle – UML State Diagram

7. Structural Business Rules – UML Class Diagram

8. Generic Requirements – SysML Requirements Diagram**

9. Business Rules – UML Composite Structure Diagram

10. Navigation Map – UML Class Diagram

* Can also use UML Activity Diagram ** Can also use UML Class Diagram

Page 41: 10 models to supplement use cases

Where are we now?

Page 42: 10 models to supplement use cases

Where are we now?

Complete

Page 43: 10 models to supplement use cases

Wedding rings; Jeff Belmonte from Cuiabá, Brazil (http://commons.wikimedia.org/wiki/File:Wedding_rings.jpg)

Boxing gloves; Karnaz (http://commons.wikimedia.org/wiki/File:Osaka_Fight_Gear_Muay_Thai_Gloves.jpg)

42; by Patrick Hoesly (http://www.flickr.com/photos/zooboing/3283020161/sizes/o/in/photostream/)

Sarah Palin Debate Flow Chart (http://adennak.com/blog/wordpress/2008/10/moosehunter/)

Pizza process by Tharanga Jalathge (http://creately.com/diagram/example/h5ulaq521/Pizza+Delivery+Process)

Goals by Jurgen Appelo (http://www.flickr.com/photos/jurgenappelo/5201843170/sizes/o/in/photostream/)

Image Credits

Page 44: 10 models to supplement use cases

10 models to supplement

your use cases

By Andreas Hägglund

http://www.linkedin.com/in/andreashagglund

Corporate website: http://www.systemvaruhuset.se/

Personal website: http://www.systemvaruhuset.net/

10 models to supplement your use cases © Andreas Hägglund, Systemvaruhuset June 10, 2013