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,

Slides:



Advertisements
Similar presentations
CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
Advertisements

Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
CS3773 Software Engineering Lecture 03 UML Use Cases.
Use-case Modeling.
1 CS 426 Senior Projects Chapter 4: Use Case Modeling [Arlow and Neustadt, 2002] February 8, 2007.
Systems Analysis and Design in a Changing World, Fourth Edition
1 / 26 CS 425/625 Software Engineering Software Requirements Based on Chapter 5 of the textbook [Somm00] Ian Sommerville, Software Engineering, 6 th Ed.,
Documenting Requirements using Use Case Diagrams
Use Case Analysis Chapter 6.
CS 425/625 Software Engineering Software Requirements
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] February 10, 2009.
Introduction to Software Engineering Dr. Basem Alkazemi
1 CS 426 Senior Projects Chapter 4: Use Case Modeling [Arlow and Neustadt, 2005] February 5, 2009.
Software engineering Olli Alm Lecture 2: requirements, modelling & representation.
1COM6030 Systems Analysis and Design © University of Sheffield 2005 COM 6030 Software Analysis and Design Lecture 6 - Use cases and activity diagrams Dr.
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
CMPT 275 Software Engineering
Chapter 7: The Object-Oriented Approach to Requirements
USE Case Model.
Chapter 7: Classes and Objects Chapter 8: Finding Analysis Classes [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of.
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.
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.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] January 31, 2012.
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?
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Requirements Capture. Four Steps of requirements capture List candidate requirements Understand system context Capture functional requirements Capture.
Requirements Analysis and Design Engineering Southern Methodist University CSE 7313.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 Use Case 1 what are use cases? “A specification of sequences of actions, including variant.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
Object Oriented Analysis & Design & UML (Unified Modeling Language) 1 Part II: Requirements The requirements workflow Use case modeling Advanced.
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.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
Chapter 4: Use Case Modeling [Arlow and Neustadt, 2005] CS 790M Project preparation (II) University of Nevada, Reno Department of Computer Science & Engineering.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
CS212: Object Oriented Analysis and Design Lecture 32: Use case and Class diagrams.
Use Case Textual Analysis
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Prof. Hany H. Ammar, CSEE, WVU, and
Requirements Analysis
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Chapter 3: The Requirements Workflow [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of Nevada, Reno Department of Computer.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Chapter 6: The Analysis Workflow Chapter 7: Classes and Objects Chapter 8: Finding Analysis Classes [Arlow and Neustadt, 2005] CS 426 Senior Projects in.
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.
George Wang, Ph.D. COMP 380/L Lesson 2. Use Case Use cases are a way to capture system functionalities (i.e., functional requirements) Based on use case.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 6 Slide 1 Software Requirements (utvalgte foiler fra Kap 6 og 7 i Sommerville)
Use Case Analysis Chapter 6.
Instructor: Dr. Hany H. Ammar
CMPE 280 Web UI Design and Development August 29 Class Meeting
Chapter 4: Use Case Modeling
CS 691z / 791z Topics on Software Engineering
CS 790M Project preparation (I)
Chapter 3: The Requirements Workflow
Unified Modeling Language
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Chapter 4: Use Case Modeling
Chapter 7: Classes and Objects Chapter 8: Finding Analysis Classes
Chapter 4: Use Case Modeling
CS 420/620 HCI Use Case Modeling Project Preparation
CS 425 Software Engineering
CS 425/625 Software Engineering
CS 426 CS 791z Topics on Software Engineering
CS 426 CS 791z Topics on Software Engineering
Presentation transcript:

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, 2002] October 19, 2009

2 Outline Defining requirements Use case modeling Overview Finding actors and use cases Detailing use cases Scenarios

3 Defining Requirements Requirement: “a specification of what should be implemented” There are two types of requirements: Functional requirements: describe the desired behaviour of the system Non-functional requirements: specify particular properties of or constraints on the system In theory, the set of requirements should be only about “what” the system should do, but in practice it is not possible to avoid “how” aspects of the system

4.Defining Requirements. The SRS (Systems Requirements Specification) is the document that contains the set of requirements expected to be satisfied by the system, both functional and non-functional There are many ways to write a SRS (“company dependent” ways) The SRS provides the input for the analysis and design phases of the development process The bottom line regarding the SRS is: “does it help me to understand what the system should do or not?”

5..Defining Requirements. Simple format recommended for well-formed requirements: The shall Examples of functional requirements (what the system should do): 1 The ATM shall check the validity of the ATM card inserted. 2 The ATM shall validate the PIN number entered by the client. Examples of non-functional requirements (constraints on or properties of the system): 1 The ATM shall be written in C++. 2 The ATM shall validate the PIN in three seconds or less.

6 Use Case Modeling: Overview The Use Case Model consists of the following: Actors Use cases Relationships System boundary Steps of use case modeling: Find the system boundary Find the actors Find the use cases: Specify the use cases Create scenarios

7 Finding Actors and Use Cases Finding Actors and Use Cases.... An actor is a role taken by an external entity when interacting with the system directly An actor is a role taken by an external entity when interacting with the system directly An actor is a stereotype of class with its own icon An actor is a stereotype of class with its own icon Fig. 4.3 and 4.4 [Arlow & Neustadt 2002]

8.Finding Actors and Use Cases... An actor: Is always external to the system Interacts directly with the system Represents a role played by people of things, not specific people or specific things According to Rumbaugh, a use case is “a specification of sequences of actions, including variant sequences and error sequences, that a system, subsystem, or class can perform by interacting with outside actors” Use cases: Are always started by an actor Are always written from an actor’s point of view

9..Finding Actors and Use Cases.. Examples of use cases, Fig. 4.5 [Arlow & Neustadt 2002] Names of use cases should be verb phrases Candidate use cases can be discovered starting from the list of actors (how they interact with the system?) Finding use cases is an iterative process

10...Finding Actors and Use Cases. The use case diagram shows the system boundary, the use cases internal to the system, and the actors external to the system, e.g. [Fig.4.6, Arlow and Neustadt, 2002]

Finding Actors and Use Cases The project glossary Important project artefact Provides a dictionary of key business terms Captures business language and jargon Should resolve synonyms and homonyms Should be understandable by all stakeholders UML does not set a standard for the project glossary Synchronization between the project glossary and the UML model is needed

12 Detailing Use Cases Detailing Use Cases.... The output of this activity is a more detailed use case that consists at least of the use case name and use case specification. Most common template for use case specification, Fig. 4.8 [Arlow & Neustadt, 2002]

13.Detailing Use Cases… Branching, repetition, and alternative flows are possible in a use case Example of branching using the keyword IF, Fig. 4.9 [Arlow and Neustadt, 2002]

14..Detailing Use Cases.. Example of alternative flows, Fig [Arlow and Neustadt, 2002]

15...Detailing Use Cases. Example of repetition within a flow (FOR), Fig [Arlow and Neustadt, 2002]

16 ….Detailing Use Cases Example of repetition within a flow (WHILE), Fig [Arlow and Neustadt, 2002]

17 Scenarios. Primary scenario of a use case, Fig [Arlow and Neustadt, 2002] Scenarios do not include IF, FOR, WHILE They are sort of “activity logs”

18.Scenarios Secondary scenario of a use case, Fig [Arlow and Neustadt, 2002]