CS3773 Software Engineering Lecture 03 UML Use Cases.

Slides:



Advertisements
Similar presentations
Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
Advertisements

CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
Karolina Muszyńska Based on:
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Object-Oriented Analysis and Design
Objectives Detailed Object-Oriented Requirements Definitions
Ch 12: Object-Oriented Analysis
Introduction to Software Testing Chapter 2.6 Graph Coverage for Use Cases Paul Ammann & Jeff Offutt
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
Use-case Modeling.
1 CS 426 Senior Projects Chapter 4: Use Case Modeling [Arlow and Neustadt, 2002] February 8, 2007.
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Uml and Use Cases CS 414, Software Engineering I Mark Ardis Rose-Hulman Institute January 9, 2003.
Chapter 10 System Sequence Diagrams. What is a System Sequence Diagram? A way of modeling input and output events related to systems It is a picture that.
Documenting Requirements using Use Case Diagrams
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,
1 CS 426 Senior Projects Chapter 4: Use Case Modeling [Arlow and Neustadt, 2005] February 5, 2009.
CS5103 Software Engineering
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Detailed Object-Oriented Requirements Definitions
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 6 - Use cases and activity diagrams Dr.
USE Case Model.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 4 - System modelling Dr Richard Clayton.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
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.
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?
Faculty of Computer & Information Software Engineering Third year
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
Faculty of Computer & Information
Behavioral Modeling: Sequence and Communication Diagrams Copyright © 2009 John Wiley & Sons, Inc. Copyright © 2005 Pearson Education Copyright © 2009 Kannan.
1 Use Case Diagrams Use Case Actor Use case description Use case realization (Scenario) Use case relationships –Extends –Uses.
Use Case Modeling Chapter 7 Part of Requirements Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
1 Structuring Systems Requirements Use Case Description and Diagrams.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
Use Cases -Use Case Diagram Chapter 3 1. Where are we? 2 Analysis Chapters Ch 2Investigating System Requirements Ch 3Use Cases Ch 4Domain Modeling Ch.
Chapter 4: Use Case Modeling [Arlow and Neustadt, 2005] CS 790M Project preparation (II) University of Nevada, Reno Department of Computer Science & Engineering.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
1 Graph Coverage (6). Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Section
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Prof. Hany H. Ammar, CSEE, WVU, and
UML - Development Process 1 Software Development Process Using UML.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
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.
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.
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.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
1 Advanced DataBases Unified Modelling Language An Introduction and Use Case Lecture 2 Susan Curtis.
1 Case Study and Use Cases for Case Study Lecture # 28.
Paul Ammann & Jeff Offutt
CMPE 280 Web UI Design and Development August 29 Class Meeting
Use Case Modeling - II Lecture # 27.
Storyboarding and Game Design SBG, MBG620 Full Sail University
Requirements Analysis
Object-Oriented Static Modeling of the Banking System - I
Concepts, Specifications, and Diagrams
IMPORTANT NOTICE TO STUDENTS:
Paul Ammann & Jeff Offutt
Use Cases & Use Case Diagrams
Modeling ECE 417/617: Elements of Software Engineering Stan Birchfield
Software Design Lecture : 15.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
CS 420/620 HCI Use Case Modeling Project Preparation
CS 425 Software Engineering
CS 425/625 Software Engineering
Presentation transcript:

CS3773 Software Engineering Lecture 03 UML Use Cases

UTSA CS History of UML  UML appeared in 1997 after many years of modeling war – 1994 Rumbaugh (OMT) joined Booch – 1995 Rational bought Objectory Jacobson, OOSE -- use cases – Rumbaugh, Booch, and Jacobson are known as the “Three Amigos” – UML = OMT + Booch + OOSE + …

UTSA CS Introduction  UML is a set of modeling notations, which include 13 diagrams – Static structure of the system Class diagram (ERD) Object diagram … – Dynamic behavior of the system Use case diagram Sequence diagram (Event traces) State diagram (EFSM) …

UTSA CS Three UML Modes  Sketch – Some aspects of the system – For communication purpose  Blueprint – Complete description of the system – For designers  Programming language – All details of the system – For code generation purpose

UTSA CS Object-Oriented Analysis Four key steps in OOA  Define the use cases Describe how users interact with the system  Define the domain model Find the objects, classes  Define the interaction diagrams Describe the interaction between the objects  Define design class diagrams

UTSA CS Use Case Modeling  Use cases are captured in four steps – Find a candidate system boundary – Find the actors – Find the use cases Specify the use case Identify key alternative scenarios – Iterate until use cases, actors, and system boundary are stable

UTSA CS Actors  Actors are external to the system  An actor specifies a role – Users that operate the system directly – Other software systems or hardware pieces that interact with the system  One person or thing may play many roles in relation to the system simultaneously or over time  Actors do not represent specific people or specific things

UTSA CS Use Cases  Use cases are usages of the system  Use cases capture the functional requirements – Use cases provide the high-level descriptions of the system’s functionality in terms of interactions – Use cases show inputs and outputs between the system and the environment – Use cases are from the user’s point of view Human users and other software systems in the environment

UTSA CS Use Case – An Example  ATM system – Withdraw cash – Check account balance – Maintain usage statistics – …

UTSA CS UML Use Case Diagram  System: drawn as a box  Actors: outside the system – Relations among actors  Use cases: inside the system – Relations among use cases

UTSA CS Legend Actor: an entity in the environment that initiates and interacts with the system Use case: usage of system a set of sequences of actions Association: relation between actor and use cases Includes dependency: a sub use case Extends dependency: a sequence of use cases >

UTSA CS Initial Use Case Diagram for ATM

UTSA CS Elaborated Use Case Diagram for ATM

UTSA CS Process for Identifying Use Cases  Choose your system boundary  Identify primary actors  For each actor, find their goals  Define a use case for each goal  Identify the possible variations and error conditions  Define relationships among actors  Decompose complex use cases into sub-use cases  Organize normal alternatives as extension use cases

UTSA CS Description of A Use Case  Give a unique number for referencing UC  Choose an appropriate name  Give a brief description  Associate with the initiating actor, and other actors  Identify pre-conditions (assumptions)  Describe the post-condition  Describe the normal scenario as a sequence of steps  Identify all possible variations and error conditions for each step

UTSA CS Scenario  A use case is a set of scenarios All these scenarios have the same goal  A scenario is a sequence of interactions between a user and a system

UTSA CS Scenario – An Example Process description for “withdraw cash” 1. User correctly inputs ATM card 2. User enters correct PIN 3. User selects valid account 4. User selects valid amount to withdraw 5. System dispenses card, cash, and receipt 6. System performs accounting 7. User takes card, cash, and receipt

UTSA CS Scenario – An Example Extensions: 1a. non-ATM card inserted 1b. ATM card incorrectly inserted 2a. invalid PIN entered …

UTSA CS Review of Use Cases  Identifying use cases is the first step in OOA  Use cases are simple and easy to create  Use cases represent an external view of the system  Use cases describe both normal scenarios and alternative ones  All stakeholders understand them

UTSA CS Reading Assignments  UML 2 and The Unified Process – Chapter 4 – Chapter 5