Use Case Diagram © copyright 2001 SNU OOPSLA Lab..

Slides:



Advertisements
Similar presentations
Use Case & Use Case Diagram
Advertisements

Chapters 7 & 9 System Scope
Chapter 7 Structuring System Process Requirements
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.
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
 Need to Gather requirements and other related information  Use case Modeling ◦ What the system will do for the users.
Use-case Modeling.
Use Case Modeling Written by: Zvika Gutterman Adam Carmi.
Documenting Requirements using Use Case Diagrams
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Unified Modeling Language 7/12/2015B.Ramamurthy1 The Unified Modeling Language™ (UML) was developed jointly by Grady Booch, Ivar Jacobson, and Jim Rumbaugh.
Use Case Analysis – continued
Unified Modeling Language
Chapter 7 Structuring System Process Requirements
USE Case Model.
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.
Object-Oriented Analysis - Instructor Notes
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Faculty of Computer & Information Software Engineering Third year
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.
Faculty of Computer & Information
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
A Use Case Primer 1. The Benefits of Use Cases  Compared to traditional methods, use cases are easy to write and to read.  Use cases force the developers.
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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Slide 1 Use Case Diagrams.
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.
Drawing System Sequence Diagrams
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.
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.
SWE © Solomon Seifu Lesson 3 Fundamentals of OO & UML.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
New Perspective Based on how the system is used. What Is a Use Case? A case of how the system is used. –A behaviourally related sequence of interactions.
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
Domain Model A representation of real-world conceptual classes in a problem domain. The core of object-oriented analysis They are NOT software objects.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
UML (Unified Modeling Language)
USE CASE Pertemuan 7 Matakuliah: Konsep object-oriented Tahun: 2009.
UML - Development Process 1 Software Development Process Using UML.
CS223: Software Engineering
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
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.
Business Process and Functional Modeling
Welcome to M301 P2 Software Systems & their Development
Chapter 5 System modeling
Systems Analysis and Design in a Changing World, 6th Edition
Use Case Model.
Use Case Model Use case diagram.
Object-Oriented Analysis Principles using UML
Start at 17th March 2012 end at 31th March 2012
Unified Modeling Language
Systems Analysis and Design in a Changing World, 6th Edition
UML: Unified Modeling Language
Chapter 9 Use Cases.
Object Oriented Analysis and Design
Unified Modeling Language
Software Development Process Using UML Recap
Presentation transcript:

Use Case Diagram © copyright 2001 SNU OOPSLA Lab.

Contents - All Introduction to UML Use Case Diagram Class & Object Diagram Interaction Diagrams State & Activity Diagram Implementation Diagrams

Contents – Use Case Diagram What are Use Cases What are Actors Actor Relationships Use Case Scenario Use Case Relationships Use Case Diagram

Use Case Modeling Use Cases Actors Relationships

What are Use Cases People used typical scenarios to help them understand requirements These scenarios were treated very informally – always done but rarely documented Ivar Jacobson raised the visibility of the use case

What are Use Cases Deposit money … … actor use case (complete functionality) system

What are Use Cases Use Case Definition A complete functionality A set of sequences of actions a system performs that yield an observable result of value to a particular actor Actions communicating with a number of actors performing calculations work inside the system

What are Use Cases Use Cases A use case is a typical interaction between a user and a computer system Use cases document the behavior of the system from the users' points of view A user might be a person, another information system, a hardware device, etc A user is external to the system

What are Use Cases The characteristics of a use case are : A use case is always initiated by an actor A use case provides value to an actor A use case is complete

What are Use Cases Uses of Use Cases Help capture system requirements Good for planning iterations of development Useful for validating the system Use Cases Documentation A single use case represents a task that is required of the system Include a text description of each use case A use case diagram is a concise summary of the text descriptions

What are Use Cases Example of Use Case Use Case Naming Each use case has a unique name Name Type Simple name Path name Place Order Simple name Validate User Sensors:: Caliblate location Path name LoanOffice Process loan name Actor Use Case

What are Use Cases Identifying Use Cases Which functions does the actor require from system? Does the actor need to read, create, destroy, modify, or store some kind of information in the system? Does the actor have to be notified about events in the system Could the actor ’ s daily work be simplified or made more efficient through new functions in the system

Contents – Use Case Diagram What are Use Cases What are Actors Actor Relationships Use Case Scenario Use Case Relationships Use Case Diagram

What are Actors Actors An actor in a use case diagram represents a role that someone may play, not an individual user of the system The same person can be different actors Think about roles rather than people or job titles An actor is any person, organization, or system that interacts with application but is external to it Notation in a use case diagram actor name

What are Actors Identifying actors Useful questions Who will use the main functionality of the system(primary actors)? Who will need support from the system to do their daily tasks? Who will need to maintain, administrate, and keep the system working (secondary actors)? Which hardware devices does the system need to handle? With which other systems does the system need to interact? Who or what has an interest in the results (the value) that the system produces?

