Use Cases and Use Case Diagrams

Slides:



Advertisements
Similar presentations
Object Design Examples with GRASP
Advertisements

Use Case Model. C-S 5462 Use case model describes what the user expects the system to do –functional requirements may describe only the functionalities.
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 Diagram © copyright 2001 SNU OOPSLA Lab..
Systems Analysis and Design in a Changing World, Fourth Edition
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.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Introductory case study. 2 The problem The most difficult part of any design project is understanding the task you are attempting You have been contacted.
IS0514 Lecture Week 3 Use Case Modelling.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Use Cases Descriptions and Use Case Models.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Business Modeling : basic concepts Extracted from Rational UML Profile for business modeling.mht.
Chapter 7 Structuring System Process Requirements
Systems Analysis and Design in a Changing World, 6th Edition
Interaction Modeling Interaction model describes how objects interact to produce useful results. Interactions can be modeled at different levels of abstraction:
Systems Analysis and Design in a Changing World, Fifth Edition
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.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
Approaching a Problem Where do we start? How do we proceed?
 A software application is like a city  Modeling = Architecture  OOP = Civil Engineering  UML Classes = Blueprints of Buildings  UML is a common.
UML-1 3. Capturing Requirements and Use Case Model.
PRJ566 System Sequence Diagrams.  A system sequence diagram …. Illustrates input and output events related to the system under discussion.  Larman,
UML-1 8. Capturing Requirements and Use Case Model.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
1 Structuring Systems Requirements Use Case Description and Diagrams.
Systems Analysis and Design in a Changing World, 6th Edition
COMP-350 Object-Oriented Analysis and Design Drawing System Sequence Diagrams Reference: Larman, Chapter 9.
Use Case Textual Analysis
Systems Analysis and Design in a Changing World, Fourth Edition
4-1 © Prentice Hall, 2007 Topic 4: Structuring Systems Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Winter 2007SEG2101 Chapter 31 Chapter 3 Requirements Specifications.
Week04 Project Requirements.
UML - Development Process 1 Software Development Process Using UML.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
High Level Design Use Case Textual Analysis SE-2030 Dr. Mark L. Hornick 1.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Chapter 5 – System Modeling
School of Business Administration
IST 311 – Object-Oriented Design & Software
Pepper modifying Sommerville's Book slides
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 4: Business Process and Functional Modeling, continued
Use Cases and Scenarios
School of Business Administration
Recall The Team Skills Analyzing the Problem (with 5 steps)
Systems Analysis and Design in a Changing World, 6th Edition
System sequence diagrams
BTS430 Systems Analysis and Design using UML
Use Case Model.
Creating Use Cases.
UML Use Case Diagrams.
OO Domain Modeling With UML Class Diagrams and CRC Cards
Requirements: Use Case Models and Narratives
OO Domain Modeling With UML Class Diagrams and CRC Cards
Concepts, Specifications, and Diagrams
Sequence Diagrams Lecture 6.
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
IS0514 Lecture Week 3 Use Case Modelling.
Copyright 2007 Oxford Consulting, Ltd
Engineering Quality Software
Use Case Analysis – continued
Week 8 Lecture 1: Identifying Actors and Activities
Software Development Process Using UML Recap
Presentation transcript:

Use Cases and Use Case Diagrams

Objectives To explain what use cases are To present UML use case diagram notation To suggest processes for creating use case diagrams To present rules and heuristics for making use case diagrams. To list use case diagram quality checks To explain when to use use case diagrams

Topics Why use case diagrams work Use cases, actors, and scenarios UML use case diagram notations How to make use case diagrams Rules of formation Heuristics Quality checks When to use use case diagrams

Why Use Case Modeling Works User-level requirements are generated from stakeholder needs. Operational-level requirements are hard to generate in isolation. Considering the interactions between a program and its environment Organizes operational level requirements Provides context for refinement Help avoid inconsistencies, omissions, redundancies, etc.

An actor is a type of agent that interacts with a product. Use Cases and Actors A use case is a type of complete interaction between and product and its environment. An actor is a type of agent that interacts with a product. The collection of use cases characterizes all externally observable behavior. A use case is an entire, coherent interaction. Actors are roles not individuals. The product is never an actor.

Use Case Diagrams Static model Catalog of all use cases UML diagram A use case diagram represents a product’s use cases and the actors involved in each use case. Static model Catalog of all use cases UML diagram

Use Case Diagram Symbols

Use Case Diagram Example Use Case Diagram for an Automated Carwash

Scenarios Instance of a use case A scenario is an interaction between a product and particular individuals. Instance of a use case Help envision how a product can be used Abstracted into use cases

Scenario for Buying a Car Wash A Scenario Example Michael drives to the kiosk outside the carwash and attempts to insert five dollars. The kiosk accepts the money and displays the message “You have paid enough for a complete wash. Insert another dollar for a deluxe wash.” Michael presses the button for an express wash. The kiosk refunds one dollar. The carwash queries its stall sensors. The stall sensors report that no car is detected, so the kiosk displays the message “Please drive forward into the wash stall.” Scenario for Buying a Car Wash

Making Use Case Diagrams 1

Making Use Case Diagrams 2 An event list a list of all internal and external events to which the product must respond. Invent use cases to handle each event in the list; add it to the diagram Consider each use case and determine its actors; add them to the diagram

Use Case Briefs Supplements the use case diagram A use case or actor brief is a short description of a use case or actor. Supplements the use case diagram Usually only one or tow sentences or phrases

Formation Rules Every use case diagram must have At least one use case At least one actor At least one actor associated with each use case At least one use case associated with each actor No association line between actors No association line between use cases Name every actor and use case Not label any association line

Use Case Diagram Heuristics 1 Never make the product an actor. Name actors with noun phrases. Name use cases with verb phrases. Achieve a stakeholder’s goal in a use case. Make use cases that can be finished in a single session.

Use Case Diagram Heuristics 2 Make use cases of uniform size and complexity. Draw use case diagrams on one page. Organize use cases by actor, problem domain categories, or solution categories.

Checking Use Case Diagrams 1 Review the stakeholders-goals list to make sure no actors are missing. Review the needs list to make sure no uses cases are missing. Review constraints and limitations to make sure they are no violated.

Checking Use Case Diagrams 2 Generate an event list and check that all events are handled. Check that the collection of use cases covers all externally visible behavior. Check the diagram against the use case heuristics above.

When to Use Use Case Diagrams User-level product design alternatives (more on this later) Summarizing design alternatives Catalog use cases elaborated in use cse descriptions (more on this later) A component of a use case model (more on this later)

Summary Use cases are types of episodes of interaction between a product and its environment. Working with use cases help organize, analyze, generate, evaluate, and select functional requirements. UML use case diagrams are static models of all the use cases in a product. There are several processes for creating use case diagrams. Rules govern use case diagram formation, and heuristics and checks help achieve and ensure their quality.