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.

Slides:



Advertisements
Similar presentations
Writing Good Use Cases - Instructor Notes
Advertisements

OOAD – Dr. A. Alghamdi Mastering Object-Oriented Analysis and Design with UML Module 3: Requirements Overview Module 3 - Requirements Overview.
Object-Oriented Analysis and Design Evolutionary Requirements.
Use Case Diagrams Damian Gordon.
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 cases.
Information System Engineering
Use Case Diagram © copyright 2001 SNU OOPSLA Lab..
Use-case Modeling.
Use Case modelling How to go from a diagram to a further definition.
Use Case Modeling Written by: Zvika Gutterman Adam Carmi.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Use Case Modelling.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Use Case Modeling.
USE Case Model.
Use Cases Why use ‘em? How do they work? UC diagrams Using them later in the software development cycle.
Requirements Elicitation. Requirement: a feature or constraint that the system must satisfy Requirements Elicitation: specification of the system that.
UML REVIEW –PART1 1. Introduction What is UML visual modelling language UML is a language not a methodology? Q: why is this distinction important? UML.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Prepared by Afra`a Sayah. Introduction. Weekly Tasks. Plane Phase. Analysis Phase. Design Phase. Report Rules. Conclusion. 2.
Use Case Modeling. What is use case modeling? Core concepts Diagram tour When to model use cases Modeling tips Example: Online HR System.
Chapter 6 Use Cases. Use Cases: –Text stories Some “actor” using system to achieve a goal –Used to discover and record requirements –Serve as input to.
Requirements Artifacts Precursor to A & D. Objectives: Requirements Overview  Understand the basic Requirements concepts and how they affect Analysis.
Use Cases 7/09. lnot part of the system lrepresents roles a user can play lrepresents a human, a machine or another system lactively exchanges information.
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
 A software application is like a city  Modeling = Architecture  OOP = Civil Engineering  UML Classes = Blueprints of Buildings  UML is a common.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Writing Requirements the Use-Case Way Sreeram Kishore Chavali.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
1 Use Case Diagrams Use Case Actor Use case description Use case realization (Scenario) Use case relationships –Extends –Uses.
1 Structuring Systems Requirements Use Case Description and Diagrams.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Requirements Overview.
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.
1 Modeling System Requirements with Use Cases. 2 Why Do We Need Use Cases? Primary challenge in a system design process –ability to elicit correct and.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Use Case Model Use case diagram. Relevant Requirements Artifacts Use-Case Model Supplementary Specification Use-Case Specifications... Glossary Actors.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Systems Analysis and Design in a Changing World, Fourth Edition
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Use Cases CS/SWE 421 Introduction to Software.
Essentials of Visual Modeling w/ UML Instructor Notes
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
USE CASE Pertemuan 7 Matakuliah: Konsep object-oriented Tahun: 2009.
UML - Development Process 1 Software Development Process Using UML.
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.
Page 1  Copyright © 1997 by Rational Software Corporation Putting the UML to Work The ESU University wants to computerize their registration system –
ACO 101: Use cases What do the users do?. When building a system You begin with the Use Case Analysis – When looking at the system as a whole, Use Case.
UC Diagram & Scenario RKPL C & D. Using Use Case Diagram Use case diagrams are used to visualize, specify, construct, and document the (intended) behavior.
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.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Systems Analysis and Design in a Changing World, Fourth Edition
Using Use Case Diagrams
Lec-5 : Use Case Diagrams
Chapter 5 유스케이스 개요 Introduction to Use Cases
Use Case Model.
Use Case Model Use case diagram.
Use Case Modeling.
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Object Oriented Analysis and Design
Software Design Lecture : 15.
Use Case Model Use case diagram – Part 2.
Using Use Case Diagrams
Use Case Modeling Part of the unified modeling language (U M L)
Presentation transcript:

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 Work like a contract between end user and software developers

What it Does? Models the system’s intended functions (use cases) and its surroundings (actors). Defines the outside (actors) and inside (use case) of the system’s behaviour. The same use case diagram is used in requirement analysis, design, implementation and testing.

Elements Actor Represents anything that interacts with the system Use case A sequence of actions a system performs that yields an observable result of value to a particular actor

Use Case Diagram (core components) Actors: A role that a user plays with respect to the system,including human users and other systems. e.g.,inanimate physical objects (e.g. robot); an external system that needs some information from the current system. Use case: A set of scenarios that describing an interaction between a user and a system, including alternatives. System boundary: rectangle diagram representing the boundary between the actors and the system.

Actor Actors are not part of the system. The represent roles a user or the system can play. An actor may actively interchange information with the system. An actor may be a passive recipient of information. An actor can represent a human, a machine or another system. An actor represents a category or a type of a user rather than a physical user.

Finding Actors Who is interested in certain requirement? Where in the organisation is the system used? Who will supply the system with this information, use this information, remove this information? Who will use this function? Who will support and maintain the system? Does the system use an external resource? What actors do the use case need? Does one actor play several different roles? Do several actors play the same role?

Use Case A use case models a dialogue between actors and the system. A use case is initiated by an actor to invoke a certain functionality in the system. A use case is a complete and meaningful flow of events. Taken together, all use cases constitute all possible ways of using the system.

Finding Use Cases What are the tasks of this actor? Will the actor create, store, change, remove or read information in the system? What use case will create, store, change, remove or read this information? Will the actor need to inform the system about sudden, external changes? Does the actor need to be informed about certain occurrences in the system? Does the system supply the business with the correct behaviour? What use cases will support and maintain the system? Can all functional requirements be performed by the use cases?

Sources of Informationfor Use Cases System specification/problem statement Domain relevant literature Interviews with domain expert Personal knowledge of the domain Legacy systems

Use Case Diagram

Use Case Relationship Association: communication between an actor and a use case; Represented by a solid line. Generalization: relationship between one general use case and a special use case (used for defining special alternatives); Represented by a line with a triangular arrow head toward the parent use case.

Use Case Relationship … Include: a dotted line labeled > beginning at base use case and ending with an arrows pointing to the include use case. The include relationship occurs when a chunk of behavior is similar across more than one use case. Use “include” in stead of copying the description of that behavior Extend: a dotted line labeled > with an arrow toward the base case. The extending use case may add behavior to the base use case. The base class declares “extension points”.

Use Case Diagram

Diagram Explanation Pay Bill is a parent use case and Bill Insurance is the child use case (generalization). Both Make Appointment and Request Medication include Check Patient Record as a subtask (include). The extension point is written inside the base case Pay bill; the extending class Defer payment adds the behavior of this extension point (extend).

Use Case Documentation Use cases are documented in A brief description The purpose of the use case in a few lines Detailed flow of events Description of the primary and alternate flow of events that occur when the use case is initiated Both documents are written using the terms that the customer understands.

Flow of Events Each use case Has one normal, basic sequence of transactions. May have several alternative sequences of transactions. Usually has several exceptional sequences of transactions handling erroneous situations. May also have well defined pre- and post-conditions.

Flow of Events … Describe only the events that belong to the use case. Avoid vague terminologies. Should describe How and when the use case starts and ends When the use case interacts with the actors What information is exchanged between an actor and the use case Do not describe the details of the user interface The basic flow of events Any alternate flow of events

Use Case Documentation is for … Customers – approve what the system should do. Users – gain system understanding. System developers – document system behaviour. Reviewers – examine the flow of events. System analysts – provide the basis for analysis and design System tester – used as a base for test cases. Project leader – provide input to project planning. Technical writer – basis for writing the user manual.

Course Registration Example

Scenarios A scenario is an instance of a use case It is one flow through a use case Each use case will have a web of scenarios Primary scenarios (happy day scenarios) Secondary scenarios (rainy day scenarios)

Register for Courses Use Case Scenario John enters the student ID number and the system validates the number. The system asks which semester. John indicates the current semester and chooses to create a new schedule. From a list of available courses, John selects the primary courses English 101, Geology 110, World History 200 and College Algebra 110. He then selects the alternate courses Music Theory 110 and Introduction to Java Programming 180.

Register for Courses Use Case Scenario … The system determines that John has all the necessary prerequisites and adds him to the course rosters. The system indicates that the activity is complete. The system prints the student schedule and sends billing information for four courses to the billing system for processing.

Secondary Scenario Some possible secondary scenarios are: Student does not select 4 primary courses Primary course is not available Primary and secondary courses are not available Cannot add student to the course roster Cannot create the student schedule

How many scenarios? As many as needed to understand the system. Rule of thumb: 80% of the primary scenarios Few of the interesting and high risk secondary scenarios