Use Cases and Scenarios

Similar documents
Use Cases and Scenarios! We Will Cover!

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

UML TUTORIALS THE USE CASE MODEL

Installation Questions

Condensing Boiler Efficiency

Object-Oriented Design Guidelines

Requirement engineering Exercise the POS System solution

Test Code: 8297 / Version 1

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


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

Neuton Solar Power Diverter Quick Installation Guide

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

Using Building Energy Management Systems (BEMS) Best Practice for Energy and Carbon Savings.

General Information. Do programmable thermostats really save energy?

Frequently Asked Questions

UNDERSTANDING CENTRAL HEATING SYSTEMS

C-Bus Application Messages & Behaviour Chapter 25 Air Conditioning

Cooling Capacity CFM in. w.c. (125 Pa)

E-gas Instant Gas Water Heaters

PRODUCT DESIGN. 5. Furnace awaits call from thermostat.

FG MOISTURE MONITOR Installation & Operation Manual

TDDC88 Lab 2 Unified Modeling Language (UML)

Aerona Air Source Heat Pumps

HVAC System Cloud Based Diagnostics Model

Object-oriented design methodologies

3C05: Unified Software Development Process

New York University Computer Science Department Courant Institute of Mathematical Sciences

Software Requirements Specification. Online Shop Software

Sequence Diagram Tutorial. From: UML Distilled, Third Edition, Chapter 4 M. Fowler

Synergy of demand water heaters with solar and radiant floor heating

SIMPLE ELECTRONIC IGNITION WIRE DIAGRAM THERMOSTAT (3) PV PILOT BURNER/IGNITOR - SENSOR Q345A (9) SPARK (4) GND (BURNER) CHASSIS GND

SPARE PARTS EXPLODED VIEW GAS WALL BOILERS Model. CELTIC RSc b CUENOD. R EN - Edition 02-21/04/2005

Fossil fuel heating equipment

Heat Trace Fundamentals. Monte Vander Velde, P.E. President, Interstates Instrumentation

Software Development Process

Factory owners must ensure the boiler is:

Use Case Modeling. Software Development Life Cycle Training. Use Case Modeling. Set A: Requirements Analysis Part 3: Use Case Modeling

DOCUMENTING USE CASES

Communication Diagrams

HEAVY DUTY STORAGE GAS

Software Project Management and UML

RVR Hybrid System Installer Instructions RVR Hybrid System Controller Installation Instructions

HEAT INTERFACE UNITS (Modular)

SERVICE MANUAL FOR 6535 SERIES TWO TON HIGH EFFICIENCY PACKAGED HEAT PUMPS

Your safety and the safety of others are very important.

Sizing and Selection of Hot Water Generating Plant. Presentation by: Rob Larner & David Dutch

Contents. Introduction

Software Design Models, Tools & Processes *

Split Controller. User Manual SM-SS-F 2009/01/04

What Now? More Standards for Safety and Regulatory Compliance

PART 11: START-UP PROCEDURES FOR THE INSTALLER

CGC s Hybrid System Loop Control

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

Plumbing Identification and Damage Assessment Guide

Safety Requirements Specification Guideline

RESIDENTIAL HEATING OIL SERVICE CONTRACT ANNUAL COST $276.00

Section C. Requirements Elicitation

with MERCURY FREE 1 HP Relays ! WARNING Before using this product read and understand instructions.

Impact of Control System Technologies on Industrial Energy Savings

CITY OF PHILADELPHIA DEPARTMENT OF LICENSES AND INSPECTIONS ANNUAL CERTIFICATION FOR FIRE ALARM SYSTEMS

Menouer Boubekeur, Gregory Provan

Requirements Engineering Process

ELECTRIC POSITION for electric heat, then confirm with Fan Test below.

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

Nicholas Mezei CSCI 6448 OOA&D Homework #3: Use Cases. Use Case Diagram: Home Security System. Alarm System

HVAC Processes. Lecture 7

Protect your home s major mechanical systems with Main Street Mechanical s Home Service Agreement.

RVL470. Heating Controller. Building Technologies HVAC Products. Series B

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

2 STEPS TO CONDUCTING YOUR HVAC ASSESSMENT

Preventative Maintenance Plan. Guide. The Simple, Smart Way To Properly Care For Home Systems And Appliances.

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

Marine Piston Damage By Tom Benton, Marine Surveyor

User's Instructions. Alpha HE CB25/33 and HE SY25

TABLE OF CONTENT


11. COOLING SYSTEM 11-0 COOLING SYSTEM BET & WIN 50

TECHNICAL SERVICE DEPARTMENT Technical Service Bulletin Tankless Electric (RTE) Troubleshooting

Energy and Thermal Management Simulation of an Advanced Powertrain

Technical Support Bulletin Nr. 20 Special AC Functions

Writing Use Case Scenarios for Model Driven Development

Any Service Technician Can Fix It A Good Service Technician Can Figure Out What s Wrong With It.

TANKLESS WATER HEATER INSTALLATION DIAGRAMS

For installation guide see reverse of book

Thermostatic Wiring Principles by Bob Scaringe Ph.D., P.E.

Throttle Body Fuel Injection

