Requirements Management with Use Cases Module 3: Analyze the Problem Requirements Management with Use Cases Module 3: Analyze the Problem.

Slides:



Advertisements
Similar presentations
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 1.Gain agreement on the problem definition. 2.Understand the root causes 3.Identify the.
Advertisements

Inception: Starting a New Project Needs Features Vision.
Practical Business Modeling in the Unified Process Tom Morgan Software Architect, Fidelity National Information Services
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Use-case Modeling.
1 Chapter 5: The F1ive Steps in Problem Analysis The five steps in problem analysis. Team Skill 1.
1 Team Skill 1 - Analyzing the Problem Sriram Mohan/ Steve Chenoweth 371 Ch 5 in Requirements Text.
Introduction to Software Engineering Dr. Basem Alkazemi
1 Team Skill 1 - Analyzing the Problem (Chapters 5-7 of the requirements text) CSSE 371, Software Requirements and Specification Don Bagert, Rose-Hulman.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
Waniwatining Astuti, M.T.I
Problem Analysis The goal of problem analysis is to gain a better understanding of the problem being solved before development begins Gain agreement on.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 7 Requirements Engineering Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall 4.1.
RUP Requirements RUP Artifacts and Deliverables
Requirements Management with Use Cases Module 6: Define the System Requirements Management with Use Cases Module 6: Define the System.
Team Skill 1 - Analyzing the Problem Steve Chenoweth & Sriram Mohan Pages 43 – 52 in Requirements Text.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 06. Requirements.
Requirements Analysis
Use Cases College of Alameda Copyright © 2007 Patrick McDermott.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 6 Slide 1 Chapter 6 Requirements Engineering Process.
1 IBM Software Group ® Mastering Requirements Management with Use Cases Module 4: Analyze the Problem.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1Welcome! Rational Requirements Management.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
1 IBM Software Group ® Mastering Requirements Management with Use Cases Module 10: Structure the Use-Case Model.
1 Source: IBM Academic Program IBM Software Group ® Mastering Requirements Management with Use Cases Module 3: Introduction to Use-Case Modeling.
Software Engineering Saeed Akhtar The University of Lahore Lecture 7 Originally shared for: mashhoood.webs.com.
Approaching a Problem Where do we start? How do we proceed?
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
1 Identifying System Requirements. 2 Agenda Identifying System Requirements –Stakeholder Needs –Features Project Scope Stakeholder Classifications.
Lecture-3.
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management 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.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
1 System Analysis and Design Using UML INSTRUCTOR: Jesmin Akhter Lecturer, IIT, JU.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
1 Capturing Requirements As Use Cases To be discussed –Artifacts created in the requirements workflow –Workers participating in the requirements workflow.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Use cases.
Rational Unified Process Fundamentals Module 3: Disciplines I.
Software Requirements and Design Khalid Ishaq
Requirements Management with Use Cases Module 10: Requirements Across the Product Lifecycle Requirements Management with Use Cases Module 10: Requirements.
Requirements Engineering for Web Applications. SR: System Vision Document Written by key stakeholders Written by key stakeholders An executive summary.
By Germaine Cheung Hong Kong Computer Institute
CSC480 Software Engineering Lecture 8-9 September 20, 2002.
Requirements Management with Use Cases Module 9: Requirements Across The Product Lifecycle Requirements Management with Use Cases Module 9: Requirements.
1 Team Skill 1 - Analyzing the Problem Continued and Product Features and Challenges Sriram Mohan.
Team Skill 1 Analyzing the Problem
Rational Requirements Management with Use Cases v5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
Problem Analysis 1. What is Problem Analysis?  The process of understanding real-world problems and user needs and proposing solutions to meet those.
Rational Requirements Management with Use Cases v 5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
Essentials of Modeling with IBM Rational Software Architect V7.5
Requirement Engineering
Analyzing the Problem Continued and Product Features and Challenges Steve Chenoweth & Chandan Rupakheti RHIT Pages Requirements Text.
Rational Requirements Management with Use Cases v 5.5 Copyright © Rational Software, all rights reserved 1 Requirements Management with Use Cases.
Requirements Management with Use Cases Module 4: Analyze the Problem Requirements Management with Use Cases Module 4: Analyze the Problem.
Requirements Management with Use Cases Module 2: Introduction to RMUC Requirements Management with Use Cases Module 2: Introduction to RMUC.
Requirement Discipline Spring 2006/1385 Semester 1.
Requirements Management with Use Cases Module 5: Define The System To Be Built Requirements Management with Use Cases Module 5: Define The System To Be.
1 Version /05/2004 © 2004 Robert Oshana Requirements Engineering Analyzing the Problem.
Requirements Management with Use Cases Module 0: About this course Requirements Management with Use Cases Module 0: About this course.
1 Requirements Elicitation – 2 Lecture # Requirements Engineering Process Requirements Elicitation Requirements Analysis and Negotiation Requirements.
Your Prescription for Requirements Management 1. Assumptions The prescription for requirements management is based on the following assumptions:  The.
1 Team Skill 1 Analyzing the Problem … Part 1: 5 steps in Problem Analysis Based on “Software Requirements Management, A use case approach”, by Leffingwell.
Team Skill 1 - Analyzing the Problem
Chapter 5 유스케이스 개요 Introduction to Use Cases
Presentation transcript:

