Documenting Requirements using Use Case Diagrams

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design Evolutionary Requirements.
Advertisements

© 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:
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Information System Engineering
CS3773 Software Engineering Lecture 03 UML Use Cases.
Use Case Diagram © copyright 2001 SNU OOPSLA Lab..
CT1404 Lecture 2 Requirement Engineering and Use Cases 1.
Lecture 8 – USE CASE ANALYSIS
Use-case Modeling.
Systems Analysis and Design in a Changing World, Fourth Edition
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Lecture 4 Class Responsibility Collaboration Cards
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,
UML and the Software Lifecycle
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Bina Nusantara 7 C H A P T E R MODELING SYSTEM REQUIREMENTS WITH USE CASES.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Modeling System Requirements with Use Cases
03/12/2001 © Bennett, McRobb and Farmer Use Case Diagrams Based on Chapter 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Use cases: deciding what you want.
Requirements Gathering : Determining the scope of the system 1. Elicitiation – fact finding 2. Specification 3. Validation.
The chapter will address the following questions:
Chapter 7: The Object-Oriented Approach to Requirements
USE Case Model.
CMIS 470 Structured Systems Design
Chapter 3 Use Cases.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Systems Analysis and Design in a Changing World, 6th Edition
Key Takeaway Points A use case is a business process; it begins with an actor, ends with the actor, and accomplishes a business task for the actor. Use.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 20. Review Software Requirements Requirements Engineering Process.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: An Aside: The Quickest Tour through the UML that you will ever get.
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
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, Part I Understanding the Business Dynamics  Understand the business workflow  Identify system support points the system 'use cases'
2131 Structured System Analysis and Design By Germaine Cheung Hong Kong Computer Institute Lecture 8 (Chapter 7) MODELING SYSTEM REQUIREMENTS WITH USE.
Systems Analysis and Design in a Changing World, 6th Edition
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.
Business Analysis with For PG MDI, Gurgaon Kamna Malik, Ph.D.
1 Modeling System Requirements with Use Cases. 2 Why Do We Need Use Cases? Primary challenge in a system design process –ability to elicit correct and.
Information Systems Analysis and Management Modeling Sys. Requirements with Use Cases Arnie Lund, Jeffrey Kim May 5, 2009 INFO380.
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.
Use Cases Todd S. Bacastow Professor of Practice John A. Dutton e-Education Institute The Pennsylvania State University.
New Perspective Based on how the system is used. What Is a Use Case? A case of how the system is used. –A behaviourally related sequence of interactions.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
UML (Unified Modeling Language)
USE CASE Pertemuan 7 Matakuliah: Konsep object-oriented Tahun: 2009.
Week04 Project Requirements.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
Chapter 7 Part II Structuring System Process Requirements MIS 215 System Analysis and Design.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
Business Processes A business process describes a set of activities that are necessary to complete a response to a stimulus applied to an organization.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
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.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 4: Business Process and Functional Modeling, continued
Chapter 5 System modeling
UML Use Case Diagrams.
System Modeling Chapter 4
Object Oriented Analysis and Design
Software Design Lecture : 15.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Engineering Quality Software
Use Case Modeling Part of the unified modeling language (U M L)
Chapter 4 System Modeling.
Presentation transcript:

Documenting Requirements using Use Case Diagrams

UML Unified Modelling Language Developed by Jacobson (1994) Set of diagrams and techniques to model object oriented analysis and design. Use Case diagrams Activity diagrams Communication diagrams Sequence diagrams Class diagrams State diagrams

Use Case Modelling Used to document the scope of the system and the developer’s understanding of what the users require. good for modelling the functional requirements of a system. A separate list of systems requirements both functional and non-functional should also be maintained.

Each use case represents one system activity or task- a well-defined part of the system functionality as seen from a specific user(actor)’s point of view. They are backed up by behaviour specifications which specify the behaviour of each case using either UML diagrams or sequence diagrams, or in text form as use case descriptions. Examples Calculate stock requirements Create film programme Create new member Update member details Print season report

Requirements Gathering: Use Case Diagram shows SCOPE Source: IBM Rational

.

.

What is the aim of Use Case modelling? Elicit enough requirements information to prepare a model that communicates what is required from a user perspective. If user’s requirements change through the life cycle, then the change is initiated in the use case model. These changes then dictate what changes need to be made to other models.

Use Case Diagrams Business requirements – essential use cases Guest Book spa Hotel self service subsystem Check valid room number Order food/ drink <<includes>> Request alarm call Guest

Includes relationship Use Case Diagrams Shows subsystem boundary Use case Use case 1 subsystem relationship Includes relationship shows Shared process Use case 2 <<includes>> Use case 3 Actor

Each Use Case Describes a system function from a user’s perspective Details business events and users interaction with the system during that event Represents a system activity, a well-defined part of the system’s functionality Has a goal Is initiated by an actor, but can interact with other actors. Has a more detailed description, possibly specifying a number of scenarios or alternate courses of action ( e.g. documented in a use case template)

Types of Use Case Use cases are initially defined at a high level and successively refined and detailed as the analysis and software development process unfolds. Essential use case – key business requirements – brief scenario descriptions Real Use Case – more detail about what actually happens – use case template What are the users trying to accomplish and why?

Business Requirements use case Quickly document business events to define and validate requirements Focus on strategic vision and stakeholder goals System use case Document use case narratives to more reflect implementation details and detailed system functionality

Relationships Association – communication with use case. Order Phone Customer

Relationships: extends Extends – extract more complex steps into their own use case. An extension use case is used when it extends the functionality of a single use case. Used to model optional extras, additional functionality in a use case to model an extension to or variation of a use case.

Example : Extends… Used to specify optional extras, additional functionality Student registration subsystem register Extension points Late payment If late payment authorised <<extends>> Process late payment student

Relationships : Include Include – shows shared processes Used if the intent is to factor common behaviour into its own use case. – abstract use case – find 2 or more use cases that have identical functionality

Example : Includes… student Library subsystem Examine account Login Search online databases Search ebrary <<includes>> student

Note..... Conditions can be shown as UML comments Arrows always point at the use case that is being included or extended.

Relationships : dependency, inheritance Dependency – depends on – shows sequencing need. Inheritance.

Actors Stakeholders Who provide inputs to system Who receive outputs from system Who trigger events in the system Who maintain the information in the system Actors are outside the system

Relationships between Actors Generalisation and specialisation Example Campaign manager can do anything a staff contact can do and more – means that his role is a specialisation of a staff contact role. Inheritance

Abstraction Abstracting functionality into super use case - e.g. Assign staff team Assign staff member becomes : Assign staff. This helps define the functionality and helps cut excessive repetition.

Primary business actor benefits from action System actor – triggers system event External server actor responds to a request External receiver actor receives something.

Identifying use cases… What are the main tasks of each actor? What information does the actor need from the system or provide to the system? Does the system/actor need to inform the system/actor of any changes?