Use Cases Requirements Engineering & Project Management Lecture 2.

Slides:



Advertisements
Similar presentations
Use-Cases.
Advertisements

Use case tutorial examples.
1 Case Study: Purchase Ticket. 2 Purchase Ticket by Check Use case Actor: Customer (initiator), clerk Purpose: Reserve seats on an airplane and capture.
Process Redesign Stages Developing Business Vision Understanding the Existing Business Designing the New Business Installing the New Business.
Online Real Estate System Group Members Introduction Member 1 Name: Awais Khalil VU ID: BC Introduction: Assalam-o-Alaikum, I am Awais Khalil.
© 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:
9/10/2004Use Case Workshop 1 CSC480 Software Engineering Workshop 1 Requirements Modeling.
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Introduzione ai casi d’uso  Adriano Comai 1999 Pag. 1 Use Cases: an Introduction  Adriano Comai 1999.
Use cases.
1 GetThere User Training Booking & Managing Online Travel.
Waterfall Development Process
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 Cases & Requirements Analysis By: Mostafa Elbarbary.
Documenting Requirements using Use Case Diagrams
Object Oriented Analysis Process
COMP1007 Intro to Systems Requirements © Copyright De Montfort University 2002 All Rights Reserved COMP1007 Intro to System Requirements Lecture 2 Use-Cases.
Requirements Analysis 4. 1 Use Case I b504.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Use-Cases.
Jan 8, Ron McFadyen1 Waterfall Spiral UP Case study UML Use Cases.
Use Case Modeling. Kendall & Kendall© 2005 Pearson Prentice Hall18-2 Commonly Used UML Diagrams The most commonly used UML diagrams are: – Use case diagram,
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Use cases: deciding what you want.
Adding the Detail Filling in Use Case Templates. Use Case Template The use case diagram is important for visualizing a system and as a communication tool.
The first step in getting what you want is to decide what you want.
What is Business Analysis Planning & Monitoring?
ConOps and Use Cases Copyright, 2003 © Jerzy R. Nawrocki Requirements Engineering.
RUP Requirements RUP Artifacts and Deliverables
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 4: Detailing a Use Case.
Project Analysis Course ( ) Week 2 Activities.
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.
Copyright © Jerzy R. Nawrocki Requirements Review Requirements Engineering & Project.
Use Cases Ivar Jacobson - guru at Rational Corp., defined UML.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
Requirements Verification & Validation Requirements Engineering & Project Management.
Introduction to XPrince Requirements Engineering & Project Management Lecture 1.
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-Cases Elicitation and FAST Copyright, 2003 © Jerzy R. Nawrocki Requirements Engineering.
Project Planning & Initiation Requirements Engineering & Project Management Lecture.
Faculty of Computer & Information Software Engineering Third year
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 20. Review Software Requirements Requirements Engineering Process.
Copyright © Jerzy R. Nawrocki The Requirements Document and IEEE 830 Requirements Engineering.
Welcome to Concur! Procurement & Support Services.
© 2007 First Data Corporation. All Rights Reserved. RFP 101 – Requirements Management Dave Halbig December 6, 2007.
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
1 Object-Oriented Modeling Using UML CS 3331 Section 2.4 Modeling Requirements with Use Cases.
1 Objectives  Define key concepts of use-case modeling.  List the benefits of use-case modeling.  Find actors and use cases.  Describe their relationships.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
Develop Project Charter
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.
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
Requirements Management with Use Cases Module 9: Requirements Across The Product Lifecycle Requirements Management with Use Cases Module 9: Requirements.
Non-Stop Savings. Guaranteed. ResX 4.0 System Updates And Upgrades.
CMSC 345 Use Cases. u Describes the system’s behavior under various conditions as the system responds to a request from one of the stakeholders, called.
Sept Ron McFadyen1 Use Cases Introduced by Ivar Jacobson in 1986 literal translation from Swedish ”usage case” Used to capture and describe.
Change Management Requirements Engineering & Project Management Lecture 10.
IntellAgile Copyright © 2002 Craig Larman. All rights reserved. Writing Use Cases: Requirements in Context.
Use Case Diagram Lecture # 1. Use Case Diagram Use-cases are descriptions of the functionality of a system from a user perspective.  Depict the behaviour.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Requirements capture: Using UML Use Cases David Millard and Yvonne Howard {dem,
Peopleware Requirements Engineering & Project Management Lecture 7.
CMPE 280 Web UI Design and Development August 29 Class Meeting
Functional Requirements
UML Use Case Diagrams.
Systems Analysis and Design
Start at 17th March 2012 end at 31th March 2012
Presentation transcript:

