Trisha Shetty (Editor)

OpenSource Maturity Model

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
OpenSource Maturity Model

The Open Source Maturity Model (OMM) is a methodology for assessing Free/Libre Open Source Software (FLOSS) 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 p articular, 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 (TWE) 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:

PDOC: Product Documentation STD: Use of Established and Widespread Standards QTP: Quality of Test Plan LCS: Licenses ENV: Technical Environment DFCT: Number of Commits and Bug Reports MST: Maintainability and Stability CM: Configuration Management PP1: Project Planning Part 1 REQM: Requirements Management RDMP1: Availability and Use of a (product) roadmap

Intermediate level:

RDMP2: Availability and Use of a (product) roadmap STK: Relationship between Stakeholders PP2: Project Planning Part 2 PMC: Project Monitoring and Control TST1: Test Part 1 DSN1: Design Part 1 PPQA: Process and Product Quality Assurance

Advanced level:

PI: Product Integration RSKM: Risk Management TST2: Test Part 2 DSN2: Design 2 RASM: Results of third party assessment REP: Reputation CONT: Contribution to FLOSS Product from SW Companies

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.

References

OpenSource Maturity Model Wikipedia