Pragmatic Use Case Writing

Similar documents
IBM Software Group. Mastering Requirements Management with Use Cases Module 6: Define the System

Quick Start Guide 7.0

PowerTeacher Gradebook User Guide PowerSchool Student Information System

SkillPort Quick Start Guide 7.0

SCT Banner Student Fee Assessment Training Workbook October 2005 Release 7.2

SCT Banner Financial Aid Needs Analysis Training Workbook January 2005 Release 7

The Enterprise Knowledge Portal: The Concept

PM tutor. Estimate Activity Durations Part 2. Presented by Dipo Tepede, PMP, SSBB, MBA. Empowering Excellence. Powered by POeT Solvers Limited

An Introduction to Simio for Beginners

PROCESS USE CASES: USE CASES IDENTIFICATION

K-12 PROFESSIONAL DEVELOPMENT

SEPERAC MEE QUICK REVIEW OUTLINE

Generating Test Cases From Use Cases

U of S Course Tools. Open CourseWare (OCW)

McGraw-Hill Connect and Create Built by Blackboard. Release Notes. Version 2.3 for Blackboard Learn 9.1

Radius STEM Readiness TM

Specification of the Verity Learning Companion and Self-Assessment Tool

Houghton Mifflin Online Assessment System Walkthrough Guide

Course Groups and Coordinator Courses MyLab and Mastering for Blackboard Learn

Welcome to the Purdue OWL. Where do I begin? General Strategies. Personalizing Proofreading

Cambridge NATIONALS. Creative imedia Level 1/2. UNIT R081 - Pre-Production Skills DELIVERY GUIDE

Dialogue Live Clientside

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

Ministry of Education, Republic of Palau Executive Summary

Activities, Exercises, Assignments Copyright 2009 Cem Kaner 1

Wide Open Access: Information Literacy within Resource Sharing

Online Marking of Essay-type Assignments

Measurement & Analysis in the Real World

The Wegwiezer. A case study on using video conferencing in a rural area

Unit purpose and aim. Level: 3 Sub-level: Unit 315 Credit value: 6 Guided learning hours: 50

Implementing a tool to Support KAOS-Beta Process Model Using EPF

License to Deliver FAQs: Everything DiSC Workplace Certification

English Language Arts Summative Assessment

OilSim. Talent Management and Retention in the Oil and Gas Industry. Global network of training centers and technical facilities

Kronos KnowledgePass TM

CAMP 4:4:3. Supplemental Tools

Intel-powered Classmate PC. SMART Response* Training Foils. Version 2.0

FUNDING GUIDELINES APPLICATION FORM BANKSETA Doctoral & Post-Doctoral Research Funding

Pod Assignment Guide

PeopleSoft Human Capital Management 9.2 (through Update Image 23) Hardware and Software Requirements

EOSC Governance Development Forum 4 May 2017 Per Öster

1 Use complex features of a word processing application to a given brief. 2 Create a complex document. 3 Collaborate on a complex document.

12-WEEK GRE STUDY PLAN

Intermediate Algebra

Texas Woman s University Libraries

D Road Maps 6. A Guide to Learning System Dynamics. System Dynamics in Education Project

MMOG Subscription Business Models: Table of Contents

BSP !!! Trainer s Manual. Sheldon Loman, Ph.D. Portland State University. M. Kathleen Strickland-Cohen, Ph.D. University of Oregon

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

HDR Presentation of Thesis Procedures pro-030 Version: 2.01

Adolescence and Young Adulthood / English Language Arts. Component 1: Content Knowledge SAMPLE ITEMS AND SCORING RUBRICS

Road Maps A Guide to Learning System Dynamics System Dynamics in Education Project

MGMT 479 (Hybrid) Strategic Management

EDIT 576 DL1 (2 credits) Mobile Learning and Applications Fall Semester 2014 August 25 October 12, 2014 Fully Online Course

Excel Formulas & Functions

Objects Identification in Object-Oriented Software Development - A Taxonomy and Survey on Techniques

Decision Analysis. Decision-Making Problem. Decision Analysis. Part 1 Decision Analysis and Decision Tables. Decision Analysis, Part 1

TA Script of Student Test Directions

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

A Context-Driven Use Case Creation Process for Specifying Automotive Driver Assistance Systems

TotalLMS. Getting Started with SumTotal: Learner Mode