Requirements Management with Use Cases Module 3: Analyze the Problem Requirements Management with Use Cases Module 3: Analyze the Problem

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved About This Course 1 - Best Practices of Software Engineering 2 - Introduction to RMUC 3 - Analyze the Problem 4 - Understand Stakeholder Needs 5 - Define the System 6 - Manage the Scope of the System 7 - Refine the System Definition 8 - Manage Changing Requirements 9 - Requirements Across the Product Lifecycle Course Outline

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 3 Analyze The Problem: Module Objectives  Learn the steps in analyzing a problem  Begin building our use-case model  Establish common vocabulary  Develop Requirement Management Plan

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 4 Where Are We in The Requirements Workflow?

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 5 Analyze The Problem: Activities and Artifacts

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 6 Analyze the Problem: Focus on The Problem Problem Solution Space Problem Space Needs Features Software Requirements Test Procedures DesignUser Docs The Product To Be Built Traceability

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 7 Why Is Analyzing the Problem Important?  To avoid the “Yes...but...” “Yes, it meets the requirements, but it doesn’t solve my problem.”  To avoid extra work  It pays to focus on the real problem  To understand requirements  Problem statement Subject is the customer “I need to …”  Requirement statement Subject is the system “The system provides …”

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 8 Gause & Weinberg, 1989 Definition of a Problem “A problem can be defined as the difference between {Problem} things as perceived things as desired” and

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 9 Activity: Develop Vision Steps in Problem Analysis 1: Gain agreement on the problem being solved 2: Identify stakeholders 3: Define system boundaries 4: Identify constraints imposed on the system

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 10 Step 1. Gain Agreement  What is the problem?  We technologists tend to rush headlong into solution providing - rather than taking time to truly understand the problem  Suggestion: Write it down, see if you can get everyone to agree on it  What is the problem, really?  Searching for root causes - or the “problem behind the problem” - often leads to a clearer understanding of the real problem

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 11 What Is the Problem Being Solved? Fishbone Diagram: One Method for Root-Cause Analysis in Solving our Sample Problem List contributing causes to the identified problem. Keep asking “Why?” (expand each rib). How much does each contribute? We Need ATM Machines Banking at night Too much waiting Privacy when banking Banking in airports More banking locations Bank tellers too costly Our Customer’s Stated Problem:

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 12 Focus on the Largest Contributors Rank in order and use the Rule to focus on the top contributing causes to address the greatest portion of the problem. Pareto Diagram % Contribution

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 13 Exercise: What Problem Are We Solving? What is the “problem behind the problem” for our class project? Which of these causes contribute most to the identified problem? Pick the largest contributor and repeat (putting this item at the head of the fishbone) until the most significant root causes are identified. What the customer believes to be the problem

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 14 Exercise: Step 2. Identify the Stakeholders A stakeholder is anyone who is materially affected by the outcome of the system. Which stakeholders will be actors in our system?

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 15 Step 3. Define the System Boundaries Legacy System Communications Reports New System Other Systems Users Maintenance Which of these will be actors in our system?

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 16 Actor Use Actors to Help Define System Boundaries  An actor is  A user of the system  Outside the system

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 17 Example: Actors Help Determine System Boundaries PC System boundary? Server PC Is the client software part of the system or is the client an actor? Server End User PC

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 18 Is the Answering Machine an actor or part of the system? Example: Actors Help Define System Boundaries Caller System boundary? Simple Phone System Answering Machine (voice mail) Callee

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 19 PassengerTravel AgentAirline Booking system The passenger never touches this system; the travel agent operates it. Or perhaps you are building an Internet application... Internet Booking system (airline www page) Passenger Activity: Find Actors. Who Is the Actor? Who is pressing the keys (interacting with the system)?

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 20 Withdraw Cash Sam Acts as a Bank Customer Jody Acts as a Bank Customer Instances of Actors Use-Case model Bank Customer

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 21 Charlie Charlie acts as a Maintenance Crew Charlie acts as a Cashier A User Can Act as Several Actors Maintenance Crew Cashier

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 22 Actor Useful Questions in Identifying Actors  Who will use the system?  Who will supply, use, or remove information?  Who will use this functionality?  Who is interested in a certain requirement?  Where in the organization is the system used?  Who will support and maintain the system?  What are the system’s external resources?  What other systems will need to interact with this one?

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 23 Exercise: Find Actors Our System

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 24 Step 4. Identify Constraints Economic Technical Environmental System Political Feasibility

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 25 Exercise: Formulating a Problem Statement Now, using the results of the four Problem Analysis steps just completed, let’s formulate a Problem Statement for our class project. The problem of(describe the problem) affects(the stakeholders affected by the problem) The impact of which is (what is the impact of the problem) A successful solution would (list some key benefits of a successful solution)

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 26 Activity: Capture a Common Vocabulary  Why develop a glossary?  Defines terms used in the project  Promotes common vocabulary  Helps prevent misunderstandings  When to develop a glossary?  Start as soon as possible  Continue throughout project Glossary RMUC Glossary and TP1: Glossary Template

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 27 Capturing Vocabulary: Make A Domain Model?  Visual model of business objects  Benefits:  Formalizes the vocabulary for the project  Simplifies reasoning about different terms  Describes relationships between terms  Provides visual representation of relationships Savings Acct.Bank AccountChecking Acct.

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 28 Activity: Develop Requirements Management Plan  Up-front planning helps  What is in a Requirements Management Plan?  Types of requirements to collect  Types of attributes to collect  Types of requirements to trace  Types of documents to produce  Management guidelines TP2: RM Plan Template UC8: RM Plan

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 29 Defining the Problem Don’t mistake a solution method for a problem definition Especially if it’s your own solution method! Gause & Weinberg, 1982

Requirements Management with Use Cases v2000 Copyright © 1998, 2000 Rational Software, all rights reserved 30 Review: Analyze the Problem 1. What are the four steps in problem analysis? 2. How can you apply the “Pareto Principle” after determining the root causes of your problem? 3. Who are the stakeholders in your project? 4. What determines the boundaries of a system? 5. What boundaries must be considered when building your product? 6.How can actors be used to help determine the boundaries of a system? 7. What are some of the constraints that will be imposed on your system? 8. Why is it important to establish a glossary?