Use Cases and Scenarios! We Will Cover!



Similar documents
Use Cases and Scenarios

Requirement engineering Exercise the POS System solution

Use Cases. Reference: Craig Larman, Applying UML and Patterns, Ch. 6

Object-oriented design methodologies

CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT. Team Project

UML TUTORIALS THE USE CASE MODEL

New York University Computer Science Department Courant Institute of Mathematical Sciences

User experience storyboards: Building better UIs with RUP, UML, and use cases

Condensing Boiler Efficiency

Safety Driven Design with UML and STPA M. Rejzek, S. Krauss, Ch. Hilbes. Fourth STAMP Workshop, March 23-26, 2015, MIT Boston

ACTIVITY: Identifying Common Multiples

Use Case Diagrams. Tutorial

Aim To help students prepare for the Academic Reading component of the IELTS exam.

OVERVIEW OF THE PROJECT...

Using Use Cases on Agile Projects

Refinery Planning & Scheduling - Plan the Act. Act the Plan.

CHAPTER 1 : INTRODUCTION TO PROCESS CONTROL

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

6 USE CASES. Introduction. Chapter 6. Objectives. The indispensable first step to getting the things you want out of life: decide what you want.

TECHNICAL SERVICE DEPARTMENT Technical Service Bulletin Inch PowerVent LED Indicator Explanations & Troubleshooting Table

Using Use Cases for requirements capture. Pete McBreen McBreen.Consulting

CSSE 374 Software Architecture and Design I

CHAPTER 1: INTRODUCTION TO RAPID APPLICATION DEVELOPMENT (RAD)

PART 11: START-UP PROCEDURES FOR THE INSTALLER

1) Testing of general knowledge 25%. Each right question counts 1. Each wrong counts 0.5. Empty

Maple T.A. Beginner's Guide for Instructors

Interaction Diagrams. Use Cases and Actors INTERACTION MODELING

City University of Hong Kong Course Syllabus. offered by Department of Computer Science with effect from Semester A 2015/16

Advanced Software Test Design Techniques Use Cases

Software Project Management and UML

Section C. Requirements Elicitation

Object-Oriented Design Guidelines

- 5 days (30 PDUs) ITIL V3 Intermediate Capability - Planning, Protection and Optimization... 14

FG MOISTURE MONITOR Installation & Operation Manual

One and a half hours QUESTION PAPER MUST NOT BE REMOVED FROM THE EXAM ROOM AND MUST BE RETURNED UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE

3C05: Unified Software Development Process

Course Outline. Foundation of Business Analysis Course BA30: 4 days Instructor Led

CPS122 Lecture: State and Activity Diagrams in UML

Requirements / Use Case Specification

Aerona Air Source Heat Pumps

Principals of Condensing Boiler System Design

Software Requirement Specification

Instructor Quick Start Guide for Blackboard's Deep Integration with Macmillan s LaunchPad

Software Development in the Large!

Basic Unified Process: A Process for Small and Agile Projects

Optimising Your EAMS through Business Processes. Wyhan Jooste

Homework #2 solutions

4. Multiagent Sys stems Design. Part 2: The PROMETHEUS methodology.

Software Development: An Introduction

Communication Diagrams

Swirl. Multiplayer Gaming Simplified. CS4512 Systems Analysis and Design. Assignment Marque Browne Manuel Honegger

Software Development Process

Analysis vs. Design: What s the Difference?

Does function point analysis change with new approaches to software development? January 2013

Object-Oriented Analysis and Design

The THERMOSTAT THE EVOLUTION OF CAPABILITIES INTO A PLATFORM FOR ENERGY MANAGEMENT

Throttle Body Fuel Injection

South Carolina Academic/Career Development Integration Activity (DRAFT)

Key Concepts: 1. Every worker has the right and responsibility to address safety concerns in the workplace.

How to Configure and Use MRP

Installation Questions

Green Heating. Pupil Research Brief. Teachers Notes. Syllabus Coverage Subject Knowledge and Understanding. Route through the Brief UPIL ESEARCHER

ADVANTAGES OF Tankless Adhesive Melting Systems For End-of-Line Packaging

Data Flow Diagrams and Use cases

Frequently Asked Questions on Renting Textbooks

Melting ice Student sheet

Retail POS User s Guide. Microsoft Dynamics AX for Retail

Case Study: Inception Phase. L. ch. 3-5

Object Interaction. Object Diagrams. Object Diagrams Object

CREDIT CARD PROCESSING

Getting Your Keywords Right

UML Activity Diagrams: Versatile Roadmaps for Understanding System Behavior