Fountas-Pinnell Level P Informational Text

Youth Mental Health First Aid Instructor Application

Grade 3: Module 1: Unit 3: Lesson 5 Jigsaw Groups and Planning for Paragraph Writing about Waiting for the Biblioburro

Operational Knowledge Management: a way to manage competence

M55205-Mastering Microsoft Project 2016

Rule-based Expert Systems

AQUA: An Ontology-Driven Question Answering System

Introduction to CRC Cards

SURVIVING ON MARS WITH GEOGEBRA

MOODLE 2.0 GLOSSARY TUTORIALS

Visit us at:

Pile Driving Contractors Association and Pile Dynamics, Inc.

The Writing Process. The Academic Support Centre // September 2015

INTERMEDIATE ALGEBRA PRODUCT GUIDE

EDIT 576 (2 credits) Mobile Learning and Applications Fall Semester 2015 August 31 October 18, 2015 Fully Online Course

RES 9950 International Real Estate Spring Monday/Wednesday 7:30 8:45 pm Instructor: Michael H. Krupa

PROVIDING AND COMMUNICATING CLEAR LEARNING GOALS. Celebrating Success THE MARZANO COMPENDIUM OF INSTRUCTIONAL STRATEGIES

Essentials of Rapid elearning (REL) Design

Using the CU*BASE Member Survey

Guide for Test Takers with Disabilities

Leadership Guide. Homeowner Association Community Forestry Stewardship Project. Natural Resource Stewardship Workshop

Intellectual Property

A Strategic Plan for the Law Library. Washington and Lee University School of Law Introduction

Trip to the beach essay >>>CLICK HERE<<<

Digital Technology Merit Badge Workbook

CPS122 Lecture: Identifying Responsibilities; CRC Cards. 1. To show how to use CRC cards to identify objects and find responsibilities

Longman English Interactive

Renaissance Learning P.O. Box 8036 Wisconsin Rapids, WI (800)

CREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT

TIMSS ADVANCED 2015 USER GUIDE FOR THE INTERNATIONAL DATABASE. Pierre Foy

Field Experience Management 2011 Training Guides

Spring 2015 IET4451 Systems Simulation Course Syllabus for Traditional, Hybrid, and Online Classes

Lectora a Complete elearning Solution

Training Pack. Kaizen Focused Improvement Teams (F.I.T.)

Unit 7 Data analysis and design

CHANCERY SMS 5.0 STUDENT SCHEDULING

ETHICAL STANDARDS FOR EDUCATORS. Instructional Practices in Education and Training

Beyond the Blend: Optimizing the Use of your Learning Technologies. Bryan Chapman, Chapman Alliance

Prepared by: Tim Boileau

Transcription:

Pragmatic Use Case Writing Presented by: reducing risk. eliminating uncertainty. 13 Stonebriar Road Columbia, SC 29212 (803) 781-7628 www.evanetics.com Copyright 2006-2008 2000-2009 Evanetics, Inc. All Rights Reserved Page - 1

Student Manual Copyright 2000-2009 Evanetics, Inc. All rights reserved. Companies, names and data used in examples and exercises herein are fictitious unless otherwise noted. No part of these materials may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Evanetics, Inc. Product and company names mentioned herein are the trademarks or registered trademarks of their respective owners. Evanetics, Inc. is an Endorsed Education Provider with the International Institute of Business Analysis. This course has been approved to carry the IIBA logo. The IIBA logo is a trademark belonging to the International Institute of Business Analysis. This course was produced by: Gary K. Evans Evanetics, Inc. 13 Stonebriar Road Columbia, SC 29212 (voice) 803-781-7628 www.evanetics.com Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 2

Table of Contents 1 of 2 Course Introduction (pg. 5) Value in this Course Course Objectives Use Case Introduction (13) What is a Use Case? Where Do Use Cases Fit? What Will You Deliver? Use Case Examples (17) Business: Apply for Life Insurance Policy System: Withdraw Funds from ATM Group Discussion: Use Case Production Use Case Writing Miniature (21) The Writing Process in 5 slides Course Case Studies (27) Example Case Study Student Exercise Case Study Example: Identify Stakeholders & User Goals Exercise: Identify Stakeholders & User Goals Use Case Structure (33) Main Flow Exception Flows Group Discussion: Use Case Structure Exercise: Write a First Use Case Use Case Scope (41) Business Use Cases System Use Cases Business Actors and Use Cases (45) Business Use Case Model Business Actors Example Business Use Case System Actors and Use Cases (49) System Use Case Model System Actors Example System Use Case Group Discussion: Use Case Scope Use Case Style Topics (55) Essential Use Cases Design-detail Use Cases Style Guidelines for Use Cases Audience for Use Cases Group Discussion: Use Case Style Discovering Actors & Use Cases (63) Primary and Secondary Actors Business Actors and Use Cases System Actors and Use Cases Group Discussion: Actors & Use Cases Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 3

