OpenSource Maturity Model


The Open Source Maturity Model is a methodology for assessing Free/Libre Open Source Software and more specifically the FLOSS development process. This methodology is released under the Creative Commons license.
OMM may help in building trust in the development process of companies using or producing FLOSS. The aim of the methodology is to enable any enterprise or organization to use FLOSS software in production and, in particular, in their mainstream products and not only in prototypes.
OMM objectives are to provide FLOSS communities a basis for developing products efficiently and making their products trustworthy for the potential customers, and also for integrating companies and to provide FLOSS integrators a basis for evaluating the processes used by the FLOSS communities.
OMM is interchangeably referred to as model and methodology. It is first a model that contains all elements that have to be assessed, but it is also a set of rules and guidelines describing how to conduct the assessment process.

General structure

OMM is organized in levels, each level is building on and including the trustworthy elements at the lower level. The trustworthy elements included in OMM were collected or inspired by two sources:
  1. FLOSS-TWEs gathered from an extensive survey conducted on FLOSS developers, FLOSS users, and FLOSS integrators
  2. CMMI Process Areas
Three maturity levels available in OMM are:
  1. Basic level that can be easily reached by adopting a few necessary practices in the FLOSS development process
  2. Intermediate level is the second level in OMM and can be achieved by fulfilling all trustworthy elements from the basic level and required trustworthy elements from the intermediate level.
  3. The advanced level is the highest level that FLOSS projects can achieve by fulfilling all trustworthy elements from basic and intermediate levels and required trustworthy elements from the advanced level.
List of trustworthy elements constituting the three OMM maturity levels:
Basic level:
Intermediate level:
Advanced level:
While attempting to develop such a model, a few basic facts had been considered:
  1. OMM is a process model for development by developers and integration of FLOSS products by integrators.
  2. OMM is intended for use by individuals and development teams that may be spread across locations worldwide, hence the emphasis on simplicity and ease of use. Being simple but organized as an evolutionary model, OMM can be useful for companies as well. This approach helped to keep the model lean but still practical.
The OMM model is now tested and validated in real FLOSS projects that are led by FLOSS communities or by software development companies.