Evidence Based Management for software development

March 9, 2017


It’s not often easy making decisions as a manager, especially if you’re working under high pressure. Mistakes can happen to the best of us and we oftn make decisions based on our own experiences or old information. Perhaps we are being pulled towards the latest management hype that’s supposed to solve all our problems, or follow other companies’ best practices without asking what will actually work for us and our organization’s conditions. This is where evidence based management might be a good idea.

In order to make better decisions we have to become better at using the information around us. Information, or rather, evidence, is all around us; we just need to learn how to use it. There are many types of leadership and Evidence Based Management is one of the more common ones.

Evidence based management and software development

Evidence based management has its origins in the medical field, where it has been used the last decade. Within evidence based medicine you aim to use evidence from well built and performed research about decision making within medicine.

On the other hand, evidence based management can be used to measure the value of a software delivery. That way, you can find which parts of the software delivery process actually contribute to creating value. In turn, this shows which investments will be profitable and creates a framework for continuous evaluation within the company.

In conclusion, evidence based management is about performing the following steps:

  • Evaluate the current situation of organizational deliveries
  • Analyze which factors contribute to the current situations
  • Implement changes in short cycles
  • Evaluate the result based on solid evidence

The agility index

Scrum.org has produced a way to used evidence based management called Agility Index. This index represents the current value that an organization delivers from a software as well as its ability to maintain this in the future. In other words, it’s a leading indicator of the agile health of an organization. The index is customized to be comparable between organizations and with this index we can perform the following steps to continually improve:

  1. Measure select KPIs and create a baseline to use
  2. Choose one area to improve. The baseline from the previous step provides evidence that decision makers use to select areas of improvement.
  3. Perform experiments to improve the index. Here it’s important to limit the area of improvement experiments, for example to implement test-driven development.
  4. Evaluate the results. Try to find trends that over time show where problems and potential for improvements are.
  5. Repeat from step 1.

Many KPIs used to calculate the agility index (or similar versions of the value) can be extracted from tools such as Microsoft TFS and VSTS. These products include tools to find KPIs for your build process, test process and many other areas. All of this will help your company find evidence based ways to improve. 

Have you tried evidence based management or any of the Microsoft tools mentioned above? What kind of reports and KPIs are you using? Let us know in the comments below!