1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.

Slides:



Advertisements
Similar presentations
UML Use Case Diagram / Use Case Text / Activity Diagram
Advertisements

Use-Cases.
Use case tutorial examples.
Use Case & Use Case Diagram
1Spring 2005 Specification and Analysis of Information Systems Specifying Requirements with Use Case Diagrams Part II.
© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Karolina Muszyńska Based on:
Business Analysis & Data Design ITEC-630 Spring 2008
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Use cases.
Information System Engineering
Use Cases Alistair Cockburn, Writing Effective Use Cases, Addison-Wesley, Grady Booch, James Rumbaugh, and Ivar Jacobson, Unified Modeling Language.
Use Case Diagram © copyright 2001 SNU OOPSLA Lab..
January Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box.
Together and UML Greg Johnson CSE 230 – Software Engineering Spring 2007.
Conversation Form l One path through a use case that emphasizes interactions between an actor and the system l Can show optional and repeated actions l.
Jan Ron McFadyen1 Use Cases in the UML Functionality under consideration is represented by use cases (named ellipses) enclosed in a box Actors.
Use-case Modeling.
Systems Analysis and Design in a Changing World, Fourth Edition
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” - may be of.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Use Case Modelling.
Use Case Modeling. Kendall & Kendall© 2005 Pearson Prentice Hall18-2 Commonly Used UML Diagrams The most commonly used UML diagrams are: – Use case diagram,
UFCEPM-15-M Object-oriented Design and Programming Jin Sa.
UML exam advice. Minimal, yet sufficient UML course 80% of modeling can be done with 20% of the UML. Which 20% was that again? We’re supposed to be “Use.
Use case diagrams A use case diagram is UML’s notation for showing the relationships among a set of use cases and actors A use case diagram can help the.
Quiz 1. Who is the guru of Extreme Programming?
® 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 Modeling Using UML (2) CS 3331 Fall 2009.
Introduction to Sequence Diagrams
Internet Software Development Putting it all together Paul J Krause.
Intro: Use Case and Use Case Diagram Documentation.
Class Diagrams Tutorial.
Faculty of Computer & Information Software Engineering Third year
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 20. Review Software Requirements Requirements Engineering Process.
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.
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
REQUIREMENTS CAPTURE 1 ASU Course Registration System Use-case Model Actor.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Faculty of Computer & Information
OOSE Use Case. Requirement Functional: –Features, capabilities, and security Non Functional: –Usability: Human factors, help, and documentation –Reliability:
Requirements Analysis and Design Engineering Southern Methodist University CSE 7313.
Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Engineering Lab Use Cases Faculty of Information system Technology.
1 Structuring Systems Requirements Use Case Description and 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 Diagram The purpose is to communicate the system’s functionality and behaviour to the customer or end user. Mainly used for capturing user requirements.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
Requirements specification Why is this the first major stage of software development? –Need to understand what customer wants first Goal of requirements.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Scenario A scenario is a sequence of steps describing an interaction between a user and a system. Use case is a set of scenarios tied together by a common.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
PRESENTATION ON USE CASE. Use Case Modeling Use case diagrams describe what a system does from the standpoint of an external observer. The emphasis is.
22 August, 2007Information System Design IT60105, Autumn 2007 Information System Design IT60105 Lecture 8 Use Case Diagrams.
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.
Page 1  Copyright © 1997 by Rational Software Corporation Putting the UML to Work The ESU University wants to computerize their registration system –
CHAPTER 6 OBJECT ANALYSIS.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
Use Case Diagrams A Detailed Description. Use Case Diagrams Use case diagrams describe relationships between users and use cases A use case is a (usually.
Use case diagrams A use case diagram is UML’s notation for showing the relationships among a set of use cases and actors A use case diagram can help the.
Use Case Model Use case diagram.
UML Use Case Diagrams.
Start at 17th March 2012 end at 31th March 2012
SE-565 Software System Requirements IV. Use Cases
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Using Use Case Diagrams
Use Case Document Example
Object-Oriented Software Engineering
Presentation transcript:

1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases

2 Outline  Intro. to UML  Use cases and use case diagrams  Use case scenarios  Case study

3 Unified Modeling Language (UML)  Notation for object-oriented modeling  Standardized by Object Management Group (OMG)  Consists of 12+ different diagrams Use case diagram Class diagram State machine diagram Sequence diagram Activity diagram Deployment diagram … Q: Why so many different diagrams?

4 Modeling Requirements  What’re requirements? Requirements vs. design  How to describe requirements?

5 Describing Requirements  One way to describe a system is to create a “story”, the interaction between a user and the system.  This story should be just one path through the system, start to finish, that a user will want to take.  E.g., ATM

6 Use Cases  A use case defines a sequence of actions performed by a system that yields an observable result of value to a user (called an actor).  Characteristics A use case is typically initiated by an actor. A use case provides value to an actor. A use case is complete.

Documenting Use Cases  Use case diagrams, consisting of: system actors use cases 7 Student Check grades system boundary use case actor Goldmine

8 Elements of Use Case Diagram  Actor: Represents a role played by external entities that interact with the system  Use case: Describes what the system does (i.e., functionality) Interaction between an actor and the system  Relationship: Extension (or generalization) among actors Association between actors and use cases Dependency among use cases: include, extend, and generalization

9 Example: Goldmine > UserStudentInstructor Enter gradesValidate userCheck gradesView rosterCheck schedule > User Student Instructor Goldmine

10 Relationships between Use Cases  Include dependency Always initiated (idea similar to method call) Explicitly stated in including use case  Extend dependency Conditionally initiated (similar to callback or exception handling) Implicitly (or not) stated in extended use case  Generalization Similar to subclassing (generalization/specialization) Register student Register international student

11 Guidelines 1. Identify actors Roles played by external entities that interact with the system (humans, machines or other systems) Importance: define the boundary of the system 2. Identify uses cases by asking for each actor Tasks, data, events, etc. it wants to perform, … 3. Identify relationships between/among: Actors and use cases Use cases Actors

12 Exercise (5 minutes)  Form a group (of three or four)  Draw a use case diagram for the Battleship game by identifying Actors System boundary Use cases

13 Use Cases Revisited  How to describe a use case itself?  A scenario is a sequence of steps describing an interaction between a user and a system. The customer browses the catalog and adds desired items to the shopping basket. When the customer wishes to pay, the customer describes the shipping and credit card information and confirms the sale. The system checks the authorization on the credit card and confirms the sale both immediately and with a follow-up . What if the credit card authorization fail? A separate scenario!

14 Use Cases (Cont.)  A use case is a set of scenarios tied together by a common user goal (e.g., success and failure together, and other alternative paths).  A use case can be documented by describing all its scenarios.

15 Use Case Scenarios Use Case: Check Grades Description: View the grades of a specific year and semester Actors: Student Precondition: The student is already registered Main success scenario: User System 1. The student requests to show his/her grades. 4. The user provides the year and semester, e.g., Fall The system carries out “Validate user”, e.g., for user “miner” with password “allAs”. 3. The system prompts for the year and semester. 5. The system displays the grades of the courses taken in the given semester, i.e., Fall Alternative: The student enters “All” for the year and semester, and the system displays grades of all courses taken so far. Exceptional: The “Validate User” use case fails; the system repeats the validation use case.

16 Guidelines 1. Identify a main success scenario (MSS) Assume that every thing goes well, i.e., no exceptions and no errors. Write each step of the scenario, from start to end. 2. Check each step of the MSS to identify Alternatives, exceptions, and error cases If significant, introduce new (secondary) scenarios for them. 3. Merge the MSS and alternatives/exceptions into a single coherent description. * Avoid design/implementation dependent terms, e.g., menu selection or menu selection.

17 Style Guidelines (Ambler, 2005)  Use case names begin with strong verbs.  While use cases do not imply timing, order cases from top to bottom to imply timing (improves readability).  The primary actors should appear in the top left.  Actors are associated with one or more use cases.  Do not use arrows on the actor-use case relationship.  Do not show actors interacting with each other.  Apply > when you know exactly when to invoke the use case. These should rarely nest more than 2 deep.  Avoid using >.

18 Case Study: E-book Store Identify the main actors and the key use cases for an e-bookstore, and draw a use case diagram. Describe the use case scenario for the most important use case. The core requirements of the e-bookstore are to allow its customers to browse and order books, music CDs, and computer software through the Internet. The main functionalities of the system are to provide information about the titles it carries to help customers make purchasing decisions; handle customer registration, order processing, and shipping; and support management of the system, such as adding, deleting, and updating titles and customer information.

19 Sample Solution > Customer System administrator > Catalog manager Inventory manager Register Manage Catalog Manage Account Process Order ShopLogon

20 Sample Solution (Cont.) Use Case: Shop Description: Browse the catalog and place an order Actors: Customer Precondition: The customer is already registered Main scenario: User System Repeat the following until done: Search and browse titles Select a title to buy Done with shopping and check out Confirm order and payment method Carry out “Logon” Show info about the titles Add the title to the shopping cart Display shopping cart contents and shipping and billing address Validate payment method Process order; issue e-receipt and notify warehouse for shipping Alternative: The customer saves the shopping cart without checking out. Exceptional: Customer authentication fails: repeat the logon procedure. Payment validation fails: prompt the customer for new payment information.

21 Exercise  Form a group (of three or four).  Document the use cases of the Battleship game by identifying and defining their use case scenarios.