Вы находитесь на странице: 1из 4

International Journal of Modern Computer Science (IJMCS) ISSN: 2320-7868 (Online)

Volume 3, Issue 2, June, 2015

Product Backlog Prioritization in Scrum: A Review


Charanpreet Kaur1st Vijay Kumar 2nd
Department of CSE, Department of CSE
Chandigarh University, Chandigarh University,
Gharaun, Mohali, Punjab, India. Gharuan, Mohali, Punjab, India.
E-mail: chkaur10@gmail.com E-mail: vijaykumar_nrw@hotmail.com

Abstract: Scrum is emerged as one of the flexible and lightweight agile approach in IT industry. The key element of its flexibility is evolving
requirements and delivery of business value in small releases. Identification of correct candidate requirement (which is most likely to be
included in sprint backlog) for a certain release is necessary to deliver highest business value early. Prioritization is an effective way to identify
correct candidate requirements. However, in scrum, prioritization is not static and easy process as in traditional development methodologies
because of evolving requirements. To prioritize requirements there are different techniques which have been explained in literature. Different
techniques consider different factors for prioritization. Value-based prioritization is the best technique which is used in scrum. In this paper a
narrative review has been done to explain factors which are considered for prioritization. A small survey has been done to find the answers of
questions which arose during literature study.

Keywords: Scrum, Prioritization, Product Backlog, Value-Based.


analyzing requirements before going to design phase. However,
I. INTRODUCTION
Agile welcomes the changing requirements even late in the
Software systems have become the backbone of almost all
development lifecycle. A.D. Lucia and A.Qusef has surveyed
business operations. Advancement in technology and business the real processes and activities of agile requirement
needs force customer to evolve their project requirements day engineering. Customer collaboration, good agile developers
by day. Evolving requirements is a big challenge in software and experienced project managers are the secret of success of
development. Agile methodology is the best solution to work agile requirement engineering. [15]
with such evolving requirements. Scrum is one of the efficient
M.Kumar et al. has provided a hybrid approach for agile
agile methodologies to provide flexibility in development. requirement engineering with the help of Joint Application
Scrum follows incremental and iterative approach to provide Development (JAD) and viewpoints. JAD and viewpoints
delivery of valuable product features in several releases. serves as a key tool for requirement gathering. The aim of
Product backlog items which have to implement are prioritized. hybrid approach is to serve the purpose of agile requirements.
Prioritization is difficult and ongoing task in scrum because of
[9]
evolving requirements. Ignorance of any crucial product A.Batool et al. has proposed a conceptual framework. The
backlog item can make the customer unsatisfied. Therefore emphasis of conceptual framework is to make the requirement
prioritization process is the core activity in scrum and should process more effective. This framework also minimizes the
be done carefully.
complexities and barriers faced during the traditional
This paper is intended to review the prioritization in scrum. requirement engineering process. [5]
The review has been conducted through literature survey. The H.Elshandidy, S.Mazen has provided a requirement
objectives of this review paper are: engineering task in agile and traditional methodologies.
1. To identify the factors for the selection of product Requirement elicitation, Requirement Analysis and negotiation,
backlog items during prioritization process.
Requirement modeling, Requirement Validation and
2. To answer the questions that arose during literature Requirement management are the five requirement engineering
survey. tasks. By comparing these tasks, it is concluded that by
This paper has been arranged into five sections. Related bringing agile into world of requirement engineering will
work has been given in section 2. Section 3 which is entitled as
guarantee a greater and a faster success. There are many
“Discussions” has divided into three sub-sections describes the promising requirement engineering research areas in which
product backlog, prioritization and factors respectively. Result agile can be perfectly fit. These areas are solving problems
of survey has been given in Section 4. In the Section 5, the related to variability and component reuse in SPL, verifying
conclusion and future work has been given. models of adaptive systems, or developing tools/
II. RELATED WORK approaches/techniques/patterns to help taking technologies
Many researchers have presented the Agile Requirement from research to practice. [6]
Engineering. Traditional development focuses on gathering and
RES Publication © 2012 Page | 21
http://ijmcs.info
International Journal of Modern Computer Science (IJMCS) ISSN: 2320-7868 (Online)
Volume 3, Issue 2, June, 2015

