Use Case Modeling. Watch the video on use cases Review at minute 2:41-3:37.

Slides:



Advertisements
Similar presentations
Chapter 4: Requirements Engineering
Advertisements

Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Use Cases CS/SWE 421 Introduction to Software.
CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
Use Case & Use Case Diagram
Use Case Model. C-S 5462 Use case model describes what the user expects the system to do –functional requirements may describe only the functionalities.
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must.
Uml and Use Cases CS 414, Software Engineering I Mark Ardis Rose-Hulman Institute January 9, 2003.
Use Case Systems Analysis & DesignUse Case1 Use case refers to A system’s behavior (functionality) A set of activities that produce some output.
Requirements Engineering
Analysis Modeling Dynamic Modeling. Requirements analysis Results in static and dynamic models – Scenario models: use cases (static), swimlane diagrams.
Unified Modeling Language 7/12/2015B.Ramamurthy1 The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson, and Jim Rumbaugh.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH 1 Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 More on use cases System sequence.
USE Case Model.
1.  Modeling the context of a system  Modeling the requirements of a system 2.
From Problem Statement to Design
Requirements Spec Revisited Dan Fleck. Responsibility - if you don’t do well in class, who’s problem is it?
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
OBJECT ORIENTED METHODOLOGIES Week04. Agenda… © Jerry Kotuba SYST39409-Object Oriented Methodologies 2  This week  Quiz 1  Take up ICE-01  Check “Grade.
Interaction Modeling. Introduction (1) Third leg of the modeling tripod. It describes interaction within a system. The class model describes the objects.
1 Source: IBM Academic Program IBM Software Group ® Mastering Requirements Management with Use Cases Module 3: Introduction to Use-Case Modeling.
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Use Cases CS/SWE 421 Introduction to Software.
Use Cases 1. Last week  Introduction to software engineering  How is it different from traditional engineering?  Introduction to specification  Operational.
Faculty of Computer & Information Software Engineering Third year
Requirements Analysis via Use Cases SE-2030 Dr. Rob Hasker 1 Based on slides written by Dr. Mark L. Hornick Used with permission.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
COMP106 Assignment 2 Proposal 1. Interface Tasks My new interface design for the University library catalogue will incorporate all of the existing features,
Faculty of Computer & Information
Kyung Hee University System Functional Model OOSD 담당조교 석사과정 이정환.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
1 Objectives  Define key concepts of use-case modeling.  List the benefits of use-case modeling.  Find actors and use cases.  Describe their relationships.
1 Use Case Modeling Reference: RUP Doc. Use Case Example 2.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
CPSC 203. Use Case Diagram  A description of a system’s behavior as it responds to a request that originates from outside of that system. Specifies the.
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.
(c) Addison Wesley Copyright © 2000 by Addison Wesley Version 1.0
Requirements specification Why is this the first major stage of software development? –Need to understand what customer wants first Goal of requirements.
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Use Cases CS/SWE 421 Introduction to Software.
UML (Unified Modeling Language)
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Use Case Diagrams. Introduction In the previous Lecture, you saw a brief review of the nine UML diagrams. Now that you have the clear, you'll start to.
Chapter 3: Software Design –Use case Diagram Nouf Alghanmi.
1 After the scenarios are formulated Find all the use cases in the scenario Describe each of these use cases in more detail Participating actors Describe.
UC Diagram & Scenario RKPL C & D. Using Use Case Diagram Use case diagrams are used to visualize, specify, construct, and document the (intended) behavior.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
Software Engineering USE CASE DIAGRAM.
1 Use Cases Object-Oriented Modeling and Design with UML (Second Edition) Blaha & Rumbaugh Sections 7.1, 8.1.
Using Use Case Diagrams
Requirements Spec Revisited
CMPE 280 Web UI Design and Development August 29 Class Meeting
ATM OO Design and Implementation Case Study
Use Case Model.
Subject Name: Object oriented Modeling and Design
UML Use Case Diagrams.
Analysis Modeling Dynamic Modeling.
Requirements – Scenarios and Use Cases
Concepts, Specifications, and Diagrams
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Software Design Lecture : 15.
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Using Use Case Diagrams
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Interaction Modeling Extracted from textbook:
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Use Case Modeling Part of the unified modeling language (U M L)
Use Cases CS/SWE 421 Introduction to Software Engineering Dan Fleck
Presentation transcript:

Use Case Modeling

Watch the video on use cases Review at minute 2:41-3:37

Use Cases are one way to capture requirements A visual way to capture functional requirements Each bubble is a discrete user goal Actors can be people, or external systems Each bubble is mapped to a textual description

Use Case Description See example on class schedule Include basic and alternate/exception flows – Each alternate flow must start at a step in the basic flow, and may return to a step in the basic flow – Exception flows are analogous to exceptions in code Includes versus preconditions Do not use language that hints at implementation details or system interactions – Avoid click, press, type, button, etc. – Unnecessarily limits creativity

Use Case Diagrams Made up of three components – Actors (people or external systems) – Use Cases (with textual descriptions) – Relationships Authorized Staff Worker Teacher Student Record class gradesReview Transcripts

First, identify actors Who or what will provide input to the system? Who or what will need output from the system? Exercise: identify three actors for an ATM

Answer: identify three actors for an ATM Customer Database (for account information, etc) – this is an external system Maintenance person

Relationships between actors One can be a specialization of another Actors are classes, not individual people Student Graduate Student

Next, identify user goals User Goals are statements that represent what the users need to accomplish, independent of specific software features – “Buy a book” – “Return a book” – “View order history” – “Record a log for a transaction” Exercise: identify five uses cases for an ATM

Answer: identify five use cases for an ATM Authenticate user Withdraw funds Deposit funds Check balance Transfer funds Load bills etc Each would be a bubble in diagram

Finally, add relationships Three types of relationships for use cases: Includes Extends Generalization

Includes relationship One use case can invoke the behavior of another – arrow goes toward included use case Not always, but often a precursor – I.e. the “Buy a book” use case includes the “Authenticate customer” Teacher Alter Student Grade Record Grades for a Section >

Extends Relationship Similar to the includes, but used for handling an abnormal situation – arrow goes toward extended use case Authorized Staff Worker Alter Student Grade Alter student grade for a class taken more than a year ago >

Generalization Relationship Replaces generic functionality with an concrete implementation – arrow goes toward extended use case User Authenticate user Authenticate by card swipe Authenticate by iris scan

Why Use Cases? Visual representation easy to understand Relationships are opportunities for reuse Use case descriptions can be basis for testing Can be the basis for planning and scheduling

Quiz review What is a single use case? What is a use case description? What is a use case diagram? What is an actor? What is a relation? – includes relation? – extends relation? – generalization relation? – which way does the arrow go?

In-class Exercises Complete the ATM use case diagram – use each type of relation at least once Complete the use case description for the Withdraw Funds use case for the ATM Complete the exercises at: Due at beginning of next class

In-class Exercises (time permitting) Examine the Quiz Game description In your teams, come up with at least seven use cases; – At least three actors – At least one of each type of relationship – Complete a use case description for each use case Turn in this assignment through svn – See instructions, rubric, and details on project page