What are Actors Identifying actors Generate a list of actors first, and then try to work out the use cases for each actor A user, who plays several different roles, is represented by several actors, one for each role Any human who interacts with the system will be represented by at least one role An actor can be an external system that needs some information from the current system

What are Actors Actors representation Name Description actor 가 무엇을 하고 누구인지를 표현한다 actor 가 왜 필요한가를 표현한다 actor 가 시스템에서 흥미로운 부분은 무엇인가를 표현한다 Example Actors in University Information System Enroll students in courses Output seminar enrolment lists Remove students from courses Produce student transcripts

What are Actors Example(Cont.) Actors in University Information System Input Marks Enrol in Course Distribute Transcripts Student Professor Registrar

Contents – Use Case Diagram What are Use Cases What are Actors Actor Relationships Use Case Scenario Use Case Relationships Use Case Diagram

Actor Relationships Relationships between actors Generalization Relationships between actors Generalization general superclass actor

Contents – Use Case Diagram What are Use Cases What are Actors Actor Relationships Use Case Scenario Use Case Relationships Use Case Diagram

Use Case Scenario Use case scenario is a specific example of a use case A scenario is an instance of a use case, as an object is an instance of a class A use case describes a set of related scenarios For each use case: What are the possible scenarios? What are the rules for applying a particular scenario? To capture this information, a software engineer would use a textual description of the use case

Use Case Scenario Use Case Scenario Example University Information System “ Enroll students in courses ” scenario A student wants to enroll in a course but they are missing a prerequisite A student wants to enroll in a course but the course is over- booked for the term A student wants to enroll in a course, they have the prerequisites and there is still room left

Contents – Use Case Diagram What are Use Cases What are Actors Actor Relationships Use Case Scenario Use Case Relationships Use Case Diagram

Use Case Relationship Dependency and Inheritance A simple line between an actor and a use case means that that actor is expected to perform that use case( Association ) A line with arrow head from an actor to an actor defines a special kind of actor : e.g, student, grad, undergrad( Generalization ) A line with arrow head from a use case to a use case is labeled: > : The bottom use case is a special way to do the more general task > : The bottom use case is a larger task that includes the top use case as one step

Use Case Relationship Relationship between Use Cases The stereotype > The > stereotype is when you can implement part of one or more of your use cases by using a component Check for reservation is a use case (sub-scenario) that is used by both Extend loan and Borrow copy of book Source use cases (Extend loan and Borrow copy of book) make use of the target use case, Check for reservation( have common behavior )

Use Case Relationship Relationship between Use Cases Pitfalls of using the > stereotype are: It may lead to top-down functional decomposition Maker it harder for the customer to understand use case diagrams Consider using a > relationship between use cases to show how the system can use a pre-existing component to show common functionality between use cases to document the fact that the project has developed a new reusable component

Use Case Relationship Relationship between Use Cases The stereotype > A uses relationship : one use case always includes the behavior of another A extends relationship : one use case conditionally includes the behavior of another An extends relationship from use case A to use case B indicates that an instance of use case B may include the behavior specified by use case A An extending use case defines exceptional behavior for the use case it extends

Use Case Relationship Relationship between Use Cases The stereotype > Extends is used to separate out a special case The central case is Borrow copy of book The less central case is Refuse loan The condition under which the exception applies is "too many books"

Use Case Relationship

Contents – Use Case Diagram What are Use Cases What are Actors Actor Relationships Use Case Scenario Use Case Relationships Use Case Diagram

Show expected actors and use cases Show which actors do which use cases Show dependency and inheritance among use cases Place phone call Receive phone call Use scheduler Place conference call Receive additional call > Use Case System boundary User Cellular network Actor Association 확장 (Extend)

Use Case Modeling: Core Elements

Use Case Modeling: Core Relationships >

Use Case Modeling: Core Relationships (cont ’ d) >

Model user requirements with use cases. Model test scenarios with use cases. If you are using a use-case driven method start with use cases and derive your structural and behavioral models from it. If you are not using a use-case driven method make sure that your use cases are consistent with your structural and behavioral models. When to model use cases

Use Case Modeling Tips Make sure that each use case describes a significant chunk of system usage that is understandable by both domain experts and programmers When defining use cases in text, use nouns and verbs accurately and consistently to help derive objects and messages for interaction diagrams (see Lecture 2) Factor out common usages that are required by multiple use cases If the usage is required use > If the base use case is complete and the usage may be optional, consider use > A use case diagram should contain only use cases at the same level of abstraction include only actors who are required Large numbers of use cases should be organized into packages

Describing Use Cases Text Description External behavior of the system is important The text description should include : Objective for the use case : use cases are goal-oriented How the use case is initiated The flow of messages between actors and the use case Alternative flow in the use case : condition or exception How the use case finishes with a value to the actor

Example: Online HR System

Online HR System: Use Case Relationships

Example: Make Appointment

Example: Rational Rose Use Case Tool