The globalization of the world market and the reforms process undertaken has resulted in tougher competition and new opportunities. It is evident that during the last several years, the business environment has undergone a significant change. Only those organizations that can produce products and services of good quality at competitive prices can hope to survive and thrive in the changed economic scenario. Companies must gain a competitive advantage by finding ways to differentiate their products and services from others. Organizations that want to remain competitive usually strive to comply with all possible standards, process models, evaluations, assessments, and certification criteria. (Curtis, 2010: 7)
The Software Engineering Institute developed a five-level Capability Maturity Model for Software that described how software organizations transform their capability for building software by focusing on software process improvement. The model was initially published in 1987 as a software process maturity framework that briefly described five maturity levels. The model was formalized as the Software CMM® with a detailed description of recommended software engineering and management practices when published in 1991. Version 1.1 of the model was published in 1993, and work on Software CMM v2 was nearing completion when it was halted in 1997 in favor of the CMM Integration(TM) (CMMI) effort, which integrated systems engineering, software engineering, and integrated process and product development into a single model. The success of the Software CMM inspired a variety of maturity models and other standards.
Over the last decade, the software industry has been investing heavily in software process improvement mainly in broadly accepted models such as the Software Engineering Institute's (SEI) Capability Maturity Model (CMM®) and its successor, the CMMI (hinders and Sassenburg 2004). The CMMI model provides guidance in specific process areas by providing goals and a set of expected practices needed to meet those goals. According to the SEl, CMMI is a process improvement approach that provides organizations with the essential elements of effective processes. It can be used to guide process improvement across a project, a division, or an entire organization. CMMI helps integrate traditionally separate organizational functions, set process improvement goals and priorities, provide guidance for quality processes, and provide a point of reference for appraising current processes. The purpose is to guide organizations in the task of improving their processes and their ability to manage the development, acquisition, and maintenance of products and services. CMMI integrates systems engineering, software engineering, integrated product and process development (IPPD), and acquisition into a single model, as well as other aspects of organizations including human resources and organizational security. CMMI is one of the most widespread and acknowledged software development process definitions for improving software project performance. (Summers, 2010: 459-462)
Purpose
The purpose of this report is to evaluating and discussing the merits and demerits of CMMI
Beneftis of CMMI
The primary goals of CMMI are continuous improvement in the performance of software development teams in terms of software product cost, cycle time, and delivered quality (Gack and Robison ...