Use cases Dr. X.

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design Evolutionary Requirements.
Advertisements

© 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.
Writing Use Cases: Requirements in Context
Use cases.
January Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box.
Jan Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box Actors.
COMP 350: Object Oriented Analysis and Design Lecture 3 Case Studies, Inception & Use Cases References: Craig Larman Chapters 3-6.
Systems Analysis and Design in a Changing World, Fourth Edition
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” - may be of.
Fall 2009ACS-3913 Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
Use Cases & Requirements Analysis By: Mostafa Elbarbary.
Understanding Requirements
Copyright ©2004 Cezary Z Janikow 1 Use Cases n Within Requirements discipline/workflow n Verbal descriptions of important functional (behavioral, transactional,
Use Case Modeling. Kendall & Kendall© 2005 Pearson Prentice Hall18-2 Commonly Used UML Diagrams The most commonly used UML diagrams are: – Use case diagram,
The first step in getting what you want is to decide what you want.
TK2023 Object-Oriented Software Engineering CHAPTER 6 SYSTEM SEQUENCE DIAGRAMS.
Software Engineering 1 Object-oriented Analysis and Design Chap 30 Relating Use Cases.
SOEN 6011 Software Engineering Processes Section SS Fall 2007 Dr Greg Butler
ZEIT2301 Design of Information Systems Functional Design: Use Cases School of Engineering and Information Technology Dr Kathryn Merrick.
4 2009/10 Object Oriented Technology 1 Topic 4: The Object-Oriented Approach to Requirements Adopted from: Ch.7 The Object-Oriented Approach to Requirements.
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.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 20. Review Software Requirements Requirements Engineering Process.
Object-Oriented Analysis and Design Jan 14, 2009.
 Development is organized in a series of short, fixed-length mini-projects called iterations  Iterations are also incremental  Successive enlargement.
OOSE Use Case. Requirement Functional: –Features, capabilities, and security Non Functional: –Usability: Human factors, help, and documentation –Reliability:
Originated by K.Ingram, J.Westlake.Edited by N.A.Shulver Use Case Scripts What is a Use Case Script? The text to describe a particular Use Case interaction.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
OO Methodology Inception Phase.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
Requirements specification Why is this the first major stage of software development? –Need to understand what customer wants first Goal of requirements.
Systems Analysis and Design in a Changing World, Fourth Edition
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
PRESENTATION ON USE CASE. Use Case Modeling Use case diagrams describe what a system does from the standpoint of an external observer. The emphasis is.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Understanding Requirements
Larman chapter 61 Use cases Larman chapter 6. 2 Fig. 6.1.
Dr. Awais Majeed Object Oriented Design and UML.
SYSTEM-LEVEL SEQUENCE DIAGRAMS Sys466. System-Level Sequence Diagrams  Use cases describe how external actors interact with the software system…  An.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
1 Object Oriented Analysis and Design System Events & Contracts.
Jan Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
Elaboration popo.
Using Use Case Diagrams
CMPE 280 Web UI Design and Development August 29 Class Meeting
Systems Analysis and Design in a Changing World, 6th Edition
Use Cases Discuss the what and how of use cases: Basics Benefits
System Sequence Diagrams and Operation Contracts
Use Case Driven Analysis
Recall The Team Skills Analyzing the Problem (with 5 steps)
Objectives Importance of Requirement Engineering
Use case diagrams A use case diagram is UML’s notation for showing the relationships among a set of use cases and actors A use case diagram can help the.
Creating Use Cases.
Webapp Design with System Sequence Diagrams
UML Use Case Diagrams.
Writing Use Cases.
Object-Oriented Analysis Principles using UML
Start at 17th March 2012 end at 31th March 2012
Concepts, Specifications, and Diagrams
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Systems Analysis and Design in a Changing World, 6th Edition
Using Use Case Diagrams
Use Case Modeling.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Software Requirements
Engineering Quality Software
Presentation transcript:

Use cases Dr. X

Overview Use cases are one way to capture (especially) functional requirements. They are stories of using a system. You will be able to: Identify different use case levels Write use cases in the popular Cockburn format Contrast essential and concrete use cases Apply guidelines Read and write use case diagrams 2

DEFINITION: Use Case Informally, a use case is a story of using a system to fulfill a goal. Rent Videos Used by primary actors E.g., Clerk External agents something with behavior Use supporting actors. CreditAuthorizationSystem 3

EXAMPLE: Use Case. DEFINITION: Brief Here’s one in a brief format: Rent Videos. A Customer arrives with videos to rent. The Clerk enters their ID, and each video ID. The System outputs information on each. The Clerk requests the rental report. The System outputs it, which is given to the Customer with their videos. 4

DEFINITION: Scenario Informally, a scenario is a specific sequence of actions and interactions in a use case. One path through the use case. E.g., The scenario of renting videos and first having to pay overdue fines. More formally, a use case is a collection of success and failure scenarios describing a primary actor using a system to support a goal. 5

Use Cases There is nothing object-oriented about use cases. So, why bother in an OOA/D course? We need some kind of requirements input for the design steps. They are common/popular. There is a UML-related topic. Use case diagrams 6

Levels of Use Cases A common challenge is identifying use cases at a useful goal level. For example, how do we know which of these is at a useful level? Negotiate a Supplier Contract Rent Videos Log In Start Up 7

GUIDELINES: EBP for Use Case Levels Cockburn supports the Elementary Business Process (EBP) guideline. Focus on use cases at the level of EBPs. “A task performed by one person in one place at one time, in response to a business event, which adds measurable business value and leaves the data in a consistent state.” 8

GUIDELINES: EBP for Use Case Levels Naively, can you apply the “boss test” for an EBP? Boss: “What do you do all day?” Me: “I logged in!” Is Boss happy? 9

GUIDELINES: Size for Use Case Levels An EBP-level use case usually is composed of several steps, not just one or two. It isn’t a single step. 10

Use Case Levels: Applying the Guidelines Applying the EBP and size guidelines: Negotiate a Supplier Contract Rent Videos Log In Start Up The others can also be modeled as use cases. But, prefer a focus on the EBP level. 11

Use Case Diagrams Warning: Don’t spend much time on diagramming. Use case work means to write text, not draw diagrams 12

DEFINITION: Fully Dressed Use Cases Rich notation for detailed analysis. Shows branching scenarios. Can include non-functional requirements related to the functional. 13

EXAMPLE: Fully Dressed Use Case UC1: Rent Video Level: User-level goal (EBP level)   Primary Actor: Clerk Preconditions: Clerk is identified and authenticated. Stakeholders and their Interests: Clerk: Wants accurate, fast entry. Customer: Wants videos, and fast service with minimal effort. Accountant: Wants to accurately record transactions. Marketing: Wants to track customer habits. . . . 14

EXAMPLE: Fully Dressed Main Success Scenario (or Basic Flow or “Happy Path”): Customer arrives at a checkout with videos or games to rent. Clerk enters Customer ID. Clerk enters rental identifier. System records rental line item and presents item description. (Clerk repeats steps 3-4 until indicates done.) System displays total. Customer pays. System handles payment. Clerk requests rental report. System outputs it. Clerk gives it to Customer. Customer leaves with rentals and report. 15

EXAMPLE: Fully Dressed Extensions (or Alternatives): a*. At any time, System fails: Clerk restarts System logs in requests recovery from prior state 1a. New Customer. 1. Perform use case Manage Membership. 2a. Customer ID not found. 1. Cashier verifies ID. If entry error, reenter, else Manage Membership. 2b. Customer has unpaid fines (usually for late returns). 1. Pay Fines. 16

EXAMPLE: Fully Dressed Special Requirements: Language internationalization on the display messages and rental report. Large text on display. Visible from 1 m. Technology and Data Variations: ID entries by bar code scanner or keyboard. Frequency: Near continuous Open Issues: Should we support a magnetic stripe cards for customer ID, and allow customer to directly use card reader? 17

GUIDELINES: Use Case Writing Start sentence 1 with “<Actor> does <event>” Customer arrives with videos to rent. First write in the essential form, and “Keep the UI out.” Capitalize “actor” names. … Clerk enters… System outputs… 18

GUIDELINES: Use Case Writing Terse is good. People don’t like reading requirements ;). Avoid noisy words. More verbose … The Clerk enters… The System outputs… Less Clerk enters… System outputs… 19

MOTIVATION: Comprehensible & Familiar Use cases are stories. A simple and familiar model that many people, especially non- technical, can easily relate to. iterative requirements use cases sys. sequence diagrams domain models 20

MOTIVATION: “Requirements in Context” The subtitle makes an important point: Use cases bring together related requirements. More cohesion and context for related requirements. 21

Artifacts in the UP Use-Case Model 22 iterative requirements use cases sys. sequence diagrams domain models

Review and apply the guidelines. In small teams at the white board, write a fully dressed use case for Process Sale. Review and apply the guidelines. 23