CSC 131 Fall 2006 Lecture # 5 UML Use Cases. UML The UML is a graphical language for  specifying  visualizing  constructing  documenting the artifacts.

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.
Use Case & Use Case Diagram
1 IBM Software Group ® PRJ270: Essentials of Rational Unified Process Module 1: Best Practices of Software Engineering.
Mastering Object-Oriented Analysis and Design with UML Module 1: Best Practices of Software Engineering Mastering Object-Oriented Analysis and Design with.
19 1 Continuing Best Practices ► Slide information taken in large part from former Rational Corporation slides and the RUP textbook - considerably modified.
Object-Oriented Analysis and Design
Use-case Modeling.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Uml and Use Cases CS 414, Software Engineering I Mark Ardis Rose-Hulman Institute January 9, 2003.
CSCI928 Software Engineering Requirements & Specifications Modeling System Interactions Tri A. Kurniawan, M.Eng. Ph.D Candidate
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
Fundamentals of Visual Modeling with UML Module 2: Principles of Visual Modeling.
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
Object-Oriented Analysis and Design Using the UML Module 1: Best Practices of Software Engineering.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
USE Case Model.
Information Systems Development Slovak University of Technology Faculty of Material Science and Technology in Trnava.
Modeling software behavior UML
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
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
Requirements Artifacts Precursor to A & D. Objectives: Requirements Overview  Understand the basic Requirements concepts and how they affect Analysis.
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
UML 101 – An Introduction Julie Daniels Staff Software Engineering Specialist IBM Rational Software UML 101 – An Introduction Julie Daniels Staff Software.
 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.
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
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.
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Requirements Overview.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
ARTIFACT UML Actor A Use Case 1 Use Case 2 Actor B Document FileManager GraphicFile File Repository DocumentList FileList Customer name addr withdraw()
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.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
Use Case Model Use case diagram. Relevant Requirements Artifacts Use-Case Model Supplementary Specification Use-Case Specifications... Glossary Actors.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 01. Concepts.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 IBM Software Group ® Essentials of Visual Modeling with UML 2.0 Principles of Visual Modeling.
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.
1 Continuing Best Practices ► Slide information taken in large part from former Rational Corporation slides and the RUP textbook - considerably modified.
UML - Development Process 1 Software Development Process Using UML.
Unified Software Practices v5.5 Copyright © Rational Software, all rights reserved 1 Module 1: The Six Best Practices of Modern Software Engineering.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
Rational Unified Process Fundamentals Module 1: Best Practices of Software Engineering Rational Unified Process Fundamentals Module 1: Best Practices of.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Course Number: 1080 Session Length:60 Minutes Target Audience:caDSR Users and Metadata Consumers Trainer: Jennifer Brush NCICB Liaison.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
UML Basics Process Model Deployment Model Design Model
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.
GOVT. ENGINEERING COLLEGE, AJMER. A SEMINAR PRESENTATION ON UNIFIED MODELING LANGUAGE(UML) SUBMITTED TO:-PRESENTED BY:- Dr. REENA DADHICHPALLAVI VASHISTHA.
Introduction to Rational Unified Process
Using Use Case Diagrams
UML Diagrams By Daniel Damaris Novarianto S..
Unified Modeling Language
Use Case Model Use case diagram.
UML Diagrams Jung Woo.
Practice 2: Manage Requirements
Unified Modeling Language
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Software Design Lecture : 15.
Using Use Case Diagrams
Presentation transcript:

CSC 131 Fall 2006 Lecture # 5 UML Use Cases

UML The UML is a graphical language for  specifying  visualizing  constructing  documenting the artifacts of software systems

Why Model Visually? To:  Capture structure and behavior  Show how system elements fit together  Keep design and implementation consistent  Hide or expose details as appropriate  Promote unambiguous communication –UML provides one language for all practitioners

Visual Modeling with Unified Modeling Language Activity Diagrams Models Dynamic Diagrams Static Diagrams  Multiple views  Precise syntax and semantics Sequence Diagrams Collaboration Diagrams Statechart Diagrams Deployment Diagrams Component Diagrams Object Diagrams Class Diagrams Use-Case Diagrams

Visual Modeling Using UML Diagrams Actor A Use Case 1 Use Case 2 Actor B user : Clerk mainWnd : MainWnd fileMgr : FileMgr repository : Repository document : Document gFile : GrpFile 9: sortByName ( ) L 1: Doc view request ( ) 2: fetchDoc( ) 5: readDoc ( ) 7: readFile ( ) 3: create ( ) 6: fillDocument ( ) 4: create ( ) 8: fillFile ( ) Window95 ¹®¼­°ü¸® Ŭ¶óÀ̾ðÆ®.EXE Windows NT ¹®¼­°ü¸® ¿£Áø.EXE Windows NT Windows95 Solaris ÀÀ¿ë¼­¹ö.EXE Alpha UNIX IBM Mainframe µ¥ÀÌŸº£À̽º¼­¹ö Windows95 ¹®¼­°ü¸® ¾ÖÇø´ Document FileManager GraphicFile File Repository DocumentList FileList user mainWndfileMgr : FileMgr repositorydocument : Document gFile 1: Doc view request ( ) 2: fetchDoc( ) 3: create ( ) 4: create ( ) 5: readDoc ( ) 6: fillDocument ( ) 7: readFile ( ) 8: fillFile ( ) 9: sortByName ( ) ƯÁ¤¹®¼­¿¡ ´ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù. È­ÀÏ°ü¸®ÀÚ´Â Àоî¿Â ¹®¼­ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼­ °´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù. È­¸é °´Ã¼´Â ÀоîµéÀÎ °´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î Á¤·ÄÀ» ½ÃÄÑ È­¸é¿¡ º¸¿©ÁØ´Ù. Forward and Reverse Engineering Target System Use Case 3 Use-Case Diagram Class Diagram Collaboration Diagram Sequence Diagram Component Diagram Statechart Diagram Deployment Diagram

