A Comprehensive Study on State of Scrum Development
Transcript of A Comprehensive Study on State of Scrum Development
International Conference on Computing, Communication and Automation (ICCCA2016)
ISBN: 978-1-5090-1666-2/16/$31.00 ©2016 IEEE 867
A Comprehensive Study on State of Scrum
Development
Shruti Sharma
Amity University,Uttar Pradesh
Noida, India
Nitasha Hasteer
Amity University,Uttar Pradesh
Noida, India
Abstract— The software industry has moved from the
traditional software development to the agile software development
model. Under this umbrella there are many methodologies which
are Scrum, Extreme Programming, Crystal, FDD (Feature-driven
development), DSDM (Dynamic Systems Development Method),
etc. This paper investigates about the current state of Scrum, its
popularity and its evolution in the recent five years. We have taken
into consideration the published literature and industrial survey.
Our result reveals that among various agile methodologies, Scrum
is a popular software development methodology used by industries
and it is also the area of interest for the research community.
(Abstract)
Keywords— Agile software development; Traditional software
models; Agile methodologies; Scrum Framework (key words)
I. INTRODUCTION Agile, in the world of software development industry have
emerged out to be a beneficial development technique which help the organizations to complete their projects fast. It is capable to overcome the limitations of the traditional software development approaches in terms of providing easy and better implementations, better customer satisfaction and their involvement, faster delivery rate of the product, easily adaptable to new changing environment and so on. Today, it has become so popular that every software industry is trying to adopt this approach in their organization in order to get maximum benefits. There are several agile methods which are being used by many development industries namely Scrum, Extreme programming (XP), Feature-driven development (FDD), Dynamic Systems Development Method (DSDM), Agile modeling, Agile Unified Process (AUP) and many more. Our focus of study is Scrum methodology. It is a framework which is best suited for the projects with the changing requirements and gets the feedback from the customers. Extreme programming is one of the adaptive agile methodologies which emphasizes on team work in order to get efficient and effective software products. It focuses on business values with the customer involvement. The extreme programmers work in pair or group keeping their design simple and clean. The Feature-driven development is a practical model for object oriented software engineering. It is a client-centric approach. It is highly recognized due to its short iterations, frequent delivery, simple to understand and better review. Dynamic Systems Development Method is
robust delivery framework that is capable to deliver the right solution at the right time. It focuses on early delivery from the perspective of business benefits. Agile modeling is a practice based methodology which is a collection of values, principles and practices for effective modeling and documentation. Agile Unified Process is similar to the rational unified process which is simple to understand and deliver its software at the end of each iteration. It focuses on high value activities.
The aim of this paper is to investigate how Scrum has evolved and what is its acceptance percentage. The rest of the paper is organized in the sections as follows: Section II shows how the traditional approach is different from agile approach in the software development industry. Section III describes about the Scrum methodology and its framework. Section IV illustrates the Methodology used. Section V is Review and Analysis. Section VI presents the conclusion.
II. TRADITIONAL VS AGILE
Today, Agile is a buzzword in the software development industry which is based on an iterative and incremental software development. It is paradigm introduced in the software industry that defines itself differently from the other traditional software development modeling techniques as it works on the work break-down structure technique. It is value driven technique which focuses on customer involvement with their needs, customer satisfaction, team work, easy adaptation to changes in software, flexibility, faster delivery of working product over documentation, feedback and inspection. The traditional model fails to have all these aspects as it follows up the fixed and sequential plan made at the starting phase, linear development, emphasizes on documentation ,rigid to any new changes, customer involvement is very less, slow and a time consuming process.
International Conference on Computing, Communication and Automation (ICCCA2016)
868
Fig. 1. Traditional development versus Agile development
III. SCRUM FRAMEWORK
Scrum is a light-weight framework which is simple to understand and capable to manage complex product development with some deadline. This framework consists of Scrum team, their associated activities, artifacts and rules. Scrum team consists of a product owner, Scrum master and development team. In Scrum, the software product is delivered in the series of iteration or increments within a predefined time-box (typically 30 days) called sprint [1].
The product owner has the responsibility to formulate the plan according to the problem and dividing them among the development team in such a manner to get better functionality and results [2]. The Scrum master plays a vital role as the Scrum master is a person who leads the development team and keeps an eye on them, guide them, help them, resolves issues, make necessary improvements etc. It acts as the bridge of communication between the product owner and development team. The Scrum master also conduct the daily meeting in order to get the status of the project [3]. The development team is the group of highly qualified members (typically 5-9 members) who help in achieving the goals of the project and releasing product at the end of each sprint [4].
Scrum process flow starts with the vision that product owner has regarding the product that he wants to create and on that basis a prioritized list is made containing product features called product backlog. Then a sprint starts with the sprint planning and sprint backlog which includes the tasks to be done by team. In sprint planning, the team makes the decision of choosing a task from the product backlog which they believe that they can complete it within a sprint cycle. Then come sprint backlog in which task is broken down into units that is carried forward by the team who determines the best way to accomplish the goal within each sprint cycle. Daily Scrum meetings (typically 15 minutes) are also organized so that we get the direction of our project as well as its progress.
At the end of each sprint cycle there is sprint review in which the product is well inspected by all the stakeholders including customers, Scrum team and all associated members. They visualize the product and give feedback. Then comes sprint retrospective which is followed by the sprint review. Sprint retrospective is done before next sprint planning in which the scrum team is involved that focus on further improvements in order to get better results in the next sprint phase [1] [4].
Fig. 2. Scrum Framework
IV. METHODOLOGY
In order to get a thorough perspective of the current trends, research and adoption for Scrum framework, we followed a systematic approach to collect the relevant data.
In this methodology the following tools were used:
A. Industrial surveys
There are many organizations that are publishing Industrial surveys and reports. For our study, we have used the VersionOne in ‘State of Agile Survey’ [5-10]. Studying these reports from the year 2010-2014, we were able to compare Scrum with other methodologies on the basis of their adoption in the industries over the period.
B. Relevant Literarture Published
There is enough relevant published literature available to form a thorough understanding on the current state of Scrum in today’s scenario. For our study, we considered 30 relevant papers. We have used the two search repositories namely IEEE and ACM. The detailed statistics of the year wise studies is illustrated in Table I below.
TABLE I. RELEVANT PUBLISHED STUDIES
DIGITAL
LIBRARY
2
01
5
2
01
4
2
01
3
2
01
2
2
01
1
2
01
0
T
ota
l
IEEE 8 5 4 - 4 - 21
ACM 3 1 - 4 - 1 9
Total 11 6 4 4 4 1 30
International Conference on Computing, Communication and Automation (ICCCA2016)
869
C. Study Focus Area
We have categorized the published literature on the basis of the focused areas of the study.
Search Keywords
The search keywords uses in this review for scrum are:
TABLE II. SEARCH KEYWORDS
Keywords Synonyms
SCRUM
Scrum Software Development
Scrum framework implementation
Scrum adoption
V. REVIEW AND ANALYSIS
A. Based on Survey
The survey conducted by the organization VersionOne in ‘State of Agile Survey’ gives the clear picture of scrum in industries. No doubt today agile has become very popular and has been adopted by many development industries. According to recent year’s reports from 2010 - 2014, as the results of the 2015 survey has not been out yet, we can see that how Scrum methodology has become very popular leaving other agile methodologies behind. Figure.3 shows the comparison of adopting agile methodologies by industries over the span of five years (in percentage).
Fig. 3. Scrum popularity
From figure 3 we can clearly see that how Scrum has been adopted by most of the industries while the other methodologies like XP, agile unified process, feature driven development, scrum/XP hybrid, DSDM, agile modeling techniques are relatively less adopted.
According to the 5th annual state of agile survey 2010(11th Aug - 31st Oct, 2010), the most widely used agile methodology was Scrum (58%) while others methodologies that have been used by industries was only 25% [5]. In 6th
annual state of agile survey 2011(22nd July- 1st Nov, 2011), 52% software developer use Scrum while other methods decrease by 4% i.e to become 21% [6]. In 7th annual state of agile survey 2012(9th Aug - 1st Nov, 2012), this report shows 54% Scrum users in industry whereas others remain at 18% only [7]. Likewise in 8th annual state of agile survey 2013(4th Aug - 16th Oct, 2013), the Scrum users increased to 55% while others decreased to 17% [8]. Now according to the latest 9th annual state of agile survey 2014(July - Oct, 2014), it is shown that Scrum methodology got increased to 56% while other methodologies remain at 12% only [9]. Through these surveys we can conclude that as the survey goes further, there is a continuous decrease in the trend of other agile methodologies while the use of Scrum increases every next year by the development industries
B. Based on Relevant Literature
We have observed that scrum has taken its position not only in the current development industries but also in the field of research work. Many researchers and practitioners are investigating about the practices of agile methodologies in the current scenario resulting in the increase trend of publishing articles or papers in this field. Figure 4 shows the number of studies in the field of Scrum methodology over the last six years.
Research studies of scrum
According to the figure 4.From 30 total relevant studies ,in 2010 we have only 3% of studies which got increased in 2011, 2012, 2013 by 10%, in 2014 there is a gradual rise by 7% becoming 20% and in 2015,we have maximum number of studies which is 36% at the total.
Now we have classified our study on the basis of abstract and conclusion of the paper to give the simple overview of work done by various researchers under the Scrum. This is illustrated in the Table III.
International Conference on Computing, Communication and Automation (ICCCA2016)
870
TABLE III. STUDIES UNDER SCRUM METHODOLOGY
YEAR AUTHORS WORK
2015
Ashish Kumar
Sultania [12]
Developing Test
Automation Software
Based on Agile
Methodology.
Alan Braz, et al. [13] Comparing efficiency of
new process with plain
Scrum for developing
better quality software.
Breno Lisi Romano
et al. [14]
Use of Scrum within small
business enterprise.
AlanR. Santos et al.
[15]
An empirical study of
applying CBL and Scrum
in a
mobile application
development
Course.
Meryem Elallaoui at
al. [32]
An algorithm for the
transformation of user
stories
Into sequence diagrams in
the Scrum process.
Daniel Pauly [33] Adoption of Scrum
principles in e-commerce.
Glaydson Luiz
Bertoze Lima et al.
[34]
Adaptations of Scrum
practices to Integrate the
development of Co-based
hardware design with the
software.
Violetta J. Wawryk et
al. [35]
Critical changes
influencing
Distributed Scrum team.
Ivana Bosni´c et al.
[36]
Introducing Scrum into a
Distributed Course.
Erica Weilemann
[37]
Impact of Females in Agile
Software Development
Teams
Abdul Rauf et al. [38] Comprehensive review of
the Agile practices in
projects.
2014
Ž. Požgaj et al. [10] Implementing Scrum in
teaching model.
Quan Wei et al. [16] An approach of combining
the Scrum methodology
with the UML modelling
methods.
Julian M. Bass [17] Activities of Scrum Master
in Large Enterprise
Projects.
Georgia M Kapitsaki
et al. [18]
Instructive view into the
Scrum development.
Markus Hummel [19] To identify general state of
research on agile.
Anupriya Tuli et al.
[20]
The significant roles of
Agile methodologies.
Veli-Pekka Eloranta
et al. [21]
To identify broken core
principles of Scrum in
industry.
De Tran-Cao et al.
[11]
Systematic
Reviewing the current
research literature on the
2013 basis of effort estimation in
Agile software projects.
Amani Mahdi
Mohammed Hamed
et al. [22]
Review and Analysis of
Popular Agile Approaches
in Software Development.
Michele Gannon [4] Implementing
fundamentals of scrum
methodology on a project.
2012
Maria Paasivaara et
al. [23]
Implementing Scrum on
distributed scrum projects.
Christelle Scharff et
al. [24]
To elicits the difficulties
encountered by the
Students new to Scrum.
Charles Wallace et al.
[25]
Scrum in the curriculum of
computer science and
software engineering.
Sune Wolff [26] Use of formal specification
techniques in agile
management process
2011
Eva del Nuevo et al.
[27]
Integration of RUP and
Scrum in distributed
environment
Hu Guang-yong [28] Implementing Scrum
development in Vehicle
spare
parts management system
Eduardo J. Quaglia et
al. [29]
Improving project
management performance
using Scrum.
Tomohiro Hayata et
al. [2]
To propose a hybrid model
to
apply Scrum into the
traditional software
development process
2010 Christelle Scharff et
al. [30]
To evaluate the use of
Scrum in mobile
application development.
C. Based on the focus areas of study
We have categorized our study on the basis of focused area in scrum. This gives the idea about the type of work that has been done and the focus area of the study as shown in Table IV [31].
TABLE IV. CATEGORIZATION OF SCRUM BASED STUDIES
Study Focus No. of
Papers
References
Review & Analysis Papers 5 [11], [18], [19], [22], [38]
Proposed Model/ New
implementation of Model
using Scrum
15 [2], [4], [12], [13], [16], [20],
[26], [28], [29], [30], [32], [33],
[34], [35], [37]
Implementing Teaching
Model on Scrum
3 [10], [25], [36]
Implementing Scrum on
Distributed Teams
4 [14], [17], [23], [27]
Challenges/Difficulties of
scrum
3 [15], [21], [24]
International Conference on Computing, Communication and Automation (ICCCA2016)
871
VI. CONCLUSION
We investigated the Scrum methodology on the basis of relevant literature, adoption and popularity. Every year there is an increasing trend of Scrum adoption in software development industries as well as in research areas. Our work reveals the current trend of study areas of Scrum as we have found that the implementation of Scrum in existing models has the highest number of studies compared to others. This could be helpful for the upcoming researchers and practitioners. We have not focused more on the models because there is already a lot of work that has been done. We conclude that Scrum methodology is widely used technique as compared to the other agile methodologies.
REFERENCES
[1] Kenneth S.Rubin, Essential scrum: A practical guide to the most popular agile process, Addison-Wesley,2012.
[2] Hayata, Tomohiro, and Jianchao Han. "A hybrid model for IT project with Scrum." In Service Operations, Logistics, and Informatics (SOLI), 2011 IEEE International Conference on, pp. 285-290. IEEE, 2011.
[3] Bass, Julian M. "Scrum Master Activities: Process Tailoring in Large Enterprise Projects." In Global Software Engineering (ICGSE), 2014 IEEE 9th International Conference on, pp. 6-15. IEEE, 2014.
[4] Gannon, Michele. "An Agile Implementation of SeRUM." (2013).
[5] VersionOne, 5th Anual Survey: 2010, The State of Agile Development, Full Data Report, available at: https://www.versionone.com/pdf/2010_State_of_Agile_Development_Survey_Results.pdf
[6] VersionOne, 6th Anual Survey: 2011, The State of Agile Development, Full Data Report, available at: https://www.versionone.com/pdf/2011_State_of_Agile_Development_Survey_Results.pdf
[7] VersionOne, 7th Anual Survey: 2012, The State of Agile Development, Full Data Report, available at: https://www.versionone.com/pdf/7th-Annual-State-of-Agile-Development-Survey.pdf
[8] VersionOne, 8th Anual Survey: 2013, The State of Agile Development, Full Data Report, available at: https://www.versionone.com/pdf/2013-state-of-agile-survey.pdf
[9] VersionOne, 9th Anual Survey: 2014, The State of Agile Development, Full Data Report, available at: http://info.versionone.com/state-of-agile-development-survey-ninth.html
[10] Pozgaj, Z., N. Vlahovic, and V. Bosilj-Vuksic. "Agile management: A teaching model based on SCRUM." In Information and Communication Technology, Electronics and Microelectronics (MIPRO), 2014 37th International Convention on, pp. 893-898. IEEE, 2014.
[11] Nguyen-Cong, Danh, and De Tran-Cao. "A review of effort estimation studies in agile, iterative and incremental software development." In Computing and Communication Technologies, Research, Innovation, and Vision for the Future (RIVF), 2013 IEEE RIVF International Conference on, pp. 27-30. IEEE, 2013.
[12] Sultania, Ashish Kumar. "Developing software product and test automation software using Agile methodology." In Computer, Communication, Control and Information Technology (C3IT), 2015 Third International Conference on, pp. 1-4. IEEE, 2015.
[13] Braz, Alan, Cecilia Mary Fisher Rubira, and Marco Vieira. "Development of Complex Software with Agile Method." In Agile Conference (AGILE), 2015, pp. 97-101. IEEE, 2015.
[14] Lisi Romano, Breno, and Alan Delgado Da Silva. "Project Management Using the Scrum Agile Method: A Case Study within a Small Enterprise." InInformation Technology-New Generations (ITNG), 2015 12th International Conference on, pp. 774-776. IEEE, 2015.
[15] Santos, Alan R., Afonso Sales, Paulo Fernandes, and Mark Nichols. "Combining Challenge-Based Learning and Scrum Framework for Mobile Application Development." In Proceedings of the 2015 ACM
Conference on Innovation and Technology in Computer Science Education, pp. 189-194. ACM, 2015.
[16] Wei, Quan, Guo Danwei, Xue Yaohong, Fan Jingtao, Han Cheng, and Jiang Zhengang. "Research on Software Development Process Conjunction of Scrum and UML Modeling." In Instrumentation and Measurement, Computer, Communication and Control (IMCCC), 2014 Fourth International Conference on, pp. 978-982. IEEE, 2014.
[17] Bass, Julian M. "Scrum Master Activities: Process Tailoring in Large Enterprise Projects." In Global Software Engineering (ICGSE), 2014 IEEE 9th International Conference on, pp. 6-15. IEEE, 2014.
[18] Kapitsaki, Georgia M., and Marios Christou. "Where is Scrum in the current Agile world?." In Evaluation of Novel Approaches to Software Engineering (ENASE), 2014 International Conference on, pp. 1-8. IEEE, 2014.
[19] Hummel, Markus. "State-of-the-Art: A Systematic Literature Review on Agile Information Systems Development." In System Sciences (HICSS), 2014 47th Hawaii International Conference on, pp. 4712-4721. IEEE, 2014.
[20] Tuli, Anupriya, Nitasha Hasteer, Megha Sharma, and Abhay Bansal. "Empirical investigation of agile software development: cloud perspective."ACM SIGSOFT Software Engineering Notes 39, no. 4 (2014) 1-6.
[21] Eloranta, Veli-Pekka, Kai Koskimies, Tommi Mikkonen, and Jyrki Vuorinen. "Scrum Anti-Patterns--An Empirical Study." In Software Engineering Conference (APSEC, 2013 20th Asia-Pacific, vol. 1, pp. 503-510. IEEE, 2013.
[22] Hamed, Amani Mahdi Mohammed, and Hisham Abushama. "Popular agile approaches in software development: Review and analysis." In Computing, Electrical and Electronics Engineering (ICCEEE), 2013 International Conference on, pp. 160-166. IEEE, 2013.
[23] Paasivaara, Maria, Casper Lassenius, and Ville T. Heikkila. "Inter-team coordination in large-scale globally distributed scrum: Do Scrum-of-Scrums really work?." In Empirical Software Engineering and Measurement (ESEM), 2012 ACM-IEEE International Symposium on, pp. 235-238. IEEE, 2012.
[24] Scharff, Christelle, Samedi Heng, and Vidya Kulkarni. "On the difficulties for students to adhere to Scrum on Global Software Development projects: Preliminary results." In Collaborative Teaching of Globally Distributed Software Development Workshop (CTGDSD), 2012, pp. 25-29. IEEE, 2012.
[25] Wallace, Charles, Sriram Mohan, Douglas Troy, and Mark E. Hoffman. "Scrum across the CS/SE curricula: a retrospective." In Proceedings of the 43rd ACM technical symposium on Computer Science Education, pp. 5-6. ACM, 2012.
[26] Wolff, Sune. "Scrum goes formal: Agile methods for safety-critical systems." In Proceedings of the First International Workshop on Formal Methods in Software Engineering: Rigorous and Agile Approaches, pp. 23-29. IEEE Press, 2012.
[27] Nuevo, Eva del, Mario Piattini, and Francisco J. Pino. "Scrum-based methodology for distributed software development." In Global Software Engineering (ICGSE), 2011 6th IEEE International Conference on, pp. 66-74. IEEE, 2011.
[28] Guang-yong, Hu. "Study and practice of import Scrum agile software development." In Communication Software and Networks (ICCSN), 2011 IEEE 3rd International Conference on, pp. 217-220. IEEE, 2011.
[29] Quaglia, Eduardo J., and Claudia Tocantins. "Simulation projects management using Scrum." In Simulation Conference (WSC), Proceedings of the 2011 Winter, pp. 3421-3430. IEEE, 2011.
[30] Scharff, Christelle, and Ravi Verma. "Scrum to support mobile application development projects in a just-in-time learning context." In Proceedings of the 2010 ICSE Workshop on Cooperative and Human Aspects of Software Engineering, pp. 25-31. ACM, 2010.
[31] Hossain, Emam, Muhammad Ali Babar, and Hye-young Paik. "Using scrum in global software development: a systematic literature review." In Global Software Engineering, 2009. ICGSE 2009. Fourth IEEE International Conference on, pp. 175-184. IEEE, 2009.
[32] Elallaoui, Meryem, Khalid Nafil, and Raja Touahni. "Automatic generation of UML sequence diagrams from user stories in Scrum
International Conference on Computing, Communication and Automation (ICCCA2016)
872
process." In Intelligent Systems: Theories and Applications (SITA), 2015 10th International Conference on, pp. 1-6. IEEE, 2015.
[33] Pauly, Daniel, Bjoern Michalik, and Dirk Basten. "Do Daily Scrums Have to Take Place Each Day? A Case Study of Customized Scrum Principles at an E-Commerce Company." In System Sciences (HICSS), 2015 48th Hawaii International Conference on, pp. 5074-5083. IEEE, 2015.
[34] Lima, Bertoze, Glaydson Luiz, Guilherme Augusto Lopes Ferreira, Osamu Saotome, Adilson Marques Da Cunha, and Luiz Alberto Vieira Dias. "Hardware Development: Agile and Co-Design." In Information Technology-New Generations (ITNG), 2015 12th International Conference on, pp. 784-787. IEEE, 2015.
[35] Wawryk, Violetta J., Christian Krenn, and Thomas Dietinger. "Scaling a running agile fix-bid project with near shoring: Theory vs. reality and
(best) practice." In Software Testing, Verification and Validation Workshops (ICSTW), 2015 IEEE Eighth International Conference on, pp. 1-7. IEEE, 2015.
[36] Bosnic, Ivana, Federico Ciccozzi, Elisabetta Di Nitto, Juraj Feljan, and Raffaela Mirandola. "Introducing SCRUM into a Distributed Software Development Course." (2015).
[37] Weilemann, Erica, and Philipp Brune. "Less Distress with a Scrum Mistress?: On the Impact of Females in Agile Software Development Teams." In Proceedings of the ASWEC 2015 24th Australasian Software Engineering Conference, pp. 3-7. ACM, 2015.
[38] Rauf, Abdul, and Mohammad AlGhafees. "Gap Analysis between State of Practice and State of Art Practices in Agile Software Development." In Agile Conference (AGILE), 2015, pp. 102-106. IEEE, 2015.