meeting -*- Outline -*- * Finding Primary Actors, Goals, and Use Cases (Larman, 6.9) ------------------------------------------ BASIC STEPS IN REQUIREMENTS ANALYSIS - Choose system boundary. - Identify the primary actors. - For each, identify their user goals. (Highest that is an EBP-level goal.) - ------------------------------------------ ... Define these cases that satisfy the user goals. ** choose the system boundary Q: what is the system boundary for the POS system? ** identify the primary actors it's it's best to brainstorm to try to identify the primary actors and their goals, sometimes they reveal each other. actors can be computer systems also Q: who are the primary actors in the POS system? ------------------------------------------ CHECKLIST TO HELP FIND ACTORS AND GOALS - who starts and stops the system? - who does user and security management? - is there a monitoring process that restarts the system if it fails? - how are software updates handled? - who does system administration? - does the system do something in response to a time event? - who evaluates system activity or performance? - who evaluates logs? ------------------------------------------ think about each of these for the POS system suggestion: be suspicious if no primary actors are external computer systems *** actor-goal list There can be a section in the vision artifact that lists the actors and their goals. Try to do that for the POS system, compare to EBP guidelines Actor Goal ================ Cashier process sales process rentals handle returns cash in cash out ... Manager start up ... Note that the actors and goals depend on the system boundary. For example, customers are not actors because they don't directly interact with the POS system. *** event analysis this is another way to find the answers and their goals. The basic idea is to list the external events, and ask where they come from, and why. For example, external event from actor goal ================================================ select synchronization user synchronize with partner remote computer Q: What would be some external events for the POS system? enter payment cashier process a sale *** define use cases After the actors and their EBP-level goals have been identified, define when used case for each goal. Name the use case similar to the user goal, starting with a verb. ------------------------------------------ CRUD CRUD = Common to collapse these goals into one use case: Manage e.g., Manage User ------------------------------------------ ... Create, Retrieve, Update, Delete