Use Cases Requirements Engineering & Project Management Lecture 2

J.Nawrocki, Use Cases Key Roles in XPrince Project Manager Analyst Architect Time

J.Nawrocki, Use Cases Architecture Aim & Scope XPrince Artefacts Business Model and System Scope Most Important Use Cases Architect. Vision & Tools Requirements Spec. Mockup Accept. Tests Frame Initial Prototype (code + test cases) GUI Design A&S Plan Init. Project Plan Architect. Plan Updat. Proj. Plan Analyst Architect Project Manager

J.Nawrocki, Use Cases Business Model & Scope: Use Cases Dean Dean: Sets number of places for each MS Degree Programme. Gets list of students assigned to each MS Programme. Student Student: Enters her preferences by sequencing MS Degree Programmes from the most to the least interesting. Gets information about the MS Programme to which she has been assigned.

J.Nawrocki, Use Cases Agenda Historical Perspective Scenarios vs. Use Cases Poorly-Written Use Case Patterns for Effective Use Cases Elicitation of Use Cases Use Cases vs. User Stories Introduction XPrince Team Project Lifecycle The Analyst Role The Architect Role The Project Manager Role Scaling up Conclusions

J.Nawrocki, Use Cases Ivar Jacobson 1967: Ericsson, telecommunication systems 1985: Ph.D., Dep. of Computer Systems, The Royal Institute of Tech., Stockholm 1987: Founder of Objectory AB -> (Objectory Process) 1995: Objectory AB merges with Rational 2003: IBM buys Rational

J.Nawrocki, Use Cases Ivar Jacobson Addison-Wesley, 1992

J.Nawrocki, Use Cases Use Case Diagram in UML Construct itinerary Merchant bank Find flight Travel agent Airline reservation Reserve flight Issue ticket

J.Nawrocki, Use Cases Agenda Historical Perspective Scenarios vs. Use Cases Poorly-Written Use Case Patterns for Effective Use Cases Elicitation of Use Cases Use Cases vs. User Stories Introduction XPrince Team Project Lifecycle The Analyst Role The Architect Role The Project Manager Role Scaling up Conclusions

J.Nawrocki, Use Cases The same goal Use Case as a set of scenarios Scenario #1 Scenario #2 Scenario #3 Use Case

J.Nawrocki, Use Cases Behavioural scenario Get Paid for Car Accident Actors : Claimant -- Accident victim making claim Insurance Company -- Company insuring Claimant Agent -- Insurance Company representative Scenario #1 1. Claimant submits claim with substantiating data. 2. Insurance Company verifies that Claimant owns a valid policy. 3. Insurance Company assigns Agent to examine the case. 4. Agent verifies that all details are within policy guidelines. 5. Insurance Company pays Claimant.

J.Nawrocki, Use Cases Behavioural scenario Get Paid for Car Accident Actors : Claimant -- Accident victim making claim Insurance Company -- Company insuring Claimant Agent -- Insurance Company representative Scenario #2 1. Claimant submits claim with substantiating data. 2. Submitted data is incomplete and Insurance Company requests missing information. 3. Claimant supplies missing information. 4. Insurance Company verifies that Claimant owns a valid policy. 5. Insurance Company assigns Agent to examine the case. 6. Agent verifies that all details are within policy guidelines. 7. Insurance Company pays Claimant.

