Check out this article on “The History and Purpose of the Capability Maturity Model (CMM)” (https://toughnickel.com/business/The-History-and-Purpose-of-the-Capability-Maturity-Model-CMM) It provides an interesting and thought provoking accounting of how the Carnegie Mellon University’s (CMU’s) Software Engineering Institute (SEI) came to be and how the quest of NASA and the US Air Force lead the charge to improve software quality.  According to the article – “The Capability Maturity Model was developed to ensure success when success really matters – at NASA and in the military where lives are on the line and success is survival”. 

The problem the industry had with this quest for quality solutions was that the most critical military systems were also generally the most top secret – so while high quality was essential for these systems, lessons learned were not generally publically available.  And any government contractor who developed a brilliant solution to creating quality systems was highly unmotivated to share this solution and dispel any competitive advantage it might offer them.  Of course, systems created by NASA fell under an entirely different umbrella – as a US civilian space agency, NASA was required by order of Congress to share any knowledge gained, for the good of the nation.

The Capability Maturity Model (CMM) and later instantiations known as the Capability Maturity Model Integration (CMMI) is a model through which quantitative assessments of an organization’s software and systems process maturity can be made.  The CMMI describes the process areas that should be addressed along with providing guidance on the activities required to get these processes into place.  The model is based on the premise that process improvement should involve the entire software and systems development organizations, not just the groups required to build the hardware and software.  Click here to learn more about CMMI and how good software estimation practices are a must to achieve software and system process maturity.

The CMM and CMMI have a rich history throughout the life of the US Space program – Gemini, Apollo and the Space Shuttle all benefitted from the research funded by the US government and conducted by the CMU SEI to apply disciplined processes to achieve excellent software and systems solutions.  Richard Feynmann – Nobel Prize winning physicist who evaluated the Challenger space shuttle systems after the Challenger disaster – concluded that “the only system that was well engineered and thoroughly reliable in all ways was the shuttle software.”  (can you link this quote to the article mentioned above as well).

If you’re organization is striving to find ways to improve system and software development processes, even if you aren’t pursuing a CMMI level certification, consider the CMMI for development as a time tested, excellent resource to guide you on the way (you can download the technical report from this link http://www.sei.cmu.edu/reports/10tr033.pdf).