IS3320 Developing and Using Management Information Systems Lecture 9: Use Cases and Scenarios Rob Gleasure

Slides:



Advertisements
Similar presentations
CMSC 345, Version 9/07 S. Mitchell Use Cases Concepts, Specifications, and Diagrams.
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.
Information System Engineering
CS3773 Software Engineering Lecture 03 UML Use Cases.
 Need to Gather requirements and other related information  Use case Modeling ◦ What the system will do for the users.
CT1404 Lecture 2 Requirement Engineering and Use Cases 1.
Use-case Modeling.
Documenting Requirements using Use Case Diagrams
Use Case Analysis Chapter 6.
Use Case Modelling.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Requirements Analysis 2 What objects collaborate to achieve the goal of a use case?
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Use Case Modeling.
03/12/2001 © Bennett, McRobb and Farmer Use Case Diagrams Based on Chapter 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
USE Case Model.
Use Cases Why use ‘em? How do they work? UC diagrams Using them later in the software development cycle.
CMIS 470 Structured Systems Design
Object-Oriented Analysis - Instructor Notes
Use Cases 2 ENGR ♯10 Peter Andreae
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Use Cases 1. Last week  Introduction to software engineering  How is it different from traditional engineering?  Introduction to specification  Operational.
Use Cases Week 8 CMIS570. Refresher – Class Diagrams Appointment scheduling example Car Rental example E-Commerce example.
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
UML – Unified Modeling Language Use-Case Diagrams.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
1 Use Case Diagrams Use Case Actor Use case description Use case realization (Scenario) Use case relationships –Extends –Uses.
Use Case Modeling Chapter 7 Part of Requirements Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
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 Model Use case diagram.
Use Case Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
IS3320 Developing and Using Management Information Systems Lecture 10: Use Cases and Scenarios 2: The case of Threadless Rob Gleasure
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Behavior Modeling (based on Alistair Cockburn book) PA116 – L11 (c) Zdenko Staníček, Sept 2010.
Rob Gleasure IS3320 Developing and Using Management Information Systems Lecture 13: Flow-Charts 1 Rob Gleasure
Unit 3 Functional Requirements. Syllabus Introduction Features and usecases Use case Scenarios Documenting use cases Levels of details SRS Document.
Week IV in SOS  Tuesday Project Time -- 4:15pm-5pm URL for project(s) due to Judy by Friday 5pm  Friday Paper  OOAD Handouts thru last Thursday (see.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
UML (Unified Modeling Language)
USE CASE Pertemuan 7 Matakuliah: Konsep object-oriented Tahun: 2009.
Use Case Model Use case description.
U SE C ASE OF C AR M ATCH Course Instructor: Rizwana Noor.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
25/2/16. 2 DVD MovieVHS MovieVideo Game Rental Item Rental Invoice 1..* 1 Customer Checkout Screen CusID Name Address Phonenumber Transactionlist.
Chapter 3: Software Design –Use case Diagram Nouf Alghanmi.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
George Wang, Ph.D. COMP 380/L Lesson 2. Use Case Use cases are a way to capture system functionalities (i.e., functional requirements) Based on use case.
Use Case Diagrams A Detailed Description. Use Case Diagrams Use case diagrams describe relationships between users and use cases A use case is a (usually.
1 Team Skill 3 Defining the System Part 1: Use Case Modeling Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and.
Use Case Analysis Chapter 6.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Systems Analysis and Design in a Changing World, 6th Edition
Storyboarding and Game Design SBG, MBG620 Full Sail University
Use Case Model Use case diagram.
UML Use Case Diagrams.
Rob Gleasure IS3320 Developing and Using Management Information Systems Lecture 8: Use Cases and Scenarios Rob Gleasure.
Rob Gleasure IS4445 Principles of Interaction Design Lecture 8: Use Cases and Storyboarding Rob Gleasure
Concepts, Specifications, and Diagrams
Systems Analysis and Design in a Changing World, 6th Edition
Object Oriented Analysis and Design
Use Case Model Use case diagram – Part 2.
Rob Gleasure IS4445 Principles of Interaction Design Lecture 8: Use Cases and Storyboarding Rob Gleasure
Object-Oriented Software Engineering
Presentation transcript:

IS3320 Developing and Using Management Information Systems Lecture 9: Use Cases and Scenarios Rob Gleasure

IS3320 Today’s lecture  What is a Use Case?  Use Case Diagrams  Exercise

What is a Use Case? A use-case describes the contact between some stakeholders (actors) and the system This actor can be a person, or another system, and are sometimes conceptualised in two categories  Primary actors – those actors who initiate the interaction to achieve some goal  Secondary actors – other actors involved in the interaction sequence making up the system’s response When the system responds, different sequences of behaviors, or scenarios, can unfold. The use case gathers these scenarios together in one view.

Why would we do this? Ability to stay user-centred in our design  Means we can capture functional requirements* from the users' perspective Ability to communicate  Means we can involve users in the requirements-gathering process and share one view of a system’s functionalities Ability to abstract  Means we can identify major classes (sets) of usage scenarios and their relationships Ability to tie testing back to key requirements  Means that later we can test the system according to the scenarios we already identified as of most importance

The Use Case Design process The process of constructing a use case model is basically as follows 1. Identify actors and use cases 2. Construct a use case model 3. Sequence specific uses identified 4. Identify use case dependencies 5. … more stuff

Identifying actors Who will be interacting with the system generally? What about secondary tasks of maintenance and administration? Will the system interact with other systems? Clear and differentiated role names, typically NOT person names (e.g. ‘stock manager’, not ‘Mary’)

Identifying use cases For each actor  What tasks does that actor want the system to perform?  What information must that actor provide to the system?  What information must that actor receive from the system?  Are there events that actor must tell system about?  Are there events the system must tell that actor about?  Does that actor help initialize or shut down the system?

An example Imagine the UCC main car park entered at the back of the university  A Driver has to be registered on the system with a swipe card, which they then use to swipe in and out. There is also a security hut where issues with swipe cards can be resolved and unusual circumstances handled What actors do we have? What use cases are associated with each actor?

We may then consider drawing a use case diagram Use Case Diagrams Driver Enters carpark Actor represented by a stickperson Interaction represented by an oval shape Associates actor with interaction

Use Case Diagrams Driver Exit carpark Box around use cases to signify system boundary Enter carpark Opening hours query Security staff CARPARK

Includes and Extends Includes If you have a piece of behaviour that is similar across many use cases, you should create this as a separate use-case and let the other ones “include” it e.g. ‘check if user logged in’ Extends Store the basic behaviour in one use-case and let specific exceptional cases add additional behaviour as necessary e.g. ‘user account overdue’

Use Case Diagrams Driver Enters carpark Opening hours query Checks account Security staff «includes» Account rejected «extends» Account system Exits carpark «includes»

Textual Use Case Specification From A. Cockburn, “Basic Use Case Template” Number Name Summary Priority Preconditions Postconditions Primary Actor(s) Secondary Actor(s) Trigger Main ScenarioStepAction ExtensionsStepBranching Action Open issues

Textual Use Case Specification Number1: Enters Carpark NameSwipes In SummaryDriver swipes card to enter carpark Priority5 PreconditionsDriver has registered for use of car park PostconditionsDriver has entered carpark Primary Actor(s)Driver Secondary Actor(s)Accounts system

Textual Use Case Specification Number1 TriggerDriver has chosen to enter carpark Main ScenarioStepAction 1Driver swipes card 2System checks account 3System raises barrier 4System asks driver to enter 5Driver enters carpark 6System updates records 7System lowers barrier ExtensionsStepBranching Action 3aSystem determines account rejected 3bSystem asks driver to inquire with security Open issues1What if another driver is blocking the driver in when their card is rejected?

Exercise In groups of 3  Create a use case diagram for Blackboard  Create a textual use case specification for a student searching for class notes

Want to read more? Cockburn, A., Writing Effective Use Cases. New York: 2001, Addison-Wesley.