SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Requirements Prioritization 1.11.2001 Laura Lehtola QURE Project.

Slides:



Advertisements
Similar presentations
COST ESTIMATION TECHNIQUES AND COCOMO. Cost Estimation Techniques 1-)Algorithmic cost modelling 2-)Expert judgement 3-)Estimation by analogy 4)-Parkinsons.
Advertisements

Evaluating a Software Architecture By Desalegn Bekele.
Project Management Process. Project Complexity means that: a team of people are needed to supply expertise the work needs to be broken into manageable.
17136C Understanging Buyers Ch.03 Consumer decision- making process Section A:True or False.
ECE450 – Software Engineering II
Requirements Analysis CS 414 – Software Engineering I Donald J. Bagert Rose-Hulman Institute of Technology January 7, 2003.
The Process of Interaction Design. Overview What is Interaction Design? —Four basic activities —Three key characteristics Some practical issues —Who are.
The Process of Interaction Design
Chapter 6 The Process of Interaction Design Presented by: Kinnis Gosha, Michael McGill, Jamey White, and Chiao Huang.
Assignment of Weights Other methods, besides arbitrary, for weight assignment exist There are both direct and indirect weight elicitation techniques Source:
The Process of Interaction Design. What is Interaction Design? It is a process: — a goal-directed problem solving activity informed by intended use, target.
Establishing corrective norms Session III TEAM WORKSHOP team3.ppt - 1 Team Workshop - Session III  Summary of Brainstorming/Affinity grouping exercise.
Quality Function Deployment Quality Function Deployment QFD Vivian Cherie KJ.
Operations and Supply Chain Strategies
Stoimen Stoimenov QA Engineer QA Engineer SitefinityLeads,SitefinityTeam6 Telerik QA Academy Telerik QA Academy.
1 Agile Estimating and Planning October, 2013 Technion, Israel Prof. Fabio Kon University of Sao Paulo, Brazil
Health Systems and the Cycle of Health System Reform
1 Requirements Elicitation Slinger Jansen. 2  1. Motivation  2. Requirements  3. Continuous RE  4. The RE Framework  7. Fundamentals of Goal Orientation.
Opinion-Based Metrics
10/25/1999(c) Ian Davis1 Software Project Planning © Ian Davis.
SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Requirements Traceability Virve Leino QURE Project Software.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
Documenting Software Architectures
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Requirements Engineering
SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY User Studies Basic principles, methods, and examples Sari.
Industrial Software Project Management Some views on project managing industrial and business software projects.
Quality Control Project Management Unit Credit Value : 4 Essential
Interaction Design Process COMPSCI 345 S1 C and SoftEng 350 S1 C Lecture 5 Chapter 3 (Heim)
2 © 2014 copyright of Training ByteSize unless otherwise stated. “I’ve always been Agile. I just never knew it! A real experience from the 1990s.” John.
T OPICS: House of Quality (QFD) IENG 464 / 465 F ALL / S PRING 2013 – 2014.
© 2012 NTT DATA, Inc. NTT DATA Corporation Requirements Prioritization.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
Mohammad Amin Kuhail M.Sc. (York, UK) University of Palestine Faculty of Engineering and Urban planning Software Engineering department Requirements Engineering.
Educational Research: Competencies for Analysis and Application, 9 th edition. Gay, Mills, & Airasian © 2009 Pearson Education, Inc. All rights reserved.
Software Requirements (Advanced Topics) “Walking on water and developing software from a specification are easy if both are frozen.” --Edward V Berard.
Software Requirements Engineering Negotiation Process Lecture-18.
Requirements Engineering Requirements Elicitation Process Lecture-9.
Daniel Amyot, University of Ottawa Based on PowerPoint slides by Gunter Mussbacher with material from: K.E. Wiegers, D. Leffingwell & D. Widrig, I.K. Bray,
INTRODUCTION TO COLLECT PRIORITIES 2014 v COLLECT.
An overview of multi-criteria analysis techniques The main role of the techniques is to deal with the difficulties that human decision-makers have been.
Conflict Resolution Ideas for principled education, inspired by the well-known book inspired by the well-known book “Getting to Yes” – “Negotiating Agreement.
Software Architecture Evaluation Methodologies Presented By: Anthony Register.
SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY © Tomi Männistö, Varvana Myllärniemi, 2008 T Software Architectures.
Lecture 4 – XP and Agile 17/9/15. Plan-driven and agile development Plan-driven development A plan-driven approach to software engineering is based around.
Miguel Garzón, University of Ottawa Based on PowerPoint slides by Gunter Mussbacher with material from: K.E. Wiegers, D. Leffingwell & D. Widrig, I.K.
Tools and Techniques for Project Portfolio Management Jon Lewis - Director, Ninth Wave.
Some Thoughts On PROTOTYPE Form Design. You may place prompt over or to the left of the data-entry field; select one and be consistent. Name Tom PromptResponse.
Software Project Management
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Product Design Alternative Generation, Evaluation, and Selection.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
1 Requirements Engineering for Agile Methods Lecture # 41.
© NALO Solutions Limited NALO Solutions, presents the – Revenue Collector App Using Mobile Phones to gather Revenue SOFTWARE ENGINEERING.
Software Engineering 2004 Jyrki Nummenmaa 1 Why new software methodologies The classic waterfall-model based techniques are strongly based on the.
Project Management What are businesses trying to achieve by using Operations Management? (done on AS) EFFICIENCY.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
1 Requirements Prioritization Lecture # The Decision Making Process In everyday life, we make decisions, e.g., when buying a DVD-player, food, a.
1 Team Skill 4 Managing the scope Noureddine Abbadeni Al-Ain University of Science and Technology College of Engineering and Information Technology Based.
27 Jul 2006CSE403, Summer'06, Lecture 15 Midterm Exam Statistics Other statistics: Average: 40.6 Median: 42.3 Std Dev: 6.2 Max: 46.5 Min: 28 Easiest Problems:
Requirement Prioritization
Requirements analysis, representation and validation
Methodologies By Akinola Soyinka.
Elaboration & Negotiation Process
Lecture 11: Scheduling, Estimation, and Prioritization
Introduction to questionnaire design
Lecture 20: Requirements Prioritization
Practical Software Engineering
Chapter 12 Power Analysis.
Requirements Analysis and Negotiation
Adapting Agile in Pharmaceutical Industries
Presentation transcript:

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Requirements Prioritization Laura Lehtola QURE Project Software Business and Engineering Institute Helsinki University of Technology

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Structure of the presentation  Introduction  Prioritization principles  Prioritization methods  Prioritization scales  Wiegers` method  Pair-wise comparison technique  Comparison between the methods

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Introduction (1/3)  There are usually more requirements than you can implement given stakeholder`s time and resource constraints... [Kar97], Lot`s of requirements Few resources but...

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Introduction (2/3) ... on the other hand, systems have useless functions for the users and customers! Large amount of the software functions are ”rarely” (19%) or ”never used” (45%) [Moi00]

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY  If we manage to implement just those requirements that meet customer and user needs  product development time shortens  product development costs decrease ”How to select a subset of the customers´ requirements and still produce a system that meets their needs?” Introduction (3/3)

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Requirements prioritization

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Prioritization principles ”Prioritization means balancing the business benefit of each requirement against its cost and any implications it has for the architechtural foundation and future evolution of the product ” [Wie99]

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Why prioritize requirements? (1/2)  Priorities help you  concentrate on the most important user and customer requirements  focus the development effort  manage projects more effectively  plan for staged deliveries  It can also help you  make acceptable trade-offs among conflicting goals  allocate resources [Wie99], [Kar97]

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Why prioritize requirements? (2/2) ”If the customers do not differentiate their requirements by importance and urgency, project managers must make these decisions on their own.” [Wie99] ”Most software organisations carry out this selection process informally and quite frequently produce systems that developers, customers and users view as suboptimal.” [Kar97]

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Challenges of prioritization (1/2)  Different stakeholders have usually different opinions about requirement´s importance and urgency.  People naturally have their own interest and they aren`t always willing to compromise their needs for someone else`s benefit.  Many of the prioritization methods are either too complicated and time consuming or insufficient [Rya97].

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Challenges of prioritization (2/2)  Customers may try to avoid prioritization, because  they suspect that low priority requirements will never be implemented  Developers may try to avoid prioritization, because  they feel bad to admit, that they can`t implement all requirements

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Prioritization methods

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Prioritization scales (1/3)  Method  Grouping requirements in the categories  Usually three-level scale (e.g. Essential, Conditional, Optional [IEEE98])  Participants  Different stakeholders  Conflicts are negotiated ”informally”

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Prioritization scales (2/3)  Pros  Cheap and easy to use  Clear technique, near common sense.

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Prioritization scales (3/3)  Cons  The results are in many cases just a rough estimate  Participant dependent method  Customers estimate 85% of requirements at high priority, 15% at medium and 5% at low priority  No desired flexibility for the project  In the real world low priority requirements have frequently been abandoned.

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Wiegers´ method (1/4)  Basic idea  Customer value depends on both  the benefit provided to the customer by spesific requirement  penalty paid by that feature [Par96]  Can be used only for negotiable requirements (those that are not top priority)

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Wiegers´ method (2/4)  Method  Estimate for each requirement using scale from 1 to 9  relative benefit that it provides to the customer  relative penalty the customer would suffer without it  relative cost for it  relative risk for it  Calculate the percentage of the benefit/penalty/ cost/risk that comes from each requirement

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Wiegers´ method (3/4)  Calculate priority for each requirement using the following formula  Participants  Key customer representatives  Software developers

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Wiegers´ method (4/4)  Pros  Relative method  Estimation is based on several variables  Results are informative and clear  Cons  Not much objective information is available about the method  Results are dependent on people´s ability to estimate value, cost and risk

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Pair-wise comparison (1/6)  Method  n requirements are setted up in the rows and columns of the n x n –matrix  Pair-wise comparison of all the requirements according the criterion from 1 to 9

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Pair-wise comparison (2/6) 1Of equal value 3Slightly more value 5Essential or strong value 7Extreme value 9Intermediate value

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Pair-wise comparison (3/6)  Participants  Requirements engineers  Review candidate requirements  Customers and users  Apply p-w comparison to estimate the relative value of the candidate requirements  Software engineers  Apply p-w comparison to estimate the relative cost of implementing each requirement

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Value (%) Pair-wise comparison (4/6) Cost (%) Requirement Cost-value diagram

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Pair-wise comparison (5/6)  Pros  Reliable method  Redundancy  Informative results  Estimating relative values is found to be easier and quicker than estimating absolute values

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Pair-wise comparison (6/6)  Cons  Suitable only for a small number of requirements (<20)  Number of comparisons ½ n(n-1)  Does not take dependencies between the requirements in to account  One needs to get acquainted with the method before use

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Comparison of the methods

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY Comparison of the methods Prioritization scales Wieger`s method Pair-wise comparison DifficultyEasyMediumDifficult Work neededLittleMediumA lot ResultsRoughClear

SoberIT Software Business and Engineering Institute HELSINKI UNIVERSITY OF TECHNOLOGY References  [Kar97] Karlsson Joachim, Ryan Kevin, “A Cost-Value Approach for Prioritizing Requirements”, IEEE Software, pp , September/October 1997  [Moi00] Moisiadis Frank, Prioritising Use Cases and Scenarios, IEEE 2001  [Wie99] Wiegers, K., Software Requirements, Microsoft Press, Redmond, Washington, 1999.