10 models to supplement use cases
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.seTRANSCRIPT
![Page 1: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/1.jpg)
Use Cases Promises A Lot!
![Page 2: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/2.jpg)
No More Misunderstandings!
![Page 3: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/3.jpg)
Client Commitment!
![Page 4: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/4.jpg)
Filled With Information
![Page 5: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/5.jpg)
In Theory…
Complete
![Page 6: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/6.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/7.jpg)
Use Cases Alone Aren't the
Answer to Everything
![Page 8: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/8.jpg)
This Is My List Of Models To
Supplement A Use Case
![Page 9: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/9.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/10.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/11.jpg)
The Glossary
The Glossary defines terms used so that we all
get the same ”picture”
![Page 12: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/12.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/13.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/14.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/15.jpg)
Example of Flow Chart
![Page 16: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/16.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/17.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/18.jpg)
3. The Business Process Model
![Page 19: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/19.jpg)
3. The Business Process Model
Who
When
Use Case 2 Use Case 1
![Page 20: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/20.jpg)
4. Role to Actor Map
Everybody wants to be Arnold!
![Page 21: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/21.jpg)
4. Role to Actor Map
Not everyody is…
![Page 22: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/22.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/23.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/24.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/25.jpg)
Which Is Our Goal?
![Page 26: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/26.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/27.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/28.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/29.jpg)
A More Complete Picture
Created
Assigned
Estimated Scheduled Resolved
On Hold
Verified
Closed
![Page 30: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/30.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/31.jpg)
Structural Business Rules
Constraints we put on the information we store
![Page 32: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/32.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/33.jpg)
8. Generic requirements
Requirements that affect more than one use
case, often quality attributes
![Page 34: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/34.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/35.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/36.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/37.jpg)
Where do we find the function?
![Page 38: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/38.jpg)
Navigation Map
Start
Buy Admin Analyze Register
Search Product
Place Order
Cancel Pay
![Page 39: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/39.jpg)
10. Navigation Map
The Navigation Map shows how the user can
navigate between functions
![Page 40: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/40.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/41.jpg)
Where are we now?
![Page 42: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/42.jpg)
Where are we now?
Complete
![Page 43: 10 models to supplement use cases](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/43.jpg)
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](https://reader034.vdocuments.us/reader034/viewer/2022052617/5480b00eb479595e578b473b/html5/thumbnails/44.jpg)
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