Requirements Analysis 4. 1 Use Case I - 2005b504.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Use-Cases.

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

CMSC 345, Version 9/07 S. Mitchell Use Cases Concepts, Specifications, and Diagrams.
CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
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.
ATM Case Study A Discussion.
CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must.
IBM Software Group ® Use Cases & System of Systems Ivar Jacobson IBM Rational Jaczone AB
CS3773 Software Engineering Lecture 03 UML Use Cases.
Use Case Diagram © copyright 2001 SNU OOPSLA Lab..
The Unified Software Development Process - Workflows Ivar Jacobson, Grady Booch, James Rumbaugh Addison Wesley, 1999.
COMP1007 Intro to Requirements Analysis © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Intro to Requirements Analysis Object Oriented.
Requirements Analysis 8. 1 Storyboarding b508.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Human.
Intro to Systems Requirements COMP1007 © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Introduction to Systems Requirements Use-Cases.
Requirements Analysis 5. 1 CASE b505.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis CASE Computer.
Requirements Analysis 1. 1 Introduction b514.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Objects,
Use Cases & Requirements Analysis By: Mostafa Elbarbary.
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
Documenting Requirements using Use Case Diagrams
Requirements Analysis Classes & Associations b510.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis.
Object Oriented Analysis Process
COMP1007 Intro to Systems Requirements © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Intro to System Requirements Lecture 2 Use-Cases.
COMP1007 Intro to Systems Requirements © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Intro to Systems Requirements Lecture 4 Identifying.
Requirements Analysis 9. 1 OO Concepts b509.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Object.
Requirements Analysis Classes & Associations b510.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis.
Copyright  Larry Dribin, Ph.D. SE470_EngFlows_v1.ppt SE470 EngFlows - 1 Excellence in Software Engineering Repeatable Level Defined Level Manage.
Requirements Analysis Activity Diagrams b511.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis.
03/12/2001 © Bennett, McRobb and Farmer Use Case Diagrams Based on Chapter 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
COMP1007 Introduction to Requirements Analysis © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Introduction to Requirements Analysis.
Use Case Diagram.
Use Case Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
Chapter 7: The Object-Oriented Approach to Requirements
Use Case Analysis SWENET REQ3 Module July 2003
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
10/12/ Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 1. Interviews & questionnaires.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Chapter 6 A Use-Case-Driven Process. 2 Definitions The choice of models and the choice of techniques used to express them have a significant impact on.
 A software application is like a city  Modeling = Architecture  OOP = Civil Engineering  UML Classes = Blueprints of Buildings  UML is a common.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
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.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Analysis Modeling CpSc 372: Introduction to Software Engineering
CSC480 Software Engineering Lecture 8-9 September 20, 2002.
CMSC 345 Use Cases. u Describes the system’s behavior under various conditions as the system responds to a request from one of the stakeholders, called.
UML (Unified Modeling Language)
Session 5 Object Model Development. OOAD with UML / Session 5 / 2 of 19 Review A class icon is a rectangle with three sections within it An object is.
OO DomainModeling With UML Class Diagrams and CRC Cards Chapter 6 Princess Nourah bint Abdulrahman University College of Computer and Information Sciences.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
1 Advanced DataBases Unified Modelling Language An Introduction and Use Case Lecture 2 Susan Curtis.
Welcome to M301 P2 Software Systems & their Development
Use Case Modeling - II Lecture # 27.
Evolution of UML.
Use Case Model.
OO Domain Modeling With UML Class Diagrams and CRC Cards
Concepts, Specifications, and Diagrams
Introduction to UML.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Presentation transcript:

Requirements Analysis 4. 1 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Use-Cases I Department of Information Systems

Requirements Analysis 4. 2 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Learning Objectives v Introduce the concept of use cases v Examine various styles of specification for use cases v Use cases and RUP v Consider the use of generalisation. v Identify some of the problems with use cases

Requirements Analysis 4. 3 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases v Developed at Ericsson by Ivar Jacobson to help build long-lived, flexible telecoms systems v Premise: “the most volatile part of a system is its users’ behaviour” v Conclusion: “Model systems from the point of view of its interactions with its users” v Use cases were part of the Objectory method (OOSE), and now in UML

Requirements Analysis 4. 4 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases v A Use Case is a textual “description of a set of sequences or actions (that a system performs) that yields an observable result of value to a particular actor ” –An Actor is a User in a role –Users need not be human, can be other systems, devices, subsystems etc.

Requirements Analysis 4. 5 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases v Use Cases may also be represented diagrammatically. v The use case specification need not be purely textual but may include state charts, activity diagrams, collaboration diagrams and sequence diagrams.

Requirements Analysis 4. 6 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use case diagram The elements of a use case may surrounded by a rectangle that represents the containing systems or classifier ActorUse case

