Webinar: The Use Case Study An Overview


Published on

RequirementOne CEO Martin Gorm Pedersen talks about working with remote teams and how requirements management tools can help. For more information on project management software visit: http://www.requirementone.com/

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Webinar: The Use Case Study An Overview

  1. 1. The Use Case Technique: An OverviewSponsored by: Karl Wiegers Principal Consultant, Process Impact www.processimpact.com
  2. 2. Sponsor: RequirementOne Save time. Capture use cases quickly in intuitive Word format and accurately with all attributes in one central location Quick to implement. Less than 2 minutes to create account + add first requirementFree 30 day trialCloud based platform WEBINAR EXCLUSIVE… Sign up by 1st August & get an hour$45/project/month with a requirements expert to makeUnlimited users sure your first paid project is a success! Visit www.requirementone.com to get your session. 2
  3. 3. Featured Speaker Karl Wiegers Principal Consultant, Process Impact www.processimpact.com Phone #: 503-698-9620 E-mail: karl@processimpact.com Blog: Consulting Tips & Tricks Blog: www.karlconsulting.blogspot.com Downloadable Process Goodies: www.processimpact.com/goodies.shtml 3Sponsored By
  4. 4. Source Books Software Requirements,2nd Ed., by Karl E. Wiegers (Microsoft Press, 2003) More about Software Requirements, by Karl E. Wiegers (Microsoft Press, 2006) Use Cases: Requirements in Context, 2nd Ed., by Daryl Kulak and Eamonn Guiney (Addison-Wesley, 2003) 4Sponsored By
  5. 5. Agenda Use cases defined Benefits of the use case approach User classes and actors Scenarios and use cases Use case elicitation workshops Elements of a use case Use cases and functional requirements 5Sponsored By
  6. 6. Three Levels of Software Requirements Business Requirements Vision and Scope Document Business Rules User Requirements Quality Attributes Use Case Document External Interfaces Functional Requirements Constraints Software Requirements Specification 6Sponsored By
  7. 7. Eliciting Requirements Through Use Cases Use cases came from object-oriented world, apply to general requirements analysis. Provides a method to capture user requirements. Focus on actual, but abstracted, usage scenarios. Ask users: “Describe a goal you wish to accomplish with the system.” not: “What do you want the system to do?” Explore sequences of ‘actor’ actions and system responses. Derive functional requirements and tests from use cases. 7Sponsored By
  8. 8. What Use Cases Are and Are Not Definition: A description of a set of interaction sequences that a system performs to provide a result of observable or measurable value to one or more actors. Use cases describe: user goals the user’s view of the system a set of task-related activities Use cases do not describe: user interface designs technology solutions application architecture 8Sponsored By
  9. 9. Benefits from the Use Case Approach User-centric: user’s terminology is applied Task-centric: reveals requirements to get work done Helps analysts understand application domain Helps avoid building unnecessary functionality Permits early drafting of functional tests Helps set implementation priorities on functional requirements 9Sponsored By
  10. 10. Appropriate Use Case Applications Use cases work well for: end-user applications web sites devices with which users must interact Use cases aren’t as valuable for: batch processes computationally-intensive systems event-driven real-time systems 10Sponsored By
  11. 11. Examples of Use Cases Intuit QuickBooks “activities”: Write a Check Create an Invoice Enter Credit Card Charge Receive Payment Amazon.com options for an accepted order: Check Order Status Change Shipping Options Cancel Unshipped Items Track Package Buy a product online: Search Catalog Place Item in Shopping Cart Pay for Items in Shopping Cart 11Sponsored By
  12. 12. Naming Use Cases Name properties: reflect the actor’s goal from the actor’s perspective describe a valuable transaction Hi! My name is: be general enough to cover related scenarios Form: active verb + object “Generate Usage Report,” not “Usage Report Generation” use strong verbs and specific nouns Good Examples: Not So Good Examples: Reserve Rental Car Enter PIN Print Invoice Submit Form 37 Check Flight Status Process Deposit 12Sponsored By
  13. 13. User Classes and Actors User Classes: Distinct communities of users for the product. Actors: Entities outside the system that interact with it for the purpose of completing an event. User Classes Actors Account Owner Bank Customer Loan Applicant Depositor Chemist Technician Chemical Stockroom Staff Requester Lab Manager 13Sponsored By
  14. 14. Scenarios and Use Cases - 1 A scenario is: one specific path through a use case, or a story about a specific instance of a use case execution, perhaps with actual users identified and specific data Each use case typically includes multiple scenarios. could be successful or could be failure modes 14Sponsored By
  15. 15. Scenarios and Use Cases - 2 More Abstract Prepare a mailing label Prepare a mailing label to send a package by second- day UPS. Chris wants to send a 2.5-pound package by Less second-day UPS from Portland, OR, to Rochester,Abstract NY. She wants it insured for $75 and she wants a return receipt. The package is marked fragile. 15Sponsored By
  16. 16. Use Case Elicitation Workshop Use Case: View an order. Actor: Requester Frequency: 5/user/day Preconditions: system contains orders; user’s identity is verified Postconditions: order has been shown Actor Actions System Responses user enters order display order number he wants details to view user enters order error message: number, but it order number doesn’t exist not found etc. for all normal and exception pathways 16Sponsored By
  17. 17. Products from Use Case Analysis Draft SRS Verified SRS Draft Tests Verified Shared Models Vision Use Case Use Case Draft ModelsWorkshops Descriptions Business Rules Data Dictionary 17 Sponsored By
  18. 18. Use Case Template Use Case ID: Use Case Name: Created By: Last Updated By: Date Created: Date Last Updated: Actors: Description: Trigger: Preconditions: Postconditions: Normal Flow: Alternative Flows: Exceptions: Includes: Priority: Frequency of Use: Business Rules: Special Requirements: Assumptions: Notes and Issues: 18Sponsored By
  19. 19. Sample Use Case for an ATM - 1Name: Withdraw CashActor: Account OwnerDescription: The user withdraws a specific amount of cash from a specified account.Trigger: Account Owner selects Withdrawal action.Preconditions: 1. The Account Owner is logged in to the ATM. 2. The Account Owner has at least one account with a positive balance. 3. The ATM contains cash.Postconditions: 1. The requested amount of cash has been dispensed. 2. The account balance is reduced by the amount withdrawn plus any fees. 3. The ATM cash balance is reduced by the amount withdrawn.Priority: High 19 Sponsored By
  20. 20. Sample Use Case for an ATM - 2 Normal Flow: 1. System displays user’s accounts. 2. Account Owner selects desired account. 3. System asks user to choose amount to withdraw from a list. 4. Account Owner chooses amount to withdraw. 5. System dispenses cash. 6. Account Owner removes cash from dispenser. 20Sponsored By
  21. 21. Sample Use Case for an ATM - 3Alternative Flows: at step 3, actor can choose to enter a custom amount describe where the branch takes place, what happens, and where the alternative flow rejoins the main flowExceptions: amount is not a multiple of $20 amount exceeds daily withdrawal limit amount exceeds account balance amount exceeds cash available in ATM indicate the step number where the exception could take place and how the system handles it 21Sponsored By
  22. 22. Use Cases and Functional Requirements - 1 Two schools of thought: Use cases are the functional requirements. Use cases reveal the functional requirements. User View Developer View Use Cases Functional Requirements 22 Sponsored By
  23. 23. Use Cases and Functional Requirements - 2 Precondition “The system shall verify that the account is set up for ATM withdrawals.” Steps in Flow “The system shall display a list of standard withdrawal amounts. The user shall select one of these amounts or ‘Other’.” Postcondition “The system shall reduce the total cash remaining in the ATM by the amount of the withdrawal.” Business Rule “The system shall print the available balance on the receipt, unless the account is a business account.” 23 Sponsored By
  24. 24. Organizing Information: Use Case and SRS Use Case Organization SRS Organization Pre ~~~~~~~~~~~~ ~~~~~~~~~ ~~~~~~~~~ Normal ~~~~~~~~~~~~ Flow ~~~~~~~~~~~~ ~~~~~~~~~ A ~~~~~~~~~ ~~~~~~~~~ ~~~~~~~~~ ~~~~~~~~~ E ~~~~~~~~~ Post ~~~~~~~~~~~~ ~~~~~~~~~~~~ Rules ~~~~~~~~~~~~ ~~~~~~~~~~~~ Other 24Sponsored By
  25. 25. The Use Case Technique: An Overview NO SURPRISES! 25Sponsored By
  26. 26. Sponsor: RequirementOne Execute Karl’s recommendations TODAY! Get for your free 30 day trial www.requirementone.com Benefit from an hour with a requirements expert to make sure your next project goes like a dream! 26
  27. 27. Q&A 27Sponsored By