A.Iqbal et al. has analyzed AHP (Analytical Hierarchical B. Prioritization


Process), SERUM (Software Engineering Risk: Understanding Scrum focuses on customer satisfaction by providing the
and Management), EVOLVE and VOP methods that are used business value early. However, ignorance of criticality of user-
for requirement prioritization with the different factors such as stories will result in unsatisfied customer [2]. Prioritization is
cost, value, risk, benefit, dependency constraint etc. They the process of determining the inclusion of candidate
concluded that there is no single technique that addresses all requirement in the certain release [15]. Value-based
these factors. The proposed approach addresses all the factors prioritization is the core principle of scrum. These different
for prioritization. After dependency constraint check the techniques consider different factors for prioritization.
requirements reach at second step where they prioritized by Requirement prioritization facilitates requirement engineering
using VOP. The output of this step is a set of requirements that process by providing:
should be implemented in current release. However, there are 1. Improvement in customer satisfaction
other factors too that should also considered. Implementation 2. Constraint management
effort, resource constraint and benefit factor addresses by the 3. Focused product backlog delivery
step three, four and five. [18] 4. Risk reduction
Selection of group of important requirement to be There are different prioritization techniques which consider
implemented in iterations is achieved by continuous different factors for prioritization. Scrum uses Value-Based
requirement prioritization. R.H.AL_Ta’ani et al. has proposed a prioritization technique to arrange the product backlog items.
conceptual framework that outlines the factors and activities Product backlog items which are highly valuable and important
involved in the requirement prioritization process. [7] for customer are kept at the top of product backlog item.
R.popli et al. has proposed importance and effort related Along with business value of product backlog item other
factors. Prioritization of user-stories is highly dependent on the factors such as dependencies, risk, cost, availability of
value of these factors. The relation of importance and effort has resources are also taken into account during prioritizing. These
been calculated to decide the priority of user-story. [2] all factors have been described in Sub Section C.
III. DISCUSSIONS C. Factors for Prioritization
A. Product Backlog 1) Business Value
Business value is an importance related factor [2] which is
Product backlog is one of the crucial artifacts in scrum. It is used to prioritize the requirements in scrum. Business value is
the prioritized list of requirements for the product to be the estimation of money will be provided by the user-story to
developed. It is dynamic artifact in scrum because it evolves organization. Higher the business value higher will be the
throughout the scrum process. Change in customer priority of requirement. Business value can be estimated with
requirements and environment in which product will be used two following concepts:
causes evolving of product backlog. The requirements in
a) Positive business value
product backlog are called product backlog items and can be Positive business value is equivalent to the profit that will
enhancement, bug and new user-story. Product owner, who is earn in business by delivery of important requirement.
the representative of customer, has a responsibility to create
b) Negative business value
and keep the product backlog updated.
If important requirement is missing its business value will
goes negative instead of being zero [16]. Therefore
Refined Product
Highest Priority backlog items and consideration of negative value is also important as positive
ready to business value.
implement in
PBI can be: 2) Cost
sprint.
Feature,
Bug,
Cost is also the big concern in prioritization process. It is
Enhancement calculated in terms of money. The requirements that project can
Big user-stories
that cannot be afford to implement first, may have highest priority [18]. Cost-
implement in one benefit analysis can be used for the prioritization.
sprint.
Lowest Priority Cost is also utilized for the calculation of Return On
Product Backlog Investment (ROI).Sometimes the customer and the
organization may decide to move important feature (that could
Figure 1. Product Backlog

RES Publication © 2012 Page | 22


http://ijmcs.info
International Journal of Modern Computer Science (IJMCS) ISSN: 2320-7868 (Online)
Volume 3, Issue 2, June, 2015

give higher ROI) lower down the priority list just because the respondents via email. Among 10 respondent 8 has given the
amount of effort required to develop it. response which has been collected in spread sheet format.
3) Risk From 14 questions, only 5 questions have been extracted
The high risks user-stories assign with high priority. This which are related to the objective of this review paper. The
ensures that changes in requirement can be caught early in summary of these questions have given in bar chart Error!
project. As soon the team will be able to mitigate the Reference source not found.. X-axis of bar chart represent the
unknowns, thus they will able to remove uncertainty, thus they questions and Y-axis represent the number of respondent
will lead to a higher-quality product [3]. response for particular option (Strongly Agree, Agree,
4) Dependencies Disagree, Strongly disagree).Five question and the percentage
Dependency between requirements also affects the
of agreed respondents has given in Table 1.
prioritization. Dependency means the requirement or set of
requirements is dependent on another requirement or set of 8
requirements [18]. Let us suppose that there are two Features A 7
6 Strongly Agree
and Feature B. Feature A has three sub-stories one of which is 5 Agree
4
dependent on feature B. Feature B itself has two sub-stories. 3 Disagree
Customer has give the higher priority to feature A. If developer 2 Strongly Disagree
1
team thinks they should develop the first two (non-dependent) 0
sub-stories out of the three for Feature A, they need to talk to Q1 Q2 Q3 Q4 Q5
the PO and customer and discuss whether that will deliver
sufficient value. If they say yes, then deliver feature A with two
Figure 2.Summary of Survey
sub-stories. But if delivering two sub-stories from Feature A is
not delivering value to the customer, then move Feature B to Table 1. Questions included in Questionnaire
the top of the product backlog, which will remove the Sno. Question Respondent
dependency of that third Feature A sub-story [12]. Agreed (%)
There are two types of dependency constraints known as Q1 Product backlog item represent as 75%
user-story format “As a user I
Precedence Constraints, Coupling Constraints. Precedence want…………..so that…………..”.
constraint occurs for the requirements that can be start Q2 Story points of user-stories change 75%
implementing after the complete implementation of another during grooming and sprint backlog
requirement on which they are dependent. However, coupling meeting?
Q3 The priority of user-story will 87.5%
constraint occurs for the requirements that must implement in
increase if it is a bug.
the same increment [18]. Q4 The priority will increase if the 75%
5) Resources product backlog item is highly
Resources are the budget, staff, schedule and technology refined during grooming and sprint
which are necessary for effective operation [2, 18]. Resource is planning meeting.
Q5 The priority of user-story will 87.5%
one of the important factors which impact the prioritization.
increase if a reusable code is exists
Unavailability of particular resource at time can lead the task from previous projects.
towards delay. Therefore it should also be considered during
V. CONCLUSION AND FUTURE WORK
prioritization.
6) Security From the review it has been concluded that prioritization of
Security can be considered as network security, code items in product backlog plays a vital role to deliver business
security, documentation security and functional security based value in small releases. During Literature study it has also been
on customer requirements [2]. Security is a constraint which observed that maturity of requirement is not considering as
can impact the prioritization of product backlog item. Security important factor for prioritization. Prioritization of immature
must be taken as higher priority factor. requirements can be the wastages of time. In Future work, we
are going to propose a new factor called maturity of items of
IV. RESULTS OF SURVEY
product backlog. This factor can also impact the prioritization
An online survey by questionnaire has taken to find the of product backlog.
answers of questions which arose during literature study. Total
14 questions was included in Questionnaire and sent to 10