Table of Contents 2 of 2 The Use Case Diagram (73) Anatomy of the Use Case Diagram <<include>> Relationship <<extend>> Relationship Group Discussion: The Use Case Diagram The Process for Writing Use Cases (83) Identify Candidates & Scope Write the Main Flow Identify the Exception Flows Write the Behavior of each Exception Flow Identify Candidate Use Cases (87) Example Case Study Student Case Study Exercise Identify Use Case Scope (91) Example Case Study Student Case Study Exercise Identify Actors (95) Example Case Study Student Case Study Exercise Write the Main Flow (99) Example Case Study Student Case Study Exercise Identify the Exception Flows (103) Example Case Study Student Case Study Exercise Write the Exception Flow Behavior (107) Example Case Study Student Case Study Exercise Group Peer-Review Automated Actors (113) Pre- and Post-Conditions (117) Use Cases with Similar Steps (121) Writing Use Cases Doing It All Together (127) Student Exercise: Write a Complete Use Case Use Case Pitfalls (131) CRUD-Based Use Cases Use Case Normalization Steps as Use Cases Who Should Write Use Cases? (153) Wrapup (159) Appendix A (165) Top 10 Mistakes with Use Cases Appendix B (171) Use Cases for Enhancement Projects Use Cases for System-to-System Interaction Use Cases for System Ports Use Cases in Outsourced and Offshore Projects Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 4

Use Case Introduction Copyright 2006-2008 2000-2009 Evanetics, Inc. All Rights Reserved Page - 5

What is a Use Case? According to Alistair Cockburn 1 A use case is a contract among stakeholders, and a description of how the system under discussion responds to requests from the system s users According to the Rational Unified Process, a use case is a sequence of actions a system performs that yields an observable result of value to a particular actor. Rational Unified Process v7 A well-formed use case provides a user-centered perspective that is just not attainable with traditional, paragraph-style specifications. Use cases capture the process flow that is lacking in traditional, paragraphstyle requirements specifications A use case Is a written, textual document not a diagram Describes a business, or system, process which is visible to users» A use case captures behavioral requirements of a system Focuses on the interaction between the system and actors to meet a goal May describe both automated and non-automated aspects of the process Is intended to communicate process, not solution, to the stakeholders 1 Alistair Cockburn. Writing Effective Use Cases. Addison-Wesley, 2001. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 6

Where Do Use Cases Fit? Use cases capture those functional requirements which are visible to the system s actors (users) These are the behavioral requirements Business Requirements constrain Total System Requirements Use cases are only a portion of the system s total requirements Non-Functional Requirements Functional Requirements Use Cases Nutshell Summary: Use cases alone are not enough! Actors (users) Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 7

What Will You Deliver? Business Requirements Describe the business goals Business Vision Specification Business Use Cases Business Actors Business Requirements Requirements Identification Describe the system goals Software Requirements Specification Use Cases Actors Functional Requirements Non-Functional Requirements constrain + Our focus User Requirements Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 8

Use Case Examples Copyright 2006-2008 2000-2009 Evanetics, Inc. All Rights Reserved Page - 9

Use Case Examples Before we discuss the details of use cases, let s see some examples of What they look like What content they contain What they do not contain Your instructor will direct you to these examples in your course materials Apply for Life Insurance Policy (A business use case) Withdraw Funds from ATM (A system use case) Turn to page Ex-1 and Ex-2 to see these examples. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 10

Use Case Examples From these examples we can see that A use case is a textual form not a diagram It should not include» User Interface (UI) design elements» UI navigation (clicks, drag- n-drop, )» Data formats» Specification of internal algorithms or components It separates the scenarios where the sequence executes without deviation (main flow), from those scenarios (exception flows) where the system or business must attempt recovery, and may fail to recover It should describe what the system, or business, does to satisfy the users goals» It should not describe how these goals are met that is for design It should be written in brief, readable steps that make very clear who is acting i.e., the user, or the system or business Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 11