J.Nawrocki, Use Cases Behavioural scenario Get Paid for Car Accident Actors : Claimant -- Accident victim making claim Insurance Company -- Company insuring Claimant Agent -- Insurance Company representative Scenario #3 1. Claimant submits claim with substantiating data. 2. Insurance Company verifies that Claimant owns a valid policy. 3. Claimant does not own a valid policy, so Insurance Company declines claim, notifies Claimant, records all this, and terminates proceedings.

J.Nawrocki, Use Cases A use case Get Paid for Car Accident Actors : Claimant -- Accident victim making claim Insurance Company -- Company insuring Claimant Agent -- Insurance Company representative Main Scenario 1. Claimant submits claim with substantiating data. 2. Insurance Company verifies that Claimant owns a valid policy. 3. Insurance Company assigns Agent to examine the case. 4. Agent verifies that all details are within policy guidelines. 5. Insurance Company pays Claimant. Extensions 1a. Submitted data is incomplete: 1a1. Insurance Company requests missing information. 1a2. Claimant supplies missing information. 2a. Claimant does not own a valid policy:...

J.Nawrocki, Use Cases Agenda Historical Perspective Scenarios vs. Use Cases Poorly-Written Use Case Patterns for Effective Use Cases Elicitation of Use Cases Use Cases vs. User Stories Introduction XPrince Team Project Lifecycle The Analyst Role The Architect Role The Project Manager Role Scaling up Conclusions

J.Nawrocki, Use Cases Poorly written use case 1.Display a blank schedule. 2.Display a list of all classes in the following way: The left window lists all the courses in the system in alphabetical order. The lower window displays the times the highlighted course is available. The third window shows all the courses currently in the schedule. 3.Do. 4.Student clicks on a course. 5.Update the lower window to show the times the course is available. 6.Student clicks on a course time and then clicks on the „Add Course” button.... Register for Course (Main Scenario)

J.Nawrocki, Use Cases Poorly written use case 1.Display a blank schedule. 2.Display a list of all classes in the following way: The left window lists all the courses in the system in alphabetical order. The lower window displays the times the highlighted course is available. The third window shows all the courses currently in the schedule. 3.Do. 4.Student clicks on a course. 5.Update the lower window to show the times the course is available. 6.Student clicks on a course time and then clicks on the „Add Course” button.... Too much user interface detail.

J.Nawrocki, Use Cases Well-written use case 1.Student requests a new schedule. 2.The system prepares a blank schedule form and pulls in a list of open and available courses from the Course Catalog System. 3.Student selects primary and alternate courses from the available offerings. 4. For each course, the system verifies that the Student has the necessary prerequisities and adds the Student to the course, marking the Student as „enrolled” in that course in the schedule.... Register for Course (Main Scenario)

J.Nawrocki, Use Cases Other frequent defects Too many use cases at low goal levels („Authorize user”). Using a use case for non-behavioral information (e.g. forms description – use adornments). Too long (should be short, usually 3-9 steps). Not a complete goal accomplished (also lack of alternative behaviors description). Sentence fragments (e.g. omitting the actors’ names in steps).

J.Nawrocki, Use Cases Poorly written use case 1.Display a blank schedule. 2.Display a list of all classes in the following way: The left window lists all the courses in the system in alphabetical order. The lower window displays the times the highlighted course is available. The third window shows all the courses currently in the schedule. 3.Do. 4.Student clicks on a course. 5.Update the lower window to show the times the course is available. 6.Student clicks on a course time and then clicks on the „Add Course” button.... Register for Course (Main Scenario)

J.Nawrocki, Use Cases Agenda Historical Perspective Scenarios vs. Use Cases Poorly-Written Use Case Patterns for Effective Use Cases Elicitation of Use Cases Use Cases vs. User Stories Introduction XPrince Team Project Lifecycle The Analyst Role The Architect Role The Project Manager Role Scaling up Conclusions

J.Nawrocki, Use Cases Patterns for effective use cases User Valued Transactions User Valued Transactions: Identify the valuable services that the system delivers to the actors to satisfy their business purposes. Book trip Search for flights Promote vacations Create trip itinerary Update trip itinerary Delete trip itinerary Book trip Search for flights Promote vacations Change booking Cancel booking