RES Publication © 2012 Page | 23


http://ijmcs.info
International Journal of Modern Computer Science (IJMCS) ISSN: 2320-7868 (Online)
Volume 3, Issue 2, June, 2015

REFERENCES [19] L.Cao, B.Ramesh, “Agile Requirements Engineering Practices:


An Empirical Study”, IEEE 2008
[1] M.V.Mohamed, “Implementation of Scrum Framework of Agile
[20] D.Firesmith, “Prioritizing Requirements”, ETH Zurich, Chair of
Methodology for an Online Project”, IJETAE, Vol. 4, Issue 7,
Software Engineering ©JOT, Vol. 3, No.8, September-October
July 2014.
2004.
[2] R.Popli, N.Chauhan, H.Sharma “Prioritising User Stories In
[21] P.Abrahamssona, J.Warsta, M.T.Siponen,J.Ronkainen“New
Agile Enviomment”, IEEE, 2014.
Directions on Agile Methods: A Comparative Analysis”, IEEE,
[3] S.C.Patil, “Order Your Product Backlog”,
2003.
[Online:https://www.scrumalliance.org/community/articles/2014
Campbelllinda,”Importance of value based prioritization in
/december/order-your-product-backlog, Accesed on: May 2015].
Scrum”,[Online:https://campbellscrumblogs.wordpress.com/201
[4] N.Chugh, A.D.Mishra, “Assimilation of Four Layered Approach
5/01/02/importance-of-value-based-prioritization-in-scrum/,
to NFR in Agile Requirement Engineerin”, IJCA, Vol.78 – No.5,
Accessed on:May 2015].
September 2013.
[22] J.karlsson “A Cost–Value Approach for Prioritizing
[5] A.Batool, Y.Hafeez, S.Asghar , M.A.Abbas, M.S.Hassan, “A
Requirements”, IEEE, 1997.
Scrum Framework for Requirement Engineering Practices”,
Proceedings of the Pakistan Academy of Sciences 50 (4): 263–
270 (2013) Pakistan Academy of Sciences, Copyright ©
Pakistan Academy of Sciences ISSN: 0377 - 2969 (print), 2306 -
1448 (online), 2013.
[6] H.Elshandidy, S.Mazen “Agile and Traditional Requirements
Engineering: A Survey”, IJSER, Vol. 4, Issue 9, September
2013.
[7] R.H.AL-Ta’ani*, R.Razali “Prioritizing Requirements in Agile
Development:A Conceptual Framework”, ICEEI 2013.
[8] Weam M. Farid, Frank J.Mitropoulos, “NORPLAN: Non-
functional Requirements Planning for Agile Processes”,
IEEE,2013.
[9] M.Kumar, M.Shukla, S.Agarwal, “A Hybrid Approach of
Requirement Engineering in Agile Software Development”,
IEEE, 2013.
[10] V.Krishnamurthy, “6 Backlog Prioritization Techniques”,
[Online: http://agile.dzone.com/articles/6-backlog-prioritization,
Accessed on: May 2015].
[11] Saravana.K.M, G.N.Basavaraj, Rajkumar, Dr.A.Kovalan “Case
Study On Agile User Stories Prioritization Using Imaginative
Standard”, IJERA, Vol. 2, Issue 5, September- October 2012.
[12] A.Sabharwal, “Understanding Sizing in Agile”, [Oline:
https://www.scrumalliance.org/community/articles/2015/april/si
zing-in-agile, Accessed on May 2015]
[13] R.C.Lee,“The Success Factors of Running Scrum: A Qualitative
Perspective”, JSEA, June 2012.
[14] J.Savolainen, J.Kuusela, A.Vilavaara “Transition to Agile
Development”, IEEE, 2010.
[15] A.D.Lucia ,A.Qusef, “Requirement Engineering in Agile
Software Development”, Journa of Emerging Technologies in
Web Intelligence, VOL.2, NO.3, 2010.
[16] Z.Racheva, M.Daneva, R.Wieringa, K.Sikkel,“Do we Know
Enough about Requirements Prioritization in Agile Projects:
Insights from a Case Study”, IEEE, 2009.
[17] M.Hneif, S.Hockow “Review of Agile Methodologies in
Software Development”, IJRRAS, Vol.1, Issue1,October-2009.
[18] A.Iqbal, F.M.Khan, S.A.Khan “A critical analysis of techniques
for requirement prioritization and open research issues”, IJRIC,
2009.

RES Publication © 2012 Page | 24


http://ijmcs.info

Вам также может понравиться