Effective monitoring of progress of agile software development teams in modern software companies: an industrial case study

Background: The last ten to fifteen years, there has been a change in the way modern software organizations and companies work. The "classic" set-up with a project, where the project leader together with his/her project management team set up a time plan and execute on it, has been replaced by autonomous software development teams. Traditionally, measures were given top down, but now teams are asked to define and follow-up on their progress, by establishing their own measures. Goal: The goal of our research is to develop a set of measures for software development teams, addressing the research question of What should software development teams measure, to effectively monitor their progress? Method: We use an action research collaborative project with an infrastructure provider company. We developed the measures together with nine agile software development teams, using survey of needs, workshops about requirements, development of a dashboard and its evaluation in a mature measurement program. Results: The results show that the five measures we developed, in three different areas, cover the most important needs of agile software development teams for effective monitoring of their progress. Conclusions: Based of the results, we conclude that using the set of measures developed, software development teams can effectively monitor their progress. The limited number of areas monitored and measures used, limits the effort that the teams have to put on developing and monitoring these measures.

[1]  Miroslaw Staron,et al.  Measuring and Visualizing Code Stability -- A Case Study at Three Companies , 2013, 2013 Joint Conference of the 23rd International Workshop on Software Measurement and the 8th International Conference on Software Process and Product Measurement.

[2]  Meghann L. Drury-Grogan Performance on agile teams: Relating iteration objectives and critical decisions to project management success factors , 2014, Inf. Softw. Technol..

[3]  Miroslaw Staron,et al.  Release Readiness Indicator for Mature Agile and Lean Software Development Projects , 2012, XP.

[4]  Rakesh Rana,et al.  Selecting software reliability growth models and improving their predictive accuracy using historical projects data , 2014, J. Syst. Softw..

[5]  J. Knottnerus,et al.  Real world research. , 2010, Journal of clinical epidemiology.

[6]  Miroslaw Staron,et al.  A Portfolio of Internal Quality Metrics for Software Architects , 2017, SWQD.

[7]  Frank Maurer,et al.  Information Visualization for Agile Software Development , 2014, 2014 Second IEEE Working Conference on Software Visualization.

[8]  Philip M. Johnson,et al.  Understanding HPC Development through Automated Process and Product Measurement with Hackystat , 2005 .

[9]  Andraž Cej,et al.  Agile software development with Scrum , 2010 .

[10]  G. Ann Campbell,et al.  SonarQube in Action , 2013 .

[11]  Miroslaw Staron,et al.  Dashboards for Continuous Monitoring of Quality for Software Product under Development , 2014, Relating System Quality and Software Architecture.

[12]  Miroslaw Staron,et al.  Identifying risky areas of software code in Agile/Lean software development: An industrial experience report , 2014, 2014 Software Evolution Week - IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE).