Use Case Modeling 中国科学技术大学软件学院 孟宁 2011年9月.

Slides:



Advertisements
Similar presentations
From use cases to classes (in UML). A use case for writing use cases Use case: writing a use case Actors: analyst, client(s) Client identifies and write.
Advertisements

Use Case Diagrams Damian Gordon.
Use Case & Use Case Diagram
9/10/2004Use Case Workshop 1 CSC480 Software Engineering Workshop 1 Requirements Modeling.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
CS3773 Software Engineering Lecture 03 UML Use Cases.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
ATM User Interface Design. Requirements A bank customer is able to access his or her account using an automatic teller machine. To be able to use an ATM.
Tutorial 2. What is a UML Use Case Diagram? Use case diagrams model the functionality of a system using actors and use cases. Use cases are services or.
Interaction Diagrams Activity Diagram State Machine Diagram
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica Analyzing system processes: Use Case Diagram Updated.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica Analyzing systems process: Use Case Diagram.
What are Requirements? Functional requirements describe a list of functions that the system must accomplish. Nonfunctional requirements describe other.
Lecture 4 Class Responsibility Collaboration Cards
1 CS 425 Software Engineering Project Preparation Use Case Modeling [Based on Chapters 3 & 4, Arlow and Neustadt, “UML and the Unified Process,” Addison-Wesley,
Object Oriented Analysis Process
Modeling System Requirements with Use Cases
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Use Case Diagrams Week 1 – Lab 1.
USE Case Model.
Use Cases Yonglei Tao.
Chapter 3 Use Cases.
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.
Classification of UML Diagrams
Domain Modeling 中国科学技术大学软件学院 孟宁 2012 年 10 月 Domain Modeling ♦What: A process performed by the development teams to acquire domain knowledge. ♦Why: –Because.
The Unified Process Object Interaction Modeling and Design Class Diagram 中国科学技术大学软件学院 孟宁 2012年10月.
Chapter 8: Actor-System Interaction Modeling
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
Delivering the System 中国科学技术大学软件学院 孟宁 2012 年 11 月.
Key Takeaway Points A use case is a business process; it begins with an actor, ends with the actor, and accomplishes a business task for the actor. Use.
1 Object-Oriented Analysis Use Case Driven. 2 The outline method for OOA 1.Identify object classes within the problem domain 2.Define the behaviour of.
Use Case Diagram: Exercise 5 and 6 Yong Choi BPA CSUB.
The Requirement. What is Inception? What is the vision and business case for this project? –not to define all the requirements Feasible? Buy and/or build?
UML basics UML distilled, a brief guide to the standard Modeling language, by Martin Fowler, 2000.
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
1 CMPT 275 Software Engineering Requirements Gathering Activity Janice Regan,
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Black Box Testing Techniques Chapter 7. Black Box Testing Techniques Prepared by: Kris C. Calpotura, CoE, MSME, MIT  Introduction Introduction  Equivalence.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
NI ©UNITEN 2000/01 1 Faculty of Applied Engineering and Urban Planning Software Engineering Department Class Diagram Faculty of Information system Technology.
2131 Structured System Analysis and Design By Germaine Cheung Hong Kong Computer Institute Lecture 8 (Chapter 7) MODELING SYSTEM REQUIREMENTS WITH USE.
The Unified Process & Domain Modeling 中国科学技术大学软件学院 孟宁 2011 年 10 月.
Information Systems Analysis and Management Modeling Sys. Requirements with Use Cases Arnie Lund, Jeffrey Kim May 5, 2009 INFO380.
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
Requirements specification Why is this the first major stage of software development? –Need to understand what customer wants first Goal of requirements.
Requirements Management with Use Cases Module 3: Analyze the Problem Requirements Management with Use Cases Module 3: Analyze the Problem.
Business Process and Functional Modeling Teguh Sutanto, S.Kom.,M.Kom.
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
Chapters 10, 11 SSD (Revision) SD DCD Exam Object-Oriented Design.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
CSE5322 Fall 2011 Electronic OPMR Filing System(E-OPMR): TEAM 1 Patapatnam, Manasa Mannarkovil Subraman, Premchandran Doreswamy, Harsha Vyas, Kapil.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Chapter 3: Software Design –Use case Diagram Nouf Alghanmi.
TA: Shreya Rawal.  A use case is a description of a system’s behavior as it responds to a request that originates from outside of that system (Usually.
CMPE 280 Web UI Design and Development August 29 Class Meeting
ATM OO Design and Implementation Case Study
Storyboarding and Game Design SBG, MBG620 Full Sail University
UML Modeling Sequence diagram
Requirements Elicitation and Elaboration
Domain Testing White box testing – Checking code
Object Oriented Analysis and Design
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
Chapter 8: Actor-System Interaction Modeling
Presentation transcript:

Use Case Modeling 中国科学技术大学软件学院 孟宁 2011年9月

What Is a Use Case The key concept: A use case is a business process --- an abstraction of a business process A use case is initiated by (or begins with) an actor. A use case must accomplish a business task (for the actor). A use case must end with an actor --- the actor explicitly or implicitly acknowledges the accomplishment of the business task.

What Is an Actor An actor denotes a business role played by (and on behalf of) a set of business entities or stakeholders. Actors are not part of the system. Actors interact with the system. Actors are often human beings but can also be a piece of hardware, a system, or another component of the system. Actors initiate use cases, which accomplish business tasks for the respective actors.

Use Case Specification: 3 Levels of Abstraction We specify use cases at three levels of abstraction: 1) Abstract use case: using a verb and a noun phrase 2) High level use case: stating exactly when and where the use case begins and when it ends using TUCBW/TUCEW (This use case begins with/This use case ends with) 3) Expanded use case: describing step by step how the actor and the system interact to accomplish the business task using a two column table

Use Case Specification: 3 Levels of Abstraction Use Cases are classified into: Abstract use case, e.g.: Use Case: Initiate a call High level use cases, e.g.: This use case begins with (TUCBW) the caller picks up the phone and dials a number. This use case ends with (TUCEW) the caller hears the ring tone. Expanded Use Cases:

Expanded Use Case Actor: Caller System: Telco 1.TUCBW the caller picks up the handset from the phone base. 2. The system generates a dial tone. 3. The caller dials each digit of the phone number. 4. The system responds with a DTMF tone for each digit dialed. 5. The caller finishes dialing. 6. The system produces the ring tone. 7. TUCEW the caller hears the ring tone. system response actor input and actor action

Depicting use case contexts Use Case Modeling (e.g., Initiate a Call) abstract use cases Deriving use cases from requirements requirements planning phase incremental phase Defining use case scope abstract & high level use cases Example high level use case: TUCBW caller picks handset from base TUCEW caller hears the ring tone. Specifying actor- system interaction (expanded use cases) Depicting use case contexts

Steps for Use Case Modeling Step 1) Deriving (abstract) use cases from requirements Step 2) Describing when and where each use case begins and when it ends (high level use cases). Step 3) Depicting use case contexts according to subsystems/aspects using Use Case Diagrams. Step 4) Relating use cases, and actors if desired. Step 5) Specifying step by step how actor and system interact to accomplish the business task (for the actor) (expanded use cases). Steps 1)-4) are performed during the planning phase. Step 5 is performed during each increment.

Deriving Use Cases from Requirements In the requirements specification, look for verb noun phrases or verb-nouns that indicate “do something” “something must be done” or “perform some task” in the business domain. Verify the verb noun phrases using use case definition (next slide)

Verify the Use Cases Identified Verify the use cases identified using use case definition: (1) Is it a business process? y/n (2) Is it initiated by an actor? y/n (3) Does it end with an actor? y/n (4) Does it accomplish something useful for the actor? y/n All of the answers to the above questions must be “y”.

Identify Actor, System, & Subsystem From the requirements, identify also the actors, who initiate the tasks, or for whom the tasks are performed the system or subsystem that the use case belongs to

Example: Library System Requirements of a library system: System: Library System Actor: Patron Use Cases: UC1: Checkout Document UC2: Return Document

Use Case Diagram: Library Example system name use case actor Library System Checkout Document Return Document Patron association Search for Document system boundary

Class Exercises Ex 1. What are the use cases for the Vending Machine? Ex 2. Banking system. State two requirements for a banking system. Derive use cases from the requirements. Ex 3. 您的工程实践项目. State 3-5 requirements for your team project. Derive use cases from these requirements. Finish Requirements Analysis Document

High Level Use Case Definition: A high level use case specification is a description of when and where the use case begins and when it ends. It is formulated using third person, simple present tense: This Use Case Begins with (TUCBW) <when and where it begins>. This Use Case Ends with (TUCEW) <when it ends>.

High Level Use Case Example Use Case: Withdraw Money (from an ATM) TUCBW the ATM user inserts an ATM card into the card slot. TUCEW the ATM user receives the correct amount of cash and a withdraw slip. Use Case: Search for Programs TUCBW a SAMS user clicks the ``Search for Programs'' link on any of the SAMS pages. TUCEW the user sees a list of programs satisfying the search criteria.

Expanded Use Case describing step by step how the actor and the system interact to accomplish the business task using a two column table

谢谢大家! References Dr. David Kung University of Texas Arlington May 2010