Agile developers are generally reluctant to non-agile practices. Promoted by senior software practitioners, agile methods were intended to avoid traditional engineering practices and rather focus on delivering working software as quickly as possible. Thus, the unique measure in Scrum, a well known framework for managing agile projects, is velocity. Its main purpose is to demonstrate the progress in delivering working software. In software engineering (SE), measurement programs have more in depth purposes and allow teams and individuals to improve their development process along with providing better product quality and control over the project. This paper will describe the experience and the approach used in an agile SE company to design and initiate a measurement program taking into account the specificities of their agile environment, principles and values. The lessons learned after five months of investigation are twofold. The first one shows how agile teams, in comparison to traditional teams, have different needs when trying to establish a measurement program. The second confirms that agile teams, as many other groups of workers, are reluctant and resistant to change. Finally, the preliminary results show that agile people are more interested in value delivery, technical debt, and multiple aspects related to team dynamics and will cooperate to the collection of data as soon as there tools can do it for them. It is believed that this research could suggest new guidelines for elaborating specific measurement programs in other agile environments.
['Oualid Ktata', 'Ghislain Lévesque']
Designing and implementing a measurement program for Scrum teams: what do agile developers really need and want?