CS499 Use Cases References From Alistair Cockburn Writing Effective Use Cases (Book) - Use Case.

Slides:



Advertisements
Similar presentations
Use-Cases.
Advertisements

Process Redesign Stages Developing Business Vision Understanding the Existing Business Designing the New Business Installing the New Business.
1Spring 2005 Specification and Analysis of Information Systems Specifying Requirements with Use Case Diagrams Part II.
© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Information System Engineering
Chapter 5 Understanding Requirements
Use Case Modeling Written by: Zvika Gutterman Adam Carmi.
Fall 2009ACS-3913 Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
Use cases and requirement specification - 1 Use case diagrams 3 use cases System boundaries Remember: Use case diagramming is a tool, not the requirements.
Bina Nusantara 7 C H A P T E R MODELING SYSTEM REQUIREMENTS WITH USE CASES.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Use cases: deciding what you want.
חוזים – Contracts 1. Larman – Chapter 10 – SSDs 10.2 What are System Sequence Diagrams? (introduction) Use cases describe how external actors interact.
Chapter 3 Object-Oriented Analysis of Library Management System(LMS)
CMPT 275 Software Engineering
USE Case Model.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 7 Requirements Engineering Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Object-Oriented Analysis - Instructor Notes
Systems Analysis and Design in a Changing World, 6th Edition
Developing Use Cases in a Group Carolyn L. Cukierman Face-to-Face Technology Conference March 27, 2000.
Internet Software Development Putting it all together Paul J Krause.
1 CMPT 275 Phase: Design. Janice Regan, Map of design phase DESIGN HIGH LEVEL DESIGN Modularization User Interface Module Interfaces Data Persistance.
Understanding User Requirements. Documenting Use Cases 2 At this stage of the exploration, the participants should be thinking of essential use cases.
From Use Cases to Test Cases 1. A Tester’s Perspective  Without use cases testers will approach the system to be tested as a “black box”. “What, exactly,
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
Chapter 6 Use Cases. Use Cases: –Text stories Some “actor” using system to achieve a goal –Used to discover and record requirements –Serve as input to.
1 CMPT 275 Software Engineering Requirements Gathering Activity Janice Regan,
© 2007 First Data Corporation. All Rights Reserved. RFP 101 – Requirements Management Dave Halbig December 6, 2007.
Lecture 3 Uses Cases Topics UML Use Cases pop quiz Readings: Chapter 3 January 24, 2008 CSCE 492 Software Engineering.
Submitted By: Memon Khurshed (Group Leader) Hamed Abdollahpur
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Requirements Reference: Chapters 5, 6, & 8. CMSC 345, Fall Objectives To introduce the concepts of user and system requirements To explain functional.
Requirements Analysis and Design Engineering Southern Methodist University CSE 7313.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
A Use Case Primer 1. The Benefits of Use Cases  Compared to traditional methods, use cases are easy to write and to read.  Use cases force the developers.
Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University Department of Computer Information Systems CIS 499 Yarmouk University.
1 Structuring Systems Requirements Use Case Description and Diagrams.
Systems Analysis and Design in a Changing World, 6th Edition
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 7: Requirements Engineering Software Engineering: A Practitioner’s Approach, 6/e.
1 Chapter 5 Lecture 5: Understanding Requirements Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Behavior Modeling (based on Alistair Cockburn book) PA116 – L11 (c) Zdenko Staníček, Sept 2010.
Information Systems Analysis and Management Modeling Sys. Requirements with Use Cases Arnie Lund, Jeffrey Kim May 5, 2009 INFO380.
CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,
By Germaine Cheung Hong Kong Computer Institute
2/6/03C-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Requirements and Use Cases.
Phase 6 Start: Saturday14 April End: Saturday 21 April
1 What is the Software Life Cycle? The stages of developing a software application Requirements Analysis High-level Design Plan Low-level Design Implementation.
UML (Unified Modeling Language)
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Application Analysis. Application Interaction Model The purpose of analysis is to understand the problem so.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
George Wang, Ph.D. COMP 380/L Lesson 2. Use Case Use cases are a way to capture system functionalities (i.e., functional requirements) Based on use case.
Jan Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
Use Cases Discuss the what and how of use cases: Basics Examples Benefits Parts Stages Guidelines.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Use Cases Discuss the what and how of use cases: Basics Benefits
Storyboarding and Game Design SBG, MBG620 Full Sail University
Start at 17th March 2012 end at 31th March 2012
Use Case Model Use case description.
Unified Modeling Language
Chapter 5 Understanding Requirements
Chapter 5 Understanding Requirements
Engineering Quality Software
Object-Oriented Software Engineering
Chapter 5 Understanding Requirements.
Presentation transcript:

