1Spring 2005 Specification and Analysis of Information Systems Specifying Requirements with Use Case Diagrams Part II.

Slides:



Advertisements
Similar presentations
CMSC 345, Version 9/07 S. Mitchell Use Cases Concepts, Specifications, and Diagrams.
Advertisements

Use-Cases.
Use Case Diagrams Damian Gordon.
CPSC 333: Foundations of Software EngineeringJ. Denzinger 2.2. Use Cases: Scenario based requirements modeling Recommended: Booch, Rumbaugh, Jacobson:
Use Case & Use Case Diagram
© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Agenda What is a Use Case? Benefits of the Use Cases Use Cases vs. Requirements document Developing the Use Case model System Actor Use Case Use Case.
CPSC 333: Foundations of Software EngineeringJ. Denzinger Small Test: Bank account manager System has to run on an automated teller machine. User must.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
CS3773 Software Engineering Lecture 03 UML Use Cases.
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.
Use-case Modeling.
Designing Classes Chapter 3. 2 Chapter Contents Encapsulation Specifying Methods Java Interfaces Writing an Interface Implementing an Interface An Interface.
Use Case Modeling Written by: Zvika Gutterman Adam Carmi.
Use Case Modeling Written by: Zvika Gutterman Adam Carmi.
WEEK 4 Material Lecture 4a (Wed.). Use Cases/Actors o What is a use case ? l A sequence of actions performed by a system that yields an observable result.
Use Cases & Requirements Analysis By: Mostafa Elbarbary.
Object Oriented Analysis Process
Use Case Modelling.
03/12/2001 © Bennett, McRobb and Farmer Use Case Diagrams Based on Chapter 6 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and.
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 Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
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.
System Sequence Diagrams
Quiz 1. Who is the guru of Extreme Programming?
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
LECTURE 3 USE CASE DESCRIPTION. Use Cases grouped into system modules Note: Same actor interacts with different modules USE CASE DIAGRAM OF THE CUSTOMER.
Intro: Use Case and Use Case Diagram Documentation.
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.
USE CASE Bayu Adhi Tama, MTI Faculty of Computer Science, University of Sriwijaya Slides are adapted from Petrus Mursanto
Submitted By: Memon Khurshed (Group Leader) Hamed Abdollahpur
Payroll System Bank System Any bank(s) to which direct deposit transactions are sent. Employee A person that works for the company that owns and operates.
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.
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
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.
Designing Classes Prelude © 2015 Pearson Education, Inc., Upper Saddle River, NJ. All rights reserved. Data Structures and Abstractions with Java, 4e Frank.
Designing Classes Chapter 3. 2 Chapter Contents Encapsulation Specifying Methods Java Interfaces Writing an Interface Implementing an Interface An Interface.
Lecture 4 :Use cases III (UC description) 1. Outline CT 1414 * Nouf Aljaffan2  Concept of Use Case Description  Levels of Use Case Description  Reading.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
1 Graph Coverage (6). Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Section
The College Of Applied Studies And Community Services Lecture 3 :Use cases II (UC description) Systems Analysis & Design Instructor: Nouf Aljaffan CT 1414.
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.
Week 10 1 Sequence Diagrams. Outline a)Add scenarios to the system to describe how Use Cases are realized as interactions among societies of objects b)Describe.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Larman chapter 61 Use cases Larman chapter 6. 2 Fig. 6.1.
Use Case Model Use case description.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
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.
UC Diagram & Scenario RKPL C & D. Using Use Case Diagram Use case diagrams are used to visualize, specify, construct, and document the (intended) behavior.
FILES AND EXCEPTIONS Topics Introduction to File Input and Output Using Loops to Process Files Processing Records Exceptions.
Jan Ron McFadyen1 Use Cases Used to capture functional requirements – there are other requirements categories such as usability, reliability,
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.
Using Use Case Diagrams
Use Case Modeling - II Lecture # 27.
Systems Analysis and Design in a Changing World, 6th Edition
Storyboarding and Game Design SBG, MBG620 Full Sail University
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 description.
Concepts, Specifications, and Diagrams
SAD ::: Spring 2018 Sabbir Muhammad Saleh
Systems Analysis and Design in a Changing World, 6th Edition
Using Use Case Diagrams
Seminar 2 Design of Informatics Systems
Object-Oriented Software Engineering
Use cases Dr. X.
Presentation transcript:

1Spring 2005 Specification and Analysis of Information Systems Specifying Requirements with Use Case Diagrams Part II

2 Outline Introduction Use Case Diagrams Writing Use Cases Guidelines for Effective Use Cases

