The Use of Cases: Use Case Scenarios College of Alameda Copyright © 2007 Patrick McDermott Sometimes a Word is worth a thousand.

Slides:



Advertisements
Similar presentations
Process Design (Specification)
Advertisements

9/10/2004Use Case Workshop 1 CSC480 Software Engineering Workshop 1 Requirements Modeling.
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
Use-case Modeling.
Lecture 2Slide 1 Event Driven Computing Basic Interaction Handling –Interactive programs - must pay attention to the user interface.
Chapter 10 System Sequence Diagrams. What is a System Sequence Diagram? A way of modeling input and output events related to systems It is a picture that.
Use Case Modeling Written by: Zvika Gutterman Adam Carmi.
PROCESS MODELING Transform Description. A model is a representation of reality. Just as a picture is worth a thousand words, most models are pictorial.
Use cases and requirement specification - 1 Use case diagrams 3 use cases System boundaries Remember: Use case diagramming is a tool, not the requirements.
A use case describes one “case” of how a user can use the system.
Lesson-21Process Modeling Define systems modeling and differentiate between logical and physical system models. Define process modeling and explain its.
Chapter 3 Planning Your Solution
The Program Design Phases
Models and Designs Investigation 1.  Label your new section Models and Designs  Draw pictures of a “model” and “design”
Team Skill 1 Analyzing the Problem Business Modeling (6) 1.
PROCESS MODELING Chapter 8 - Process Modeling
Use Cases Why use ‘em? How do they work? UC diagrams Using them later in the software development cycle.
Chocolate Bar! luqili. Milestone 3 Speed 11% of final mark 7%: path quality and speed –Some cleverness required for full marks –Implement some A* techniques.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
CS499 Use Cases References From Alistair Cockburn Writing Effective Use Cases (Book) - Use Case.
An empirical process to get an assessment of the quality of the quality of a system Never exhaustive  one can never prove the system will work Comparison.
Use Cases 2 ENGR ♯10 Peter Andreae
E-Learning Material Web Application Design 2. Web Application Design Use cases Guidelines Exceptions Interaction Sequence diagrams Finding objects.
Use Cases College of Alameda Copyright © 2007 Patrick McDermott.
LECTURE 3 USE CASE DESCRIPTION. Use Cases grouped into system modules Note: Same actor interacts with different modules USE CASE DIAGRAM OF THE CUSTOMER.
Chapter 5: Requirement Engineering Process Omar Meqdadi SE 2730 Lecture 5 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Process Design (Requirements). Recall the Four Steps of Problem Solving * Orient Plan Execute Test These apply to any kind of problem, not just spreadsheet.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 6 Value- Returning Functions and Modules.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 Requirements Engineering Processes.
Software Development Software Testing. Testing Definitions There are many tests going under various names. The following is a general list to get a feel.
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.
University of Virginia Software Development Processes (CS340 John Knight 2005) 1 Software Development Processes.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
GettingUsers Started Getting Users Started Instructor: Glenda H. Easter ITSW 1410, Presentation Media Software.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
Instructore: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Requirement engineering.
Requirements Analysis and Design Engineering Southern Methodist University CSE 7313.
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.
Use Case Diagrams College of Alameda Copyright © 2007 Patrick McDermott.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Use Cases Use Cases are employed to describe the functionality or behavior of a system. Each use case describes a different capability that the system.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Introduction to Loops For Loops. Motivation for Using Loops So far, everything we’ve done in MATLAB, you could probably do by hand: Mathematical operations.
Scenario A scenario is a sequence of steps describing an interaction between a user and a system. Use case is a set of scenarios tied together by a common.
Requirements Engineering. Requirements engineering processes The processes used for RE vary widely depending on the application domain, the people involved.
Main Idea.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Use Case Model Use case description.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 14 Event-Driven Programming with Graphical User Interfaces.
HNC Flow Chart 1 IT Systems Analysis and Design SSADM – Design.
Staffordshire UNIVERSITY School of Computing Version Jan 08 original by K.Ingram & J.Westlake1 Special Relationships between Use Cases Normally it is not.
ICS124 Session 9 Flowcharting 1. By the end of this section the student will be able to:  Name the three structures of the Structure Theorem  Identify.
Application Analysis. Application Interaction Model The purpose of analysis is to understand the problem so.
UML Class Diagrams David Millard
This I Believe Essay Writer’s Workshop: Introductions, Juicy Details, & Conclusions 8 th ELA St. Joseph School.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
UML Activity and Sequence Diagrams David Millard
Lecture 8: Collections, Comparisons and Conversions. Svetla Boytcheva AUBG, Spring COS 240 Object-Oriented Languages.
OCR A Level F453: High level languages Programming techniques a. identify a variety of programming paradigms (low-level, object- oriented,
Unified Modeling Language
Week 10: Object Modeling (1)Use Case Model
Object-Oriented Analysis Principles using UML
Use Case Model Use case description.
Chapter 10 Object States and The Statechart Diagram
Requirements Engineering Processes
Data Groupings: File File: a group of related records
Object-Oriented Software Engineering
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Presentation transcript:

The Use of Cases: Use Case Scenarios College of Alameda Copyright © 2007 Patrick McDermott Sometimes a Word is worth a thousand Pictures

Why I Recommend Scenario-Driven Can become Test Cases One Case—user did test cases B4 we started –Wonderful! –But never worked in another case Can become User Manual Better yet, can come FROM user Manual: –“Write the user manual, then write the code.”

 Words & Pictures  Eventually Pictures fail, Words are Needed Pictorial diagrams become too complex (e.g., trying to show every decision point and path in an event-driven interface), and don’t illustrate desired system functions Flowchart is no better than code –Once you grasp it, you no longer need it Access Query no Better than SQL Code Like a storyteller with unnecessary detail –It was 5 years ago, Or maybe 6. No, wait, it was 4½ years ago, or was it?

A Use Case has Scenarios Use Case Scenario Class Requirements Program Spec Class Diagram

What’s a Use Case Scenario? A use case scenario is a specific example—an instance of a use case. The sunny-day scenario is the normal case: What happens if the user does exactly what is expected and completes the transaction? The rainy-day scenarios (of which there are usually many) are variations on the use case (e.g., the user tries to perform a task for which she isn’t authorized). Use Case Scenarios are a powerful tool to specify requirements, and can also serve as test case scenarios to assure those requirements are met. They are often used as design or coding specs. They can even evolve into the User Manual. Use brainstorming techniques to help come up with Use Cases and Use Cases Scenarios to better understand the problem.

Scenarios A complete path through a use case, from the first step to the last, is called a Scenario. Most use cases have several scenarios, but they always share the same user goal.

3 Audiences Write your use cases in a way that makes sense to you, your boss, and your customers.— H1 st OOA&D, p. 151

 Check the Weather   UC Main Path ☼Sunny Day  Alternate Path  Rainy Day –Optional Path

UC Formats Simple, Step-based format Focus on Interaction When … Then Can be Paragraph Table Steps Numbers/Subnumbers Alternate too

Use Case Scenario Note that one use case is a collection of several use case scenarios. A use case might be Register Vehicle. Four scenarios: Register New Vehicle, Register Out- of-State Vehicle, Re-Register Existing Vehicle, Register Stolen Vehicle. We’ll use “step” to refer to the lower level items: they are called steps on our diagrams and are portrayed as boxes, but the individual workers often call them tasks, or activities.

A Scenario

Instance Use Case Instance The execution of a sequence of actions in a specified use case. An instance of a use case.

Loops in UC “Lots of times a use case has a set of steps that need to be repeated, but there’s not a standard way to show that in the cases. So we just made one up!” —H1 st OOA&D They put “the system repeats steps a-x until complete.” In reality, not a problem

Include & Extend It’s “easy to spend a lot of time arguing over whether a use case extends this use case, or includes that one…but it’s really not that big of a deal, and those keywords should never distract from the overall design process.” —H1 st OOA&D