Group Discussion Use Case Production Organize into small groups of 2-3 people Discuss together these questions: Who is writing the use cases on your projects? How long are your use cases? Who is reading, or using, the use cases on your projects? Who validates your use cases? Do your use cases contain design or implementation content? How do your use cases differ from the examples we just reviewed? Is anyone willing to bring in some of your use cases for review? Be prepared to share your answers with the entire class Estimate: 15 mins. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 12

Use Case Writing Miniature Copyright 2006-2008 2000-2009 Evanetics, Inc. All Rights Reserved Page - 13

Use Case Writing Miniature Before we start, let s see the whole use case writing process We will select a single use case from our example case study A vehicle rental system We will quickly show all four (4) steps of writing a selected use case Identify the primary actor(s) and the use case scope Write the main flow (aka, the happy path ) Identify the exception flows and the conditions that cause a deviation from the main flow Write the behavior of the actor(s) and system to attempt recovery from the exception flow back to the main flow Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 14

Miniature Actors and Use Case Scope Use Case (for a Vehicle Rental system) Receive Vehicle from Customer Primary actor(s) Garage Representative Use Case Scope System use case (because the Garage Representative will use an automated system to carry out the tasks of recording that a customer has returned a vehicle) Questions: Does this seem like a reasonable use case? Do you think there is significant interaction between the primary actor and the system? What steps do you think will be performed in this use case? Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 15

Miniature The Main Flow Questions: We can have our business people vet the main flow Will we have deviations, or exception behavior at any of these steps? Can you name some exceptions? Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 16

Miniature Exception Flow Conditions Question: What behavior do you think the system should exhibit when it encounters each of these exceptions? Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 17

Miniature Exception Flow Behavior We now have a complete use case, for review by our customer or endusers. This is the process you will follow in this course to write your use cases. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 18

Business Actors and Use Cases Copyright 2006-2008 2000-2009 Evanetics, Inc. All Rights Reserved Page - 19

Business Use Case Model The Business Use Case Model Focuses on analysis of the business organization and its business processes It is a model of the business goals and intended functions It captures Business actors Business use cases Its purpose is to describe The relationships between each business actor and the business use cases that provide services to those actors Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 20

Business Actors and Business Use Cases Business Actor Primary business actor: a person or business entity that is a requestor of a service represented by a business use case Secondary business actor: a person or business entity that provides a service to the business being modeled Primary business actor Mortgage Loan Officer Process Mortgage Application Risk Manager Secondary business actor Business use case Business Use Case A sequence of actions that a business performs that yields an observable result of value to a particular (primary) business actor A business use case can have both automated, and non-automated, steps Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 21

Example Business Use Case An example business use case: Underlined phrases indicate sub-use cases Turn to page Ex-8 to see this example. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 22

System Actors and Use Cases Copyright 2006-2008 2000-2009 Evanetics, Inc. All Rights Reserved Page - 23

Use Case Model The Use-Case Model Focuses on analysis of the system s functionality seen by users It is a model of the system's intended functions and the interactions users have with those intended functions It captures (System) Actors (System) Use Cases Its purpose is to describe The relationships between each system actor and the use cases that provide services to those actors Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 24

System Actors and System Use Cases System Actor Primary actor: is a user of the system; a requestor of a service represented by a use case Secondary actor: is used by the system under discussion; it provides services to this system Primary system actor Rental Customer Reserve a Vehicle System use case Corporate Vehicle Repository Secondary system actor System Use Case Describes a sequence of actions a system performs that yields an observable result of value to a particular actor I.e., system use cases are automated Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 25

Example System Use Case An example system use case: Turn to page Ex-9 to see this example. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 26

Group Discussion Use Case Scope Organize into small groups of 2-3 people Discuss together these questions: At what scope are you writing your use cases business, system, or both? If you are doing both,» Are different people or groups writing and validating them? If you are only doing system use cases,» What are you using to describe your high-level business workflows and processes? If you are only doing business use cases,» What are you using to describe how your software meets the goals of your software s users? Be prepared to share your answers with the entire class Estimate: 15 mins. Copyright 2000-2009 Evanetics, Inc. All Rights Reserved Page - 27