It is important that there are several – at least three to five – different software packages available to implement every (critical) solution. This not only brings advantages through the elements of competition and choice, but also adds a qualitative element of robustness to a solution space.
Organisations responsible for the internet infrastructure, for example, deploy at least three completely independent software solutions for routing internet traffic and resolving domain names to IP addresses. That way, if one of the packages is found to have a severe vulnerability through which critical servers can be taken down from the outside, two-thirds of the infrastructure will not be affected.
Hence also the importance of interoperability and open standards: if a single (reference) implementation were enough, it would also create a single de facto standard.
Be aware that different software packages are often using the same underlying software libraries. To become really independent, several independent implementations of these libraries should exist and be used.
This article is part of the research performed for the EC project 'Development of a Funding Mechanism for Sustaining Open Source Software for European Public Services' (2022).
Nederlands (nl-NL)
English (United Kingdom) 
Plaats reactie