Measurement is the basis for process improvement. Without it, it’s impossible to know what and how an aspect of the work process has any potential for improvement and also, the actions directed to improvement and correction are implemented just because “it feels right”. This is a problem because as serious problems appear, there’s this growing frustration within the team as they realize that their corrective actions are not having any effect.
Another problem related to this topic is when it is known that measurement is important, but it’s done without any planning or a clear goal. Remember that even if the cost of performing a certain measurement is low, if it is not used for any purpose, in the end it becomes expensive because it meant wasted team effort.
To solve this problem, the GQM (Goal Question Metric) was created. It’s a simple method to plan measurements so that they’re based on specific organization/project goals. In this post we propose the use of the GQM method with the SCRUM framework.
As one of the roles of a Scrum Master is to monitor and look after the team work process, the measurement should be an important ally for his work. A good practice would be to analyze the negative and positive points raised in retrospectives (especially the recurring ones) and identify the weak points in the process. For example, a negative recurrent point in the latest retrospectives may be that many bugs are being found by the client in the production version. It shows that the activity of automated testing in the work process is not performing well.
Based on this identification, it is possible to apply the GQM in planning a measurement process. For this purpose it should be defined:
- The GOAL of the measurements. E.g. improve the efficiency of the automated tests.
- The QUESTION that should be answered. E.g. what is the efficiency of the automated tests?
- The METRICS that can answer the question. E.g. number of bugs found by the client, interval between failures etc.
With these definitions it is possible to initiate the measurement program that will be followed by the team. It is also important that the Scrum Master schedule regular meetings for data analysis, where the measured data is displayed so that it is possible to draw conclusions for corrective actions (e.g. graphs, tables, etc.).
The GQM, showed in this post, is just one of many methods that can be used to plan measurements. Others may be found in guides, such as MPS.BR, CMMI and some ISOs. The important conclusion of this post is: Measurements should be planned.