How To Create A Diagram On Rational Software Development Platform

Contents. Introduction

Effects of Ultra-High Turndown in Hydronic Boilers By Sean Lobdell and Brian Huibregtse January 2014

Assurance Cases and Test Design Analysis

Software Specification and Architecture 2IW80


The 7 Deadly Sins of Copywriting

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

Inventory CheckOut and Store Manager User s Guide

Strategies for Winning at Math. Student Success Workshop

SYLLABUS CIS 3660: OBJECT-ORIENTED SYSTEM ANALYSIS AND DESIGN SPRING 2010

Object Oriented Design

USER MANUAL OPERATION AND USE OF CAR WITH. Diego G3 / NEVO SEQUENTIAL GAS INJECTION SYSTEM

Liberty High School Science Department Lab Report Format

MEASURING A NATION S INCOME

Object Oriented System Analyze and Design of Revenue Information System using UML

6. VVT-i (Variable Valve Timing-intelligent) System

LMS The modular management system for condensing boilers. Control Products & Systems OEM. Answers for infrastructure.

2.1. Introduction to UML: Use-Case Diagram

RVR Hybrid System Installer Instructions RVR Hybrid System Controller Installation Instructions

Performance Optimization Guide

CORRELATION ANALYSIS

Keywords Online food system, Short Massage Service, E-business, notification

DeltaV SIS for Burner Management Systems

Transcription:

Use Cases and Scenarios! : UML-- Use Cases 1 We Will Cover! What is a use-case! Use-case versus user interaction! Use-Case diagrams! The constructs in the use-case diagrams! Capturing the use-case! High-level use-case! Extended use-case! Difference between use case and scenario! : UML-- Use Cases 2 (, Sp2002): UML 1

What is a Use-Case! A use-case captures some user visible function! This may be a large or small function! Depends on the level of detail in your modeling effort! A use-case achieves a discrete goal for the user! Examples! Format a document! equest an elevator! How are the use cases found (captured or elicited)?! : UML-- Use Cases 3 User Goals versus User Interactions! Consider the following when formatting a document! Define a style! Change a style! Copy a style from one document to the next! versus! Format a document! Ensure consistent formatting of two documents! The latter is a user goal! Something the user wants to achieve! The former are user interactions! Things the user does to the system to achieve the goal! : UML-- Use Cases 4 (, Sp2002): UML 2

Goals and Interactions! There is a place for both goals and interactions! Understand what the system shall do! Capture the user goals! Understand how the user will achieve the goals! Capture user interactions! Sequences of user interactions! Thus, start with the user goals and then refine the user goals into several (many) user interactions! : UML-- Use Cases 5 Point of Sale Terminal (POST)! Computerized system to record sales and handle payments! Typically used in a retail store! Includes HW components, such as computer and bar code scanner! Software to run the system! Goals of system:! Increase checkout automation! fast and accurate sales analysis! automatic inventory control! : UML-- Use Cases 6 (, Sp2002): UML 3

Use-Case Diagrams (POST)! POST: Point of Sale Terminal! System Boundary POST Use Case Buy Item Log In Cashier efund a Purchased Item Customer Adapted from Larman Applying UML and Patterns : UML-- Use Cases 7 Another Example! Financial Trading System Set Limits Update Accounts Accounting System Trading Manager Analyze isk Price Deal «includes» «includes» Valuation Trader Capture Deal «extends» Salesperson Adapted from Fowler UML Distilled Limit Exceeded : UML-- Use Cases 8 (, Sp2002): UML 4

Includes and Extends! Includes/Uses! You have a piece of behavior that is similar across many use cases! Break this out as a separate use-case and let the other ones include it! Examples include! Valuation! Validate user interaction! Sanity check on sensor inputs! Check for proper authorization! Extends! A use-case is similar to another one but does a little bit more! Put the normal behavior in one use-case and the exceptional behavior somewhere else! Capture the normal behavior! Try to figure out what can go wrong in each step! Capture the exceptional cases in separate use-cases! Makes it much easier to understand! : UML-- Use Cases 9 Setting the System Boundary! The system boundary will affect your actors and use-cases! P O S T B u y I t e m L o g I n C a s h i e r e f u n d a P u r c h a s e d I t e m C u s t o m e r Adapted from Larman Applying UML and Patterns : UML-- Use Cases 12 (, Sp2002): UML 5

