CS 425 Software Engineering

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.
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
CS 425/625 Software Engineering Software Requirements
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 3: The Requirements Workflow [Arlow & Neustadt, 2005] February 10, 2009.
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.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Chapter 7: The Object-Oriented Approach to Requirements
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.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 7 Slide 1 The requirements engineering process.
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 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.
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.
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.
Requirements Analysis
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.
Use Case Analysis Chapter 6.
Systems Analysis and Design in a Changing World, Fourth Edition
Instructor: Dr. Hany H. Ammar
CMPE 280 Web UI Design and Development August 29 Class Meeting
Objectives Importance of Requirement Engineering
Systems Analysis and Design With UML 2
Requirements Analysis
UML Use Case Diagrams.
Chapter 4: Use Case Modeling
Start at 17th March 2012 end at 31th March 2012
CS 691z / 791z Topics on Software Engineering
CS 790M Project preparation (I)
Chapter 3: The Requirements Workflow
Concepts, Specifications, and Diagrams
IMPORTANT NOTICE TO STUDENTS:
Unified Modeling Language
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Chapter 7: Classes and Objects Chapter 8: Finding Analysis Classes
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Chapter 9 Use Cases.
Chapter 4: Use Case Modeling
Chapter 7: Classes and Objects Chapter 8: Finding Analysis Classes
Software Design Lecture : 15.
Using Use Case Diagrams
Chapter 4: Use Case Modeling
Object-Oriented Software Engineering
CS 420/620 HCI Use Case Modeling Project Preparation
CS 425/625 Software Engineering
CS 426 CS 791z Topics on Software Engineering
CS 426 CS 791z Topics on Software Engineering
Presentation transcript:

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]

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

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

.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?”

..Defining Requirements. Simple format recommended for well-formed requirements: <id> The <system> shall <function> 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.

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

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 stereotype of class with its own icon Fig. 4.3 and 4.4 [Arlow & Neustadt 2002]

.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

..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

...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

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]

.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]

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

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

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

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

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