Measuring Process Flow Using Metrics in Agile Software Development a Systematic Literature Review and a Case Study
Total Page:16
File Type:pdf, Size:1020Kb
Master of Science in Software Engineering June 2019 Measuring Process Flow using Metrics in Agile Software Development A Systematic Literature Review and a Case Study Krishna Sai Bitla Sairam Sagar Veesamsetty Faculty of Computing, Blekinge Institute of Technology, 371 79 Karlskrona, Sweden This thesis is submitted to the Faculty of Computing at Blekinge Institute of Technology in partial fulfilment of the requirements for the degree of Master of Science in Software Engineering. The thesis is equivalent to 20 weeks of full-time studies. The authors declare that they are the sole authors of this thesis and that they have not used any sources other than those listed in the bibliography and identified as references. They further declare that they have not submitted this thesis at any other institution to obtain a degree. Contact Information: Author(s): Krishna Sai Bitla E-mail: [email protected] Sairam Sagar Veesamsetty E-mail: [email protected] University advisor: DR. Krzysztof Wnuk Department of Software Engineering Industry Advisor: Dani Benjamin Plant Manager VCEZ at Volvo Cars Faculty of Computing Internet : www.bth.se Blekinge Institute of Technology Phone : +46 455 38 50 00 SE-371 79 Karlskrona, Sweden Fax : +46 455 38 50 57 ii ACKNOWLEDGEMENTS Our Journey in the thesis has been tremendously intense learning, value added and a remarkable experience. First and foremost, we would first like to thank from our bottom of our hearts to our university supervisor, Dr. Krzysztof Wnuk who has always been a third wheel in the thesis study. Whenever we have faced trouble during thesis time he has made sure that his doors were always open for supervisions, comments on the study, suggestions for unique considerations during the thesis period. His perseverance, motivation on the study and endless enthusiasm has given the researchers inspirations unparalleled. Without his supervision, we could not have achieved this. We simply could not have asked for a better academic supervisor for our thesis study and we are very much honoured to have someone like him. Secondly, we look like to thank Mr. Dani Benjamin for giving us the opportunity to conduct the thesis study at the organization. We would like to thank all the people who have involved in the organization and have supported us in all ways and to make us understand in learning new things at the company. Our external supervisor has treated us extraordinarily and has helped us in many ways and has stayed back even after his office works to help us out personally during our study at the organization. We would like to make a special acknowledgement to all the interview participants who have taken part in the study, without them we would not have completed our thesis and thus making the completing the thesis was inevitable. “I would like to make a personal note and take this opportunity to express my deepest heartful gratitude towards my parents Shri. Veesamsetty Karuna Sagar and Smt. Veesamsetty Udaya Rani and my brother Mr. Veesamsetty Amruth Sagar who have always been with me throughout the thick and thin skin of my life. They have always supported me in all the decisions I have made in life and I would thank them for always constructing a good environment and have made sure that I am always abreast to my goals in life. I would like to make a special mention to my best friends Surya, Shiva, Satya and Shashank. I would like to also take a note on thanking my friends, cousins and family for their long-lasting love and uplifting my confidence levels.” - SAIRAM SAGAR VEESAMSETTY “Finally, I would like to show my heartfelt gratitude on this occasion to my parents B. Srinivas and B. Kavitha my brother B. Bhanu Teja, Gopi Krishna Devulapally and my friends Vishal, Manideep, Saikumar, Imran and Yakub Pasha for their everlasting support, love and wishes. I would forward my thanks to all people, whom I missed to mention inadvertently, and from whom I received direct or indirect help” - Krishna Sai Bitla iii ABSTRACT Context. Software Project management focuses on planning and executing the activities for developing software. Agile Software Project Management helps to plan shorter iterations and frequent changes to customer requirement. Developing the process flow metrics helps to monitor the process and to tune the process for the given context. Objectives. The main objectives in the thesis are to identify process flow metrics and frameworks that are suitable for measuring the process flow in Agile projects especially projects with significant dependence on hardware components. Apart from identified metrics from the literature, we identify the impact, challenges, and advantages of using agile models with the help of productivity and process flow metrics and implement them on a test phase project and compare the productivity of agile model with waterfall model. Methods. The thesis presents a two-step study. The first step was to perform a Systematic Literature Review (SLR) and collect the metrics from the literature study that can be used for the comparison of the productivity of both the processes. The Second step was to conduct a case study at Volvo Cars to get us a better understanding, the impact of the agile and how the process flow metrics can be used in real time for measuring and comparison. Results. In the first step of SLR, 363 metrics that can be used by software teams have been identified of which 10 were suitable for the comparison of our current case study required by the second step of our thesis. In the second step, after using the metrics in the first iteration after the transition, an increase in productivity of 6.25% is achieved by the team following the agile process over the team following the traditional process. Several advantages and challenges faced during the transition have been identified which might have affected the achieved productivity. Conclusions. We conclude from the results achieved that metrics can be used as a tool to enhance the benefits of the Agile process. Process Flow metrics can be of good use to compare the difference of productivity between different processes and make improvements to the current processes. Use of process flow metrics increases the insight of all the team members who are on the progress of the project and guides them to enhance team performance and stay on track with the project schedule. Keywords: Process Flow, Agile software development, traditional software development, software metrics. iv CONTENTS ACKNOWLEDGEMENTS ................................................................................................................................ III ABSTRACT ......................................................................................................................................................... IV CONTENTS ........................................................................................................................................................... V LIST OF FIGURES .......................................................................................................................................... VII LIST OF TABLES ........................................................................................................................................... VIII 1 INTRODUCTION ........................................................................................................................................ 1 1.1 AIMS AND OBJECTIVES OF THE RESEARCH ............................................................................................. 3 1.2 THESIS OUTLINE..................................................................................................................................... 3 1.3 RESEARCH GAP OF THE THESIS .............................................................................................................. 4 2 BACKGROUND ........................................................................................................................................... 5 2.1 “TRADITIONAL” SOFTWARE DEVELOPMENT .......................................................................................... 5 2.2 AGILE SOFTWARE DEVELOPMENT .......................................................................................................... 7 2.3 SOFTWARE METRICS .............................................................................................................................. 8 2.4 PROCESS FLOW ...................................................................................................................................... 9 2.5 CONTEXT DESCRIPTION ........................................................................................................................ 10 3 RELATED WORK .................................................................................................................................... 11 4 METHOD .................................................................................................................................................... 13 4.1 RESEARCH QUESTIONS ......................................................................................................................... 13 4.2 SYSTEMATIC LITERATURE REVIEW ...................................................................................................... 14 4.2.1 Study Identification ......................................................................................................................... 15 4.2.1.1 Identify Start Set Papers ........................................................................................................................