Relevant Requirements Artifacts Supplementary Specification Glossary Use-Case Specifications... Use-Case Model Actors Use Cases

Major Concepts in Use-Case Modeling  An actor represents anything that interacts with the system.  A use case defines a set of use- case instances, where each instance is a sequence of actions a system performs that yields an observable result of value to a particular actor. Use Case Actor

Review: What Is a Use-Case Model?  A model that describes a system’s functional requirements in terms of use cases.  A model of the system’s intended functionality (use cases) and its environment (actors). Student View Report Card Register for Courses Login

Use Case Modeling: Core Elements

> include > An relationship from a base use case to an inclusion use case, specifying how the behavior for the inclusion use case is inserted into the behavior defined for the base use case.

Review: What Are the Benefits of Use-Case Models?  Used to communicate with the end users and domain experts –Insures a mutual understanding of the requirements  Used to identify –Who interacts with the system and what the system should do –The interfaces the system should have  Used to verify –All requirements have been captured –The development team understands the requirements

Useful Questions in Finding Actors  Who will supply, use, or remove information?  Who will use this functionality?  Who is interested in a certain requirement?  Where in the organization is the system used?  Who will support and maintain the system?  What are the system’s external resources?  What other systems will need to interact with this one? Actor

Name and Describe Each Actor  Actor names should clearly denote the actor’s role  Actor description: –Area of responsibility –Dependency of the actor on the system

Finding Use Cases: Focus on the Actor  The system exists only for its users  Use cases should be based on the user’s needs

Useful Questions in Finding Use Cases  Answer the following questions to find use cases. –For each actor you have identified, what are the tasks the system would be involved in? –Does the actor need to be informed about certain occurrences in the system? –Will the actor need to inform the system about sudden, external changes? –What information must be modified or created in the system?

Naming the Use Case  The name indicates what is achieved by its interactions with the actor(s).  The name may be several words in length.  No two use cases should have the same name. Register for Courses Login Maintain Student Information

Use Cases and Actors  A use case models a dialog between actors and the system.  A use case is initiated by an actor to invoke a certain functionality in the system.

Use-Case Specifications  Name  Brief description  Flows of Events  Relationships  Use-Case diagrams  Special requirements  Preconditions  Postconditions Use-Case Specifications... Use-Case Model Actors Use Cases

Use Case Flow of Events  Has one normal, basic flow  Several alternative flows –Regular variants of the basic flow –Odd cases –Exceptional flows handling error situations

Supplementary Specification Supplementary Specification  The nonfunctional requirements and functional requirements not captured by the use cases are included in the supplementary specifications. The Supplementary Specifications include constraints on the implementation.  Functionality  Usability  Reliability  Performance  Supportability  Design constraints

Checkpoints: Use-Case Model  Is the use-case model understandable?  By studying the use-case model, can you form a clear idea of the system's functions and how they are related?  Have all functional requirements been met?  Is the division of the model into use-case packages appropriate?

Checkpoints: Actors  Have all the actors been identified?  Is each actor involved with at least one use case?  Is each actor really a role? Should any be merged or split?  Do two actors play the same role in relation to a use case?  Do the actors have intuitive and descriptive names? Can both users and customers understand the names?

Checkpoints: Use Cases  Is each use case involved with at least one actor?  Is each use case independent of the others?  Do any use cases have very similar behaviors or flows of events?  Do the use cases have unique, intuitive, and explanatory names so that they cannot be mixed up at a later stage?  Do customers and users understand the names and descriptions of the use cases?

Use Case Diagram Example

Use Case Relationships Order Product Supply Arrange «include» Request Catalog «extend» Payment Customer Data Place Order the salesperson asks for the catalog

Use Case Guidelines  Draw a use case diagram  Whenever you need to describe use cases in natural language, provide the following information for each one.  1. Use case number: a unique number for referencing UC elsewhere in the specification; use cases are numbered ‘‘ UC1’’, ‘‘ UC2’’, etc.  2. Name: a name indicating what is captured by UC  3. Authors: the names of the persons who discovered UC

Use Case Guidelines Continues   4. Actors: a list of the actors that participate in UC   5. Overview: a brief 2- 3 sentence description of UC; this overview serves also as a high- level description of UC   6. References: a list of the numbers of all requirements captured by UC   7. Related Use Cases: a list of the numbers of all related use cases; for each related use case describe the relationship of the identified use case to UC

Use Case Guidelines Continues  Precondition & Postcondition  8. Precondition & Postcondition   9. Typical Flow Description: description of the most usual instance scenario of UC that leads to the successful outcome of the process that UC captures.   10. Alternative flow: alternative flow are described here for the UC

Example of Use Case Use Case Name: Buying a Book Online Use Case Number: UC11 Authors: J. Jones Actors: Customer (initiator), credit- card authorization service, book seller Overview: This use case captures the process of purchasing one or more books from an online book seller References: R19, R4, and R5. Related Use Cases: UC7 Typical Flow Description: (include precondition & post-condition) Alternative Flow Description: (include precondition & post-condition)

Questions … Continue on the SRS