Академический Документы
Профессиональный Документы
Культура Документы
• Use Cases describe WHAT the system will do, • Books can be issued to both the Students and Faculty.
but never describe HOW it will be done. Journals can only be issued to the Faculty.
1
How Do We Develop the Use
Example….
Case Model ?
• We need to automate these tasks • A Simple Use Case Recipe
2
Stories Example (casual format)
• Using a system to meet a goal; e.g. Handle Returns
(brief format) --
Main Success Scenario: A customer arrives at a checkout with
items to return. The cashier uses the POS system to record
Process Sale: A customer arrives at a checkout with items each returned item…
to purchase. The cashier uses the POS system to record
each purchased item. The system presents a running Alternate Scenarios :
Total and line-item details. The customer enters payment
information, which the system validates and records. The If they paid by credit, and the reimbursement transaction to
system updates inventory. The customer receives a their credit account is rejected, inform the customer and pay
them with cash.
Receipt from the system and then leaves with the items.
If the item identifier is not found in the system, notify the
cashier and suggest manual entry of the identifier code
Usually, writing the stories is more important than
diagramming a use case model in UML If the system detects failure to communicate with the external
accounting system… (etc.)
Details…[3]
Details…[4]
• Extensions (Alternative Flows)
– Scenario branches (success/failure) • Technology & Data Variations
– Longer/more complex than basic flow – Non-functional constraints expressed by the
– Branches indicated by letter following basic stakeholders
flow step number, e.g. “3a” (e.g., “must support a card reader”)
– Two parts: condition, handling
• Special Requirements
– Non-functional considerations (e.g.,
performance expectations)
3
Goals & Scope of Use Case EBP Guideline
• What is a proper, valid use case ?
Granularity level For requirement analysis for a computer
application focus on use case at the
• For Course registration application which elementary business process (EBP)
one of the following is a proper use case
– Verify password Now what does this French means ?
– log in
– Add a course
4
Finding Actors, Goals and Use
Essential Vs. Concrete Style
Cases
• Try to write use case in the essential user • Choose the system boundary
interface free style. i.e. do not commit to • Identify the primary actors
the user interface details. E.g user will • For each primary actor identify the goals
provide pswd Vs. user will provide pswd in and raise it to a user goal level.
the dialogue box. • Define use cases that satisfy user goal.
this will be a use case
• What we do practically ? • Note (Sometimes a use case leads to
identification of an actor)
• Who gives inputs get outputs? External Event From Actor Goal
• Who starts & stops the system? Enter sale line Cashier Process Sale
• Who does user management and item
security?
• Who evaluates system logs, performance?
• Who does system administration?
• Is time an actor?
Actor-Goal List
More Guidelines Actor Goal
5
Actors, Goals & Boundaries
Use Case
Diagram
6
UP Artifacts and Timing Influence of Artifacts
On Each Other
[Larman, 2002]
7
References
• Craig Larman
• SW Engineering for IT Course at CMU
Questions
and
Discussion