A Different Boundary! Let us view the whole store as our system! Store Buy Item efund a Purchased Item Customer Adapted from Larman Applying UML and Patterns : UML-- Use Cases 13 Partial POST! P O S T B u y I t e m L o g I n C a s h i e r e f u n d a P u r c h a s e d I t e m C u s t o m e r S t a r t U p M a n a g e U s e r s M a n a g e r S y s t e m A d m i n i s t r a t o r Adapted from Larman Applying UML and Patterns A n d a L o t M o r e : UML-- Use Cases 14 (, Sp2002): UML 6

POST Use-Case! Use case:!!buy Item! Actors:!!Customer (initiator), Cashier! Type:!!Primary! Description: The Customer arrives at the!!!!!checkout with items to purchase.!!!!!the Cashier records the purchase!!!!!items and collects a payment.!!!!!on completion the Customer!!!!!leaves with the items! : UML-- Use Cases 15 POST Expanded Use-Case! Use case:!buy Item! Actors:!Customer (initiator), Cashier! Type:!!Primary and essential! Description:!The Customer arrives at the checkout with items!!!!to purchase. The Cashier records the purchase!!!!items and collects a payment. On completion the!!!!customer leaves with the items.! Cross ef.:!equirements XX, YY, and ZZ! Use-Cases:!Cashier must have completed the Log In use-case! : UML-- Use Cases 16 (, Sp2002): UML 7

The Home Heating System! Water Pump Water Valve Fuel Valve Hot Water Burner Controller Home 90 80 Off Fuel 70 On 60 50 Control Panel Temp Sensor : UML-- Use Cases 17 Home Heating Use-Case Diagram! H o m e H e a t i n g P o w e r U p H o m e O w n e r P o w e r D o w n C h a n g e T e m p. : UML-- Use Cases 18 (, Sp2002): UML 8

Home Heating Use-Cases! Use case: Power Up Actors: Home Owner (initiator) Type: Primary and essential Description: The Home Owner turns the power on. Each room is temperature checked. If a room is below the the desired temperature the valve for the room is opened, the water pump started, the fuel valve opened, and the burner ignited. If the temperature in all rooms is above the desired temperature, no actions are taken. Cross ef.: equirements XX, YY, and ZZ Use-Cases: None : UML-- Use Cases 19 Modified Home Heating! Home Owner Power Up Power Down Change Temp. Home Heating «includes» Adjust Temp «includes» Temp. High «includes» «includes» Temp. Low : UML-- Use Cases 20 (, Sp2002): UML 9

HACS! Homework assignment and collection are an integral part of any educational system. Today, this task is performed manually. What we want the homework assignment distribution and collection system (HACS for short) to do is to automate this process.! HACS will be used by the instructor to distribute the homework assignments, review the students solutions, distribute suggested solution, and distribute student grades on each assignment.! HACS shall also help the students by automatically distributing the assignments to the students, provide a facility where the students can submit their solutions, remind the students when an assignment is almost due, remind the students when an assignment is overdue.! : UML-- Use Cases 21 In-class exercise! Work in Pairs! Create use case diagram! Have an example of <<includes>> relationship! Bonus: have an example of <<extends>> relationship! emember to include key elements of UC diagram.! : UML-- Use Cases 22 (, Sp2002): UML 10

HACS Use-Case Diagram! C o n f i g u r e H A C S H A C S e m i n d S t u d e n t S y s t e m A d m i n D i s t r i b u t e A s i g n m e n t s G e t A s s i g n m e n t P o s t S o l u t i o n s S u b m i t A s s i g n m e n t S t u d e n t D i s t r i b u t e G r a d e G e t S o l u t i o n I n s t r u c t o r G e t G r a d e : UML-- Use Cases 23 HACS Use-Cases! Use case: Distribute Assignments Actors: Instructor (initiator) Type: Primary and essential Description: The Instructor completes an assignment and submits it to the system. The instructor will also submit the due date and the class the assignment is assigned for. Cross ef.: equirements XX, YY, and ZZ Use-Cases: Configure HACS must be done before any user (Instructor or Student) can use HACS : UML-- Use Cases 24 (, Sp2002): UML 11

Alternate HACS! H A C S C o n f i g u r e H A C S S y s t e m A d m i n D i s t r i b u t e A s i g n m e n t s P o s t S o l u t i o n s D i s t r i b u t e G r a d e S t u d e n t I n s t r u c t o r e m i n d S t u d e n t S u b m i t A s s i g n m e n t : UML-- Use Cases 25 When to use Use-Cases! In short, always!!!! equirements is the toughest part of software development! Use-Cases is a powerful tool to understand! Who your users are (including interacting systems)! What functions the system shall provide! How these functions work at a high level! Spend adequate time on requirements and in the elaboration phase! : UML-- Use Cases 27 (, Sp2002): UML 12