Requirements Analysis 4. 7 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Actors and Use Cases v Actors “They represent everything that needs to exchange information with the system. Since the actors represent what is outside the system, we do not describe them in detail.” v Use Cases “When a user uses the system, she or he will perform a behaviorally related sequence of transactions in a dialogue with the system. We call such a special sequence a use case.” Jacobson, p.127.

Requirements Analysis 4. 8 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases & Instances v Use cases may involve several processes, but the users expect to be able to carry them all out together. v Use cases represent the general description of what happens when an actor performs a particular task with the system. v Each particular use of a use case is a use instance and each instance may take a different route through use case.

Requirements Analysis 4. 9 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases - applicability v Use cases represent the functionality of system or classifier such as subsystem or class. v A classifer is –A mechanism that describes behavioral and structural features. Classifiers include interfaces classes, datatypes, and components. RUP 2000

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases - applicability v This new definition (UML v1.3) of a Use Case gives it a wider role than its previous “system-level” definition v Use cases can also be used to describe “business processes” –As Jacobson suggests in The Object Advantage ?

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case Descriptions v Each Use Case has additional details entered in the data dictionary which describe it. v This includes a text description and a list of the Actors who use it.

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case Specification Rational Rose 2000

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved An Example Use Case Diagram Deposit Money Withdraw Money Transfer Between Accounts Bank Customer An ATM application which offers three use cases is shown. The possible use of a use case by an Actor (Bank Customer in the example below) is shown by an association linking the actor and the use case.

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Example Use Case Specification for Withdraw Money “ The Bank Customer enters her card and is asked to enter her pin number. The ATM verifies her ID with the system. If the ID is verified, the ATM asks the Bank Customer to select an option. If the withdraw option is selected the ATM asks the Customer to enter the amount to be withdrawn from Account. The ATM requests the withdrawal amount from the banking system. The system asks the Account to validate the request and, if possible, withdraws the amount. The system then asks the Dispenser to dispense the appropriate amount.”

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Alternative Specification for Withdraw Money The use case can also be shown as a step by step breakdown of action between the actor and the system (or classifier to be precise).

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case Formats v The format used for WithdrawMoney is described by Alaistair Cockburn as the ‘casual form’ in Writing Effective Use Cases. v He describes various formats - format used should reflect the needs of the project.

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case Formats v Context of use v Scope v Level: Summary, User-goal, Subfunction v Primary Actors v Stakeholders & Interests Cockburn, Alistair, Writing Effective Use Cases

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case Formats v Precondition v Minimal Guarantees v Success Guarantees v Trigger v Main Success Scenario v Extensions v Technology and Data Variations List v Related Information Cockburn, Alistair, Writing Effective Use Cases

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Class Discussion: Use Cases MakesSaleOf _StockItem CheckOutOperator Customer Which is right… and why ?

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Generalisation v ‘A generalization from an actor A to an actor B indicates that an instance of A can communicate with the same kind of use case instances as an instance of B.’ - UML 1.3 v For example, the Manager actor can communicate with the same use cases as the StaffMember actor

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Generalization - Actors Actor B Actor A Generalization Multiplicity

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Cases - Multiplicity v The multiplicity on the previous diagram shows the multiplicity between actor instances and use case instances. –Eg. A Manager instance may communicate with zero or more instances of the RecordSick use case –An instance of RecordSick may be communicated from only one Manager instance

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case-driven Development v Use cases drive the whole development process in the RUP. –The result of the requirements workflow. –The basis of decisions regarding architecture and component identification and design. –Source for analysis and design use case realisations (i.e. the models involved). –The basis of test scripts and test procedures. –The foundation of what is described in the user manuals.

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Use Case-driven Development v Using use cases involves –Problem statement and/or domain information is mapped to Use Case specification and diagrams –Candidate classes are extracted from Use Cases –Collaboration diagram developed to show collaborations –Class diagram(s) are built up.

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Problems with Use Cases v How broad is a Use Case? v How deep is a Use Case? v How many Use Cases should there be in some typical system? v Can be confused with DFDs v Can lead to “main” sub-programs through misinterpretation of “control” objects

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved Summary v Introduce the concept of use cases v Examine various styles of specification for use cases v Use cases and RUP v Consider the use of generalisation. v Identify some of the problems with use cases

Requirements Analysis Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved References v Cockburn, Alistair, Writing Effective Use Cases, Addison-Wesley, 2000 v Bennett, S., McRobb, S. & Farmer, R. Object-Oriented Systems Analysis and Design using UML McGraw-Hill 1999, (Ch 5) v Jacobson, I., Booch, G. and Rumbaugh, J. (1999), The Unified Software Development Process, Addison-Wesley, Reading Mass. (Ch 7) v Jacobson I, Christerson M, Jonsson P and Overgaard G (1992), Object-Oriented Software Engineering: A Use Case Driven Approach. (Ch 6) v Rational Unified Process 2000