ISO is a global organization which identifies and creates the required international standards for organizations, government bodies. Next, these standards are implemented, adopted and made available worldwide. CMMI is an approach for process improvement which provides organizations, essential element of effective processes to improve their performance. It particularly focuses on system engineering and software engineering.
In the past few years there’s been a blossoming of a new style of software methodology – referred to as agile methods. Probably the most noticeable change to software process thinking in the last few years has been the appearance of the word ‘agile’.
CMMI is referred to as process model. On the other hand, ISO is referred to as an audit standard. In CMMI, different organizations can get rating from level 1 to level 5 depending upon the maturity of processes defined in every process level. ISO is a certification tool and one organization can get this certification after confirming some standards.
Capability Maturity Model Integration (CMMI), developed by the Software Engineering Institute at Carnegie Mellon University in Pittsburgh, Pennsylvania is an imporvement on the earlier CMM model that determined the maturity of software intensive systems. The latest version, CMMI 1.2, released in August 2006 address Development (CMMI-DEV), Services (CMMI-SVC) and Acquisition (CMMI-ACQ). CMI-DEV is a yardstick to judge the maturity of an organization’s software development systems by comparing it to the best industry practice.
ISO is a family of quality management standards developed and maintained by the International Organization for Standardization (ISO). ISO 9001, for instance relates to standards in the supply chain and ISO 14000 relates to environment related standards. ISO specifications change with time.
Agile methodology is an alternative to traditional project management, typically used in software development. It helps teams respond to unpredictability through incremental, iterative work cadences, known as sprints. Agile methodologies are an alternative to waterfall, or traditional sequential development.
The fundamental difference between CMMI vs ISO is conceptual. CMMI is a process model and ISO is an audit standard.
CMMI is a set of related “best practices” derived from industry leaders and relates to product engineering and software development. Businesses receive CMMI ratings from Level 1 to Level 5 depending upon the extent of compliance to key performance areas specified in the selected CMMI process area.
ISO is a certification tool that certifies businesses whose processes conform to the laid down standards.
Agile methods are adaptive rather than predictive. Engineering methods tend to try to plan out a large part of the software process in great detail for a long span of time, this works well until things change. So their nature is to resist change. The agile methods, however, welcome change. They try to be processes that adapt and thrive on change, even to the point of changing themselves.
CMMI is rigid and extends only to businesses developing software intensive systems. ISO is flexible and applicable to all manufacturing industries. CMMI focuses on engineering and project management processes whereas ISO’s focus is generic in nature.
CMMI mandates generic and specific practices and businesses have a choice of selecting the model relevant to their business needs from 22 developed process areas. ISO requirements are same for all companies, industries, and disciplines.
Agile development methodology provides opportunities to assess the direction of a project throughout the development lifecycle. This is achieved through regular cadences of work, known as sprints or iterations, at the end of which teams must present a potentially shippable product increment. By focusing on the repetition of abbreviated work cycles as well as the functional product they yield, agile methodology is described as “iterative” and “incremental.”
CMMI requires ingraining processes into business needs so that such processes become part of corporate culture and do not break down under the pressure of deadlines. ISO specifies to conformance and remains oblivious as to whether such conformance is of strategic business value or not.
CMMI approaches risk management as an organized and technical discipline by identifying risk factors, quantifying such risk factors, and tracking them throughout the project life cycle. ISO was until recently neutral on risk management. ISO 31000:2009 now provides generic guidelines for the design, implementation, and maintenance of risk management processes throughout an organization.
Although CMMI focuses on linkage of processes to business goals, customer satisfaction is not a factor in the ranking whereas customer satisfaction is an important part of ISO requirements.
Agile methods are people-oriented rather than process-oriented. The goal of engineering methods is to define a process that will work well whoever happens to be using it. Agile methods assert that no process will ever make up the skill of the development team, so the role of a process is to support the development team in their work.
Neither CMMI nor ISO requires the establishment of new processes. CMMI compares the existing processes to industry best practices whereas ISO requires adjustment of existing processes to confirm to the specific ISO requirements.
In practice, some organizations tend to rely on extensive documentation while implementing both CMMI and ISO. Most organizations tend to constitute in-house teams, or rely on external auditors to see through the implementation proess.
Agile development methodology helps companies build the right product. Instead of committing to market a piece of software that hasn’t even been written yet, agile empowers teams to continuously replan their release to optimize its value throughout development, allowing them to be as competitive as possible in the marketplace. Development using an agile methodology preserves a product’s critical market relevance and ensures a team’s work doesn’t wind up on a shelf, never released.
The comparison of CMMI vs ISO reveals that while CMMI is more focused, complex, and aligned with business objectives, ISO is flexible, wider in scope and not directly linked to business objectives. The attainment of either a CMMI ranking or ISO certification nevertheless help organizations establish a quality management system and focus on continuous improvement.
If we use CMMI for Development as a familiar example, we suggest that many approaches to development can be taken within the broad framework represented by the content of CMMI. Methods, then, can perhaps best be thought of as ways actually to do the work—the “how” that the “what” of the models may not adequately address. The best example we have of an effective method linked to CMMI is TSP. Similarly, Agile methods also fit within a model structure such as CMMI-DEV. Like TSP, Agile methods seek to provide detailed approaches to development tasks.
The figure illustrates a vertical collection of techniques that represent a different direction or dimension of improvement elements. These techniques can investigate and solve problems in organizations.
Drop Us A Note