3 Structure of a Use Case Specification X Name X.1 Preconditions X.4 Alternatives flows Introduction | Diagrams | Writing | Guidelines Alistair Cockburn “Writing Effective Use Cases” X.2 Main Flow X.3 Subflow

4 Preconditions What the system needs to be true before running the use-case. Examples –User account exists –User has enough money in her account –There is enough disk space Introduction | Diagrams | Writing | Guidelines

5 Main Scenario The success scenario is the main story-line of the use-case It is written under the assumption that everything is okay, no errors or problems occur, and it leads directly to the desired outcome of the use-case It is composed of a sequence of subflows Example: 1.Administrator enters course name, code and description 2.System validates course code 3.System adds the course to the db and shows a confirmation message Interaction step Validation Step Internal Change Step (plus) Interaction Step Introduction | Diagrams | Writing | Guidelines

6 Guidelines for Effective Writing Use simple grammar Only one side (system or actor) is doing something in a single step Write from an “objective” point of view using active tense –Bad: “Get the amount form the user and give him the money” Any step should lead to some progress –Bad: “User click the enter key” System Actor Actor asks for money System asks for amount Actor gives the amount System produce the money Introduction | Diagrams | Writing | Guidelines

7 Subflow – cont’d Branches: –If the user has more than 10000$ in her account, the system presents a list of commercials –Otherwise… Repeats: 1.User enters the name of the item he wishes to buy 2.System presents the items 3.User selects items to buy 4.Systems adds the item to the shopping cart 5.User repeats steps 1-4 until indicating he is done Introduction | Diagrams | Writing | Guidelines

8 Alternative Flows Success Scenario Shortcuts Exceptions Endpoints Used to describe exceptional functionality Examples: –Errors –Unusual or rare cases –Failures –Starting points –Endpoints –Shortcuts Starting points Introduction | Diagrams | Writing | Guidelines

9 Alternative Flows - Example Errors: –“Case did not eject properly” –“Any network error occurred during steps 4-7” –“Any type of error occurred” Unusual or rare cases –“Credit card is defined as stolen” –“User selects to add a new word to the dictionary” Endpoints –“The system detects no more open issues” Shortcuts: –“The user can leave the use-case by clicking on the “esc” key Introduction | Diagrams | Writing | Guidelines

10 Writing Include If a base use-case include another use-case, we will add a reference as a step: 1.System presents homepage 2.User performs login to the system OR Introduction | Diagrams | Writing | Guidelines

11 Writing Extend Scenarios do not include direct references Instead, they include extension points, such as: User enters search string System presents search results Extension point: results presentations OR The extension use-case includes conditions in which the extension is being committed –Example: if the user belongs to the “rich clients” group –If more than two commercials were found Introduction | Diagrams | Writing | Guidelines

12 Outline Introduction Use Case Diagrams Writing Use Cases Guidelines for Effective Use Cases

13 How to Model? print save Bullets format load Save as preview File action s Formattin g actions Viewing Actions Font forma t Paragraph format Bottom-up ProcessTop-down Process Starting with throwing all scenarios on the page, and then combining them: Starting with an overview of the system, and then splitting Use-cases

14 How to Model – cont’d Most of the analysis process are actually Combined

15 Combining Processes Number Limit: –The diagram should have between 3 to 10 base use-case. No more than 15 use cases (base + included + extending). Abstraction: –All use-cases should be in similar abstraction levels. Size: –Use cases should be described in half a page or more. Interaction: –Use-cases which are carried out as part of the same interaction. UC Introduction | Diagrams | Writing | Guidelines

16 Dividing Processes Size: –If a use-cases takes more than a page, consider include/extend Weak dependency: –If the dependency between two parts of a use-case is weak, they should be divided. UC Introduction | Diagrams | Writing | Guidelines

17 More Guidelines Factor out common usages that are required by multiple use cases –If the usage is required use > –If the base use case is complete and the usage may be optional, consider use > A use case diagram should: –contain only use cases at the same level of abstraction –include only actors who are required Introduction | Diagrams | Writing | Guidelines

18 When Are we Done? When every actor is specified. When every functional requirement has a use-case which satisfies it. A tractability matrix can help us determine it:      Use Cases Requirements Introduction | Diagrams | Writing | Guidelines

19 Summary Introduction to the Unified Modeling Language (UML) To Use Case Diagram Use Case Diagrams Dual presentation of use-cases Include, Extend, Inheritance Writing Use Cases Preconditions & Post-conditions Main scenario vs. Alternative Flow Guidelines for Effective Use Cases