Software is a product that must be able to adapt quickly to rapidly changing market/user requirements with little effort. It is therefore clear that both, qualified developers and highly effective working methods, represent a considerable part of the company’s value. However, developers are also “walking assets”. They can decide at any time to be unavailable to the project at short notice. Such dependencies or, in this context, know-how deficiencies in individual teams should be identified and assessed as significant risks for an investor prior to the investment decision.
We have already addressed the topic of software quality in a due diligence in the last article: Avoid pitfalls in a software due diligence.
Identifying key contributors and also the code areas that have been worked on exclusively by one developer are prerequisites for being able to assess the risk to successfully developing the software further.
Questions like the following should be asked and can also be answered with the necessary depth within the tight time frame of a due diligence:
An automated analysis of knowledge and cooperation patterns by DETANGLE® provides data-based answers to such questions.
At first glance, it only seems advantageous to have a few star developers in the team. Retrospectively, that may be true, but an investor buys and pays for the future. Software development is teamwork. If these stars represent islands of knowledge and develop and maintain important parts of the code alone, then these employees also represent a risk, because the further development of the software depends on them staying in the project.
more than 70% of projects suffer from a bus factor of 1.
— THE BUS FACTOR – WHY YOUR ‘BEST’ DEVELOPER IS YOUR BIGGEST PROBLEM [1]
This means that only one key developer has to leave the project to seriously jeopardise the further development of the software!
So who are the real key developers and how can they be objectively identified? Gut feeling is a poor guide. For example, quiet team members can be overlooked who are doing a top job without a fuss, in addition to sharing their knowledge and also making very few mistakes.
Basically, there are two basic types of relevant developers.
With DETANGLE® it is easy to identify both groups of key developers and their bus factor. We at Cape of Good Code have developed metrics and KPIs for this, which DETANGLE® derives directly from the history of the code in the code repository, and thus provide objective and comprehensible results. These analyses are only supplemented with a few short interviews to round off the picture. The risk of dependencies becomes thus transparent. This gives you the chance to work out concepts in time to keep these top performers in the company after the change of ownership. If this seems impossible, you need to check whether the risk does not represent a red flag for the transaction.
Another important aspect of the risk assessment is the distribution of knowledge and workload in current projects. To gain more insight, it is part of our software due diligence investigation to measure and visualise whether these knowledge islands are compensated by knowledge exchange and thus dissolved in the medium term.
The figure shows as an example a visualisation of the measurement results from an open source project after a DETANGLE® analysis. It is clearly visible that there is a significant section of the code where only one key developer was involved (“knowledge island”). If this employee drops out, and if his work is also poorly documented, it is hard to continue the development with normal effort. There is also an area (“knowledge tangle”) where many team members create code, but no one is obviously in charge (see also our blog on “Cooperation and Knowledge Sharing for Remote Agile Development” at [2]). According to our measurements we expect many bugs in this part of the code. Finally, however, a good example (“knowledge sharing”) can be seen where one developer dominates but shares a significant part of the work with two other developers.
A software company is a knowledge organisation. Especially in smaller software companies, employees are therefore the most valuable but also the riskiest assets. We strongly recommend that this risk be professionally analysed in the due diligence process.
Cape of Good Code has developed an analytical, software-based approach to identify key employees, skill and know-how risks in a differentiated and comprehensive manner. This allows an investor to plan leadership and action priorities from Day 1 (acquisition day) in a timely manner and implement them immediately.
[1] Why5, “THE BUS FACTOR – WHY YOUR ‘BEST’ DEVELOPER IS YOUR BIGGEST PROBLEM”, https://www.5whys.com/articles/the-bus-factor-why-your-best-developer-is-your-biggest-probl.html
[2] Cape of Good Code, “Cooperation and Knowledge Sharing for Remote Agile Development”, https://capeofgoodcode.com/en/knowledge/cooperation-and-knowledge-sharing-for-remote-agile-development/