CS499 Use Cases References From Alistair Cockburn Writing Effective Use Cases (Book) - Use Case Fundamentals (Article) - Structuring Use Cases with Goals (Article)

CS499 What is an Actor? Basically users of the system Actually user groups or categories External entities (people or systems) –That interact with the system –In order to achieve a desired goal

CS499 What is a Use Case? A description of what happens when users interact with the system A collection of scenarios about how an Actor uses the system to achieve a particular goal

CS499 Use Cases Hold Functional Requirements in an easy to read, easy to track text format Represents the goal of an interaction between an actor and the system. The goal represents a meaningful and measurable objective for the actor. Records a set of paths (scenarios) that traverse an actor from a trigger event (start of the use case) to the goal (success scenarios) Records a set of scenarios that traverse an actor from a trigger event toward a goal but fall short of the goal (failure scenarios) Are multi-level: one use case can include/extend the functionality of another Use Cases Do Not… Specify user interface design. They specify the intent, not the action Detail Specify implementation detail (unless it is of particular importance to the actor to be assured that the goal is properly met)

CS499 How Are Use Cases Used? To Capture the Functional Requirements of the system To act as a springboard for the software design To validate the software design For Software Test and Quality Assurance. (Tests are performed to validate proper and complete implementation of the use cases) Potentially as an initial framework for the on line help and user manual

CS499 Types of Actors Primary Actor –The Actor(s) using the system to achieve a goal. –The Use Case documents the interactions between the system and the actors to achieve the goal of the primary actor Secondary Actor –Actors that the system needs assistance from to achieve the primary actors goal

CS499 Use Case Writing Process Suggested in Writing Effective Use Cases Managing Your Energy –Start out at a high level and add detail as you go –Too much detail too fast puts you in a corner, change becomes difficult –It is an iterative, incremental process (use cases, and OO software development)

CS499 Four levels of Use Case “Precision” Actors and Goals – List all of the Actors and their goals Use Case Brief (or Main Success Scenario) – Write the trigger and the main success scenario Failure Conditions – Brainstorm all the failures that could occur. Failure Handling – Describe how the system should handle each type of failure

CS499 An Example Add Media Copy Actors: Librarian Goal: Add a copy of a media item to the library. Precondition: Media Item exists in library. LibrarianSystem 1. Searches for the media item 2. Displays media item information. 3. Issues the command to add a new copy. 4. Requests copy information (according to media type) 5. Supplies copy information. 5. Validates the information. 6. Saves the information and informs user. Exceptions 1a – Media item is not found (redirect to Add media item) 3a, 5a – Librarian cancels operation. 6a – 1 – Copy is a duplicate 6a – 2 - Required information is missing 6a – 3 – Data does not meet expected format

CS499 Trouble Getting Started? Cockburn recommends the use of Usage Narratives as a “warm-up” A Usage Narrative describes a particular interaction, such as “Joe enters the copy information…” User Stories are utilized in eXtreme Programming are similar to Usage Narratives

CS499 Validating Use Cases Since Use Cases are used in so many stages of software development, it is important to validate them Questions to ask: –Is the Use Case complete? Are there any details that need to be added? –Do I feel confident that the actor’s goal is going to be properly met? –Are there any procedural or requirement changes I can suggest that would simplify the process depicted in the Use Case? –Are there any additional Goals of the Actors that are not addressed? –Are there any additional Actors that are not represented (directly or indirectly)?