J.Nawrocki, Use Cases Patterns for effective use cases Ever Unfolding Story Ever Unfolding Story: Organize the use case set as a hierarchical story that can be either unfolded to get more detail or folded up to hide detail and show more context.

J.Nawrocki, Use Cases Use case goal levels Book hotelBook flight User Level Book trip Business Level Find flight Reserve seat Find hotel Reserve room Subfunction Level

J.Nawrocki, Use Cases Agenda Historical Perspective Scenarios vs. Use Cases Poorly-Written Use Case Patterns for Effective Use Cases Elicitation of Use Cases Use Cases vs. User Stories Introduction XPrince Team Project Lifecycle The Analyst Role The Architect Role The Project Manager Role Scaling up Conclusions

J.Nawrocki, Use Cases Elicitation of Use Cases Breadth Before Depth Breadth Before Depth: Conserve your energy by developing an overview of your use cases first, then progressively add detail. Spiral Development Spiral Development: Develop use cases in an iterative, breadth-first manner, with each iteration prograssively increasing the precision and accuracy. Multiple Forms Multiple Forms: Select the format based on the risks associated with the project and the preferences of the people involved.

J.Nawrocki, Use Cases Short FormatActor Administrator Use Case Set Monitor Parameters Select MonitorDescription Person monitoring and controlling job control systemDescription Allow administrator to specify boundaries and Precision of items being monitored Choose something to monitor (e.g. a process or wait queue)

J.Nawrocki, Use Cases Fully Dressed Format (1) Buy Something Primary Actor Primary Actor: Requestor Goal in Context Goal in Context: Requestor buys something through the system, gets it. Does not include paying for it. Scope Scope: Business – The overall purchasing mechanism, electronic adn non-electronic, as seen by the people in the company. Level Level: Summary Stakeholders and Interests Requestor Requestor: Wants what he/she ordered. Company Company: Wants to control spending but allow needed purchases. Vendor Vendor: Wants to get paid for any goods delivered. Precondition Precondition: None

J.Nawrocki, Use Cases Fully Dressed Format (2) Success Guarantees Success Guarantees: Requestor has goods, correct budet ready do be debited. Trigger Trigger: Requestor decides to buy something. Main Success Scenario 1.Requestor 1.Requestor: Initiate a request. 2.Approver 2.Approver: Check money in the budget, check price of goods, complete request for submission. 3.Buyer 3.Buyer: Check contents of storage, find best vendor for goods. 4.Authorizer 4.Authorizer: Validate Approver’s signature....Extensions 1a. Requestor does not know vendor or price: leave those parts blank and continue.

J.Nawrocki, Use Cases Fully Dressed Format (3) Priority Priority: Various Response Time Response Time: Various Frequency Frequency: Three times a day Channel to Primary Actor Channel to Primary Actor: Internet browser, mail system, or equivalent Channels to Secondary Actors Channels to Secondary Actors: Fax, phone, car Open Issues Open Issues: When is a canceled request deleted from the system? What authorization is needed to cancel a request?

J.Nawrocki, Use Cases Elicitation of Use Cases Quitting Time Quitting Time: Stop developing use cases once they are complete and satisfactorily meet audience needs. Writers Lincense Writers Lincense: Small diffrences in writing style are inevitable.

J.Nawrocki, Use Cases Agenda Historical Perspective Scenarios vs. Use Cases Poorly-Written Use Case Patterns for Effective Use Cases Elicitation of Use Cases Use Cases vs. User Stories Introduction XPrince Team Project Lifecycle The Analyst Role The Architect Role The Project Manager Role Scaling up Conclusions

J.Nawrocki, Use Cases Use Cases vs. User Stories Customer User story Analyst Use case

J.Nawrocki, Use Cases Summary Behavioural description Several scenarios & 1 goal Good and bad use cases Elicitation process Use cases and user stories

J.Nawrocki, Use Cases Questions?

J.Nawrocki, Use Cases Quality assessment 1. What is your general impression? (1 - 6) 2. Was it too slow or too fast? 3. What important did you learn during the lecture? 4. What to improve and how?