Matthias Günter, GnostX GmbH, 2024, V1.1
This work is licensed under CC BY-SA 4.0
Introduction
This document shows how an open source software can be evaluated for enterprise readiness.
Functionality covered
Capability
Functionality covered
Does the software cover the functionality needed for the core use cases.
Proposed measurement: Weighted percentage of use cases / functions / capabilities covered. Goal 80% covered.
Enterprise level target: >=4/5 stars
Maturity
Is the software mature enough, for the intended use. Maturity can be classified as (poc, early adopters, main, late adopters).
Proposed measurement: Weighed maturity per use case / function / capability. Goal: 90% of the core capabilities covered with main.
Enterprise level target: >=4/5 stars
Usability
The software meets the usability criteria. The usability of the software must fit the purpose it will be used in the company. A software may use a very sophisticated GUI only for experts to use, that may make it not the optimal choice when it should be given to casual users.
Proposed measurement: Tests Goal: The software integrates in the users processes (sometimes it is easier to streamline the process).
Enterprise target level: >= 4/5 star
Performance
The software meets the performance needs: The software must be able to handle the workload and be viable in the environment it will be used. Using a software for 1-2 people is not the same as rolling it out to support several thousand users or to process data sets that are hundreds of times larger than in all other installations.
Proposed measurement: Tests Goal: The software scales to the necessary level and performs within the constraints set by the users.
Enterprise target level: >= 4/5 star
Quality
The project and the software maintain the quality needed. There might be quality goals and processes that the software needs to adhere to.
Proposed measurement: Review, research Goal: Project and software have quality processes.
Enterprise target level: >= 4/5 star
Evolution
Evolution
Can the software evolve.
Proposed measurement: Roadmap, past releases dense enough with big enough increments. Goal: More than 2 releases per year (depending on what the software does).
Enterprise target level: >= 3/5 star
Developer pool
Enough development power exists for the software.
Proposed measurement: Number of developers Goal: One professional big player (is more classical software development) or 2-3 medium size players or >5 small players or internal team big enough for supporting the project.
Enterprise target level: >= 4/5 star
Financial viability
Software developers can live from their software. May be a subscription model or payment for development.
Proposed measurement: Annual revenues estimated Goal: Developers can live from the income.
Enterprise target level: >= 4/5 star
Usage
License
The license allows to do the things that need to be done. It combines well with other licenses, when it needs to be. GPL may be critical. OSI license.
Proposed measurement: Review license goal. Check especially if you need a liberal license.
Enterprise target level: >= 3/5 star
Documentation
Documentation
The necessary business, technical and procedural documentation exists and is up to date and available in the language that are needed. Typical minimal documentation: architecture document user manual installation manual troubleshooting manual specification of interfaces.
Proposed measurement: Review the documentation. Goal: Documentation available and useable.
Enterprise target level: >= 3/5 star
Market
Market
Multiple users exist that make the software development worthwhile.
Proposed measurement: Market reasearch/customer list Goal: At least one customer of the same size and many other customers. Customers in the same area/cuntry are prefered.
Enterprise target level: >= 4/5 star
Large Customers
The software is used by other (large) customers in the same business area.
Proposed measurement: Market research/customer list Goal: At least one customer of the same size and many other customers.
Enterprise target level: >= 4/5 star
Own involvement
Own Involvement
This is optional, but if the company intends to get involved, then it would be helpful: bug tracking/translations/development work. If an organisation intends or is willing to get involved in a project/program then obviously this is a sign, that the enterprise readiness iis
accepted and will be grown. As a basis the organisation needs the capabilities. This may start with testing, creating issues and translations up to the level of developers and committers.
Reliability
Reliabiliy
The software has the necessary reliability level. The necessary reliability level depends on the software. However, it must be met. If something is used in a critical business capablility
the software needs to be very reliable and a strong support ecosystem must exist.
Proposed measurement: Discussion with existing customers. In some cases the special needs of the company must be taken into account. Goal: The software is reliable enough.
Enterprise target level: >= 4/5 star
Compliance
Special regulations and standards in the business area are respected/supported.
Depending on the purpose of the software compliance standards and regulations may apply to it. They need to be met also by an open source software (e.g. security standard, financial regulation, etc).
Proposed measurement: Document review goal: The software fulfills the regulation and supports the relevant standards.
Enterprise target level: >= 4/5 star
Security
The software is secure, the project shows it can handle the security. The architecture reflects a concern for the security of the software. Depending on the usage the necessary security standards, checks, processes, vulnerability scans must be performed in the open source project.
Proposed measurement: Reviews Goal: Security is built into the software.
Enterprise target level: >= 4/5 star
Professionalism
Support
The project that supports the software is professionally organised and can deliver the support needed.
Proposed measurement: Market research Goal: The support needs are covered.
Enterprise target level: >= 4/5 star
Table with the elements for enterprise ready software
Area | Element | Star rating | Remarks |
Capability | Functionality covered | ||
Maturity | |||
Evolution | |||
Usability | |||
Performance | |||
Quality | |||
Evolution | Evolution | ||
Developer pool | |||
Financial viability | |||
Usage | License | ||
Documentation | Documentation | ||
Market | Market | ||
Large customers | |||
Own involvement | Own involvement | ||
Reliability | Reliability | ||
Compliance | |||
Security | |||
Professionalism | Professionalism |
Usage
For each software the table ca be filled in. You also might want to use weights depending on your needs. Writting a final textual verdict by the specialists that filled in the table might be useful for the descition. The star rating should be provided by a subject matter expert.
Further reading