Unformatted text preview:

R R R Use Cases and Scenarios CSE870 Advanced Software Engineeri 1 R R R We Will Cover What is a use case Use case versus user interaction Use Case diagrams The constructs in the use case diagrams Capturing the use case High level use case Extended use case Difference between use case and scenario CSE870 Advanced Software Engineeri 2 R R R What is a Use Case A use case captures some user visible function This may be a large or small function Depends on the level of detail in your modeling effort A use case achieves a discrete goal for the user Examples Format a document Request an elevator How are the use cases found captured or elicited CSE870 Advanced Software Engineeri 3 User Goals versus User Interactions R R R Consider the following when formatting a document Define a style Change a style Copy a style from one document to the next versus Format a document Ensure consistent formatting of two documents The latter is a user goal Something the user wants to achieve The former are user interactions Things the user does to the system to achieve the goal CSE870 Advanced Software Engineeri 4 R R R Goals and Interactions There is a place for both goals and interactions Understand what the system shall do Capture the user goals Understand how the user will achieve the goals Capture user interactions Sequences of user interactions Thus start with the user goals and then refine the user goals into several many user interactions CSE870 Advanced Software Engineeri 5 R R R Point of Sale Terminal POST Computerized system to record sales and handle payments Typically used in a retail store Includes HW components such as computer and bar code scanner Software to run the system Goals of system Increase checkout automation fast and accurate sales analysis automatic inventory control CSE870 Advanced Software Engineeri 6 R R R Use Case Diagrams POST POST Point of Sale Terminal Use Case System Boundary POST Buy Item Log In Cashier Customer Refund a Purchased Item Adapted from Larman Applying UML and Patterns CSE870 Advanced Software Engineeri 7 Another Example R R R Financial Trading System Set Limits Update Accounts Trading Manager Accounting System Analyze Risk includes Valuation includes Price Deal Trader Capture Deal extends Adapted from Fowler UML Distilled Salesperson Limit Exceeded CSE870 Advanced Software Engineeri 8 Includes Uses R R R You have a piece of behavior that is similar across many use cases Break this out as a separate use case and let the other ones include it Examples include Valuation Validate user interaction Sanity check on sensor inputs Check for proper authorization CSE870 Advanced Software Engineeri 10 R R R Extends A use case is similar to another one but does a little bit more Put the normal behavior in one use case and the exceptional behavior somewhere else Capture the normal behavior Try to figure out what can go wrong in each step Capture the exceptional cases in separate usecases Makes it much easier to understand CSE870 Advanced Software Engineeri 11 R R R Setting the System Boundary The system boundary will affect your actors and use cases POST Buy Item Log In Cashier Customer Refund a Purchased Item Adapted from Larman Applying UML and Patterns CSE870 Advanced Software Engineeri 12 R R R A Different Boundary Let us view the whole store as our system Store Buy Item Refund a Purchased Item Customer Adapted from Larman Applying UML and Patterns CSE870 Advanced Software Engineeri 13 Partial POST R R R PO ST B u y Ite m L o g In C a s h ie r C u s to m e r R e fu n d a P u rc h a s e d Ite m S ta rt U p M anager M a n a g e U s e rs S y s t e m A d m in is t r a t o r A n d a L o t M o re M H Adapted from Larman Applying UML and Patterns CSE870 Advanced Software Engineeri 14 R R R Use case Actors Type Description POST Use Case Buy Item Customer initiator Cashier Primary The Customer arrives at the checkout with items to purchase The Cashier records the purchase items and collects a payment On completion the Customer leaves with the items CSE870 Advanced Software Engineeri 15 R R R Use case Actors Type Description Cross Ref Use Cases POST Expanded Use Case Buy Item Customer initiator Cashier Primary and essential The Customer arrives at the checkout with items to purchase The Cashier records the purchase items and collects a payment On completion the Customer leaves with the items Requirements XX YY and ZZ Cashier must have completed the Log In use case CSE870 Advanced Software Engineeri 16 The Home Heating System R R R Water Valve Water Pump Hot Water Home Controller Burner Fuel Valve 90 80 70 Fuel Off On 60 50 Control Panel Temp Sensor CSE870 Advanced Software Engineeri 17 R R R Home Heating Use Case Diagram Home Heating Power Up Power Down Home Owner Change Temp CSE870 Advanced Software Engineeri 18 R R R Home Heating Use Cases Use case Actors Type Description Cross Ref Use Cases Power Up Home Owner initiator Primary and essential The Home Owner turns the power on Each room is temperature checked If a room is below the the desired temperature the valve for the room is opened the water pump started the fuel valve opened and the burner ignited If the temperature in all rooms is above the desired temperature no actions are taken Requirements XX YY and ZZ None CSE870 Advanced Software Engineeri 19 R R R Modified Home Heating Home Heating Temp High Power Up includes includes Power Down Adjust Temp includes Home Owner includes Change Temp Temp Low MH CSE870 Advanced Software Engineeri 20 R R R HACS Homework assignment and collection are an integral part of any educational system Today this task is performed manually What we want the homework assignment distribution and collection system HACS for short to do is to automate this process HACS will be used by the instructor to distribute the homework assignments review the students solutions distribute suggested solution and distribute student grades on each assignment HACS shall also help the students by automatically distributing the assignments to the students provide a facility where the students can submit their solutions remind the students when an assignment is almost due remind the students when an assignment is overdue CSE870 Advanced Software Engineeri 21 HACS Use Case Diagram R R R HACS C o n fig u r e H A C S D is tr ib u te A s ig n m e n ts R e m in d S tu d e n t G e t A s s ig n m e n t S y s te m A d m in P o s t S o lu tio n s S u b m it A s s ig n m e n t S tu d e n …


View Full Document

MSU CSE 870 - Use Cases and Scenarios

Documents in this Course
HW2

HW2

3 pages

splc1

splc1

21 pages

Lessons

Lessons

3 pages

revision

revision

13 pages

ft1

ft1

12 pages

john.dsn

john.dsn

21 pages

Survey

Survey

2 pages

revision

revision

38 pages

Load more
Download Use Cases and Scenarios
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Use Cases and Scenarios and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Use Cases and Scenarios 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?