How to Make a Domain Model. Tutorial

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

Use Cases. Massimo Felici. Massimo Felici Use Cases c

ENHANCED LABORATORY HVAC SYSTEM

Recovery of Plant Waste Heat by a Thermoelectric Generating System

The Tropos and MaSE Agent-Oriented Software Engineering Methodologies. Msury Mahunnah, Tallinn University of Technology

2.1. Introduction to UML: Use-Case Diagram

High School Graduation years 2013, 2014, Unit/Standard Number

Software Development in the Large!

Transcription:

Use Cases and Scenarios

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

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 Request an elevator How are the use cases found (captured or elicited)?

User Goals versus User Interactions Consider the following when formatting a document o Define a style o Change a style o Copy a style from one document to the next versus o Format a document o 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

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

Use-Case Diagrams (POST) POST: Point of Sale Terminal System Boundary POST Use Case Buy Item Log In Cashier Refund a Purchased Item Customer Adapted from Larman Applying UML and Patterns

Another Example Financial Trading System Set Limits Update Accounts Accounting System Trading Manager Analyze Risk Price Deal «includes» «includes» Valuation Trader Capture Deal «extends» Salesperson Adapted from Fowler UML Distilled Limit Exceeded

Includes and Extends Includes 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 includes it Examples include o Valuation o Validate user interaction o Sanity check on sensor inputs o 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 o Capture the normal behavior o Try to figure out what can go wrong in each step o Capture the exceptional cases in separate use-cases Makes it a lot easier to understand

Setting the System Boundary The system boundary will affect your actors and use-cases POST Buy Item Log In Cashier Adapted from Larman Applying UML and Patterns Refund a Purchased Item Customer MH

A Different Boundary Let us view the whole store as our system Store Buy Item Refund a Purchased Item Customer Adapted from Larman Applying UML and Patterns

Partial POST POST Buy Item Log In Cashier Refund a Purchased Item Customer Start Up Manage Users Manager System Administrator Adapted from Larman Applying UML and Patterns And a Lot More

POST Use-Case Use case: Actors: Type: Description: Buy Item Customer (initiator), Cashier Primary 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

POST Expanded Use-Case Use case: Actors: Type: Description: Buy Item Customer (initiator), Cashier Primary and essential 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 Ref.: Requirements XX, YY, and ZZ HERE Use-Cases: Cashier must have completed the Log In use-case

Home Heating System Image: http://www.heatingoil.com/ Image: http://www.homeheatingdr.com/

Home Heating System Temp Sensor Water Pump Water Valve Fuel Valve Hot Water Burner Controller Home 90 80 Off Fuel 70 On 60 50 Control Panel Temp Sensor

Home Heating Requirements The purpose of the software for the Home Heating System is to control the heating system that heats the rooms of a house. The software shall maintain the temperature of each room within a specified range by controlling the heat flow to individual rooms. The software shall control the heat in each room The room shall be heated when the temperature is 2F below desired temp The room shall no longer be heated when the temperature is 2F above desired temp The flow of heat to each room shall be individually controlled by opening and closing its water valve The valve shall be open when the room needs heat and closed otherwise The user shall set the desired temperature on the thermostat The operator shall be able to turn the heating system on and off The furnace must not run when the system is off

Home Heating Requirements The purpose of the software for the Home Heating System is to control the heating system that heats the rooms of a house. The software shall maintain the temperature of each room within a specified range by controlling the heat flow to individual rooms. When the furnace is not running and a room needs heat, the software shall turn the furnace on To turn the furnace on the software shall follow these steps open the fuel valve turn the burner on The software shall turn the furnace off when heat is no longer needed in any room To turn the furnace off the software shall follow these steps close fuel valve turn burner off

Home Heating Use-Case Diagram Home Heating Power Up Home Owner Power Down Change Temp.

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. If the water temp falls below threshold, the fuel valve is opened, and the burner ignited. If the temperature in all rooms is above the desired Cross Ref.: Use-Cases: temperature, no actions are taken. Requirements XX, YY, and ZZ None

Modified Home Heating Home Heating Power Up «includes» Temp. High Home Owner Power Down Change Temp. Adjust Temp «includes» «includes» «includes» Temp. Low

Modified: Home Heating Use-Cases Use case: Power Up Actors: Home Owner (initiator) Type: Primary and essential Description: The Home Owner turns the power on. Perform Adjust Temp. If the temperature in all rooms is Cross Ref.: Use-Cases: above the desired temperature, no actions are taken. Requirements XX, YY, and ZZ Perform Adjust Temp

Modified: Home Heating Use-Cases Use case: Adjust Temp Actors: System (initiator) Type: Secondary and essential Description: Check the temperature in each room. For each room below target, open room valve, start pump if not started. If water temp falls below threshold, Cross Ref.: Use-Cases: open fuel value and ignite burner. Requirements XX, YY, and ZZ Temp-Low, Temp-high

When to use Use-Cases In short, always!!! Requirements is the toughest part of software development Use-Cases is a powerful tool to understand o Who your users are (including interacting systems) o What functions the system shall provide o How these functions work at a high level Spend adequate time on requirements and in the elaboration phase