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
6. 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
8. This Is My List Of Models To
Supplement A Use Case
9. The Meaning of Words
Abstract Concepts
Signs
(Words, Icons, Sounds)
”Tri:”
Real World Objects
The Semiotic Triangle
10. 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
12. 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
13. 2. Navigating the Use Case
A Use Case with lots of Alternatives and
Exceptions may turn into a Labyrinth!
14. The flow chart
A flow chart creates
an overview
and makes a use case easier to navigate
16. The Use Case Sequence
A Use Case Diagram does
not tell you in which order
you do things
Bake Pizza
Sell Pizza
Settle payment
17. The Business Process Do…
The Business Process Model helps putting the
use cases in perspective and in sequence
They facilitate understanding the businesses
priorities
22. 4. Role to Actor Map
Actors are not organizational roles!
They are entities that interact with
the system
23. 4. Role to Actor Map
One Organizational Role can translate to many
Actors…
One Actor can translate to many
Organizational Roles…
24. 4. Role to Actor Map
<<Organizational Role>>
CEO
<<Organizational Role>>
CEO Secretary
<<Organizational Role>>
Marketing Analyst
<<trace>>
<<trace>>
<<trace>>
26. 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
27. 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
28. 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
29. A More Complete Picture
Created
Assigned
Estimated Scheduled Resolved
On Hold
Verified
Closed
30. 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
32. 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
34. 8. The system generic requirements
<<Performance Requirement>>
95% of pages must respond
in 8 seconds or less
(Sub)system
35. 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!
36. 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!
40. 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
43. 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