Rob Gleasure R.Gleasure@ucc.ie www.robgleasure.com IS3320 Developing and Using Management Information Systems Lecture 8: Use Cases and Scenarios Rob Gleasure.

Slides:



Advertisements
Similar presentations
CMSC 345, Version 9/07 S. Mitchell Use Cases Concepts, Specifications, and Diagrams.
Advertisements

CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
Agenda What is a Use Case? Benefits of the Use Cases Use Cases vs. Requirements document Developing the Use Case model System Actor Use Case Use Case.
Information System Engineering
Use Case modelling How to go from a diagram to a further definition.
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.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Use Case Modeling.
Use Cases Why use ‘em? How do they work? UC diagrams Using them later in the software development cycle.
Object-Oriented Analysis - Instructor Notes
Use Cases 2 ENGR ♯10 Peter Andreae
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
IS3320 Developing and Using Management Information Systems Lecture 9: Use Cases and Scenarios Rob Gleasure
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)
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 Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
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.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
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 Cases Discuss the what and how of use cases: Basics Examples Benefits Parts Stages Guidelines.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Use Case Analysis Chapter 6.
Rob Gleasure IS3320 Developing and Using Management Information Systems Lecture 15: Data-Flow Diagrams 2 – Level.
Rob Gleasure IS3320 Developing and Using Management Information Systems Lecture 11: Flow-Charts 1 Rob Gleasure
Chapter 7 Appendix A Object-Oriented Analysis and Design: Use Cases
CMPE 280 Web UI Design and Development August 29 Class Meeting
Use Case Modeling - II Lecture # 27.
Systems Analysis and Design in a Changing World, 6th Edition
Use Cases Discuss the what and how of use cases: Basics Benefits
Lec-5 : Use Case Diagrams
Storyboarding and Game Design SBG, MBG620 Full Sail University
Use Case Model.
Use Case Model Use case diagram.
UML Use Case Diagrams.
Rob Gleasure IS4445 Principles of Interaction Design Lecture 8: Use Cases and Storyboarding Rob Gleasure
Start at 17th March 2012 end at 31th March 2012
SE-565 Software System Requirements IV. Use Cases
Use Case Modeling.
Concepts, Specifications, and Diagrams
Unified Modeling Language
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Systems Analysis and Design in a Changing World, 6th Edition
Object Oriented Analysis and Design
Requirements Inc BA Training
IS0514 Lecture Week 3 Use Case Modelling.
Use Case Model Use case diagram – Part 2.
Using Use Case Diagrams
Use Case Modeling.
Rob Gleasure IS4445 Principles of Interaction Design Lecture 8: Use Cases and Storyboarding Rob Gleasure
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Object-Oriented Software Engineering
CS 420/620 HCI Use Case Modeling Project Preparation
Use Case Modeling Part of the unified modeling language (U M L)
CS 425 Software Engineering
CS 425/625 Software Engineering
Presentation transcript:

Rob Gleasure R.Gleasure@ucc.ie www.robgleasure.com IS3320 Developing and Using Management Information Systems Lecture 8: Use Cases and Scenarios Rob Gleasure R.Gleasure@ucc.ie www.robgleasure.com

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 Identify actors and use cases Construct a use case model Sequence specific uses identified Identify use case dependencies … 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 Some prompting questions for each actor include: What tasks does that actor want the system to help them perform? What information must that actor provide to the system? What information must that actor receive from the system? Are there events about which that actor must tell system? Are there events about which the system must tell that actor? 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?

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

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

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 Query opening Security staff hours Enter carpark Account system «includes» Driver Check account Exit carpark «extends» «includes» Reject account

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

Textual Use Case Specification Number 1: Enters Carpark Name Swipes In Summary Driver swipes card to enter carpark Priority 5 Preconditions Driver has registered for use of car park Postconditions Driver has entered carpark Primary Actor(s) Driver Secondary Actor(s) Accounts system

Textual Use Case Specification Number 1 Trigger Driver has chosen to enter carpark Main Scenario Step Action Driver swipes card 2 System checks account 3 System raises barrier 4 System asks driver to enter 5 Driver enters carpark 6 System updates records 7 System lowers barrier Extensions Branching Action 3a System determines account rejected 3b System asks driver to inquire with security Open issues What if another driver is blocking the driver in when their card is rejected?

Exercise In groups of 2-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.