Quality: A Health Capsule to Retain Growth

Author: Sabyasachi Bardoloi
Manager Pinnacle Research Group
Pinnacle Systems, Inc.

1. Introduction

Quality is the very essence of any organization. An individual is known by the level of quality he/she possesses. Similarly in an organization, be it a products or services company, the organisation is identified in the market by the level of quality it maintains. If a compromise is drawn on the level of quality, it won’t be long before the value of its products and services start slipping downhill.

Dr William Edward Deming of Total Quality Management fame once opined:
“Quality isn’t about people doing their best, it’s about having the right process in place such as when people understand them, then they can do their best within the system.”

In today’s ever-competitive markets, quality-conscious customers look for maximum value for their money. In the context of the software industry, quality consciousness level is even higher.

This white paper gives an overview of the Software Engineering Institute’s-Capability Maturity Model (SEI-CMM) and it’s relevance in the IT world. It explains the various levels of the CMM and spells out the required key process areas, on which an IT organization needs to focus. It identifies how the CMM acts as a health capsule in determining and maintaining the overall quality of the organisation.

2. CMM – a Curtain Raiser

With a view to help IT organizations enhance and boost their software processes, the Software Engineering Institute (SEI), located at Carnegie Mellon University, Pittsburgh, Pennsylvania initiated a process maturity framework way back in 1986. This was federally funded with the sponsorship of the Department of Defence, along with the Mitre Corporation

The corresponding four years witnessed the expansion of the process maturity framework by the SEI and it finally culminated in the gradual transition from maturity framework to the Capability Maturity Model (CMM) for software.

3. CMM – the Nitty-Gritty

The CMM provides software organizations with guidance on how to gain control of their processes for developing and maintaining software and to gradually evolve towards a culture of software engineering and management excellence. It is a model that helps improve the maturity i.e. the strength of the various processes undertaken by an organization in developing and supporting its information systems.

4. CMM – its Levels

The CMM consists of five different levels of increasing process maturity. This five-stage structure of the CMM is based on the various principles championed by W. Edward Deming, Philip Crosby, Walter Shewart and Joseph Juran. A maturity level is a thoroughly -defined pattern to achieve a mature software process.

These five stages helps measure the overall maturity level of an IT organization’s software processes. They include:

Level 1 – Initial
Level 2 – Repeatable
Level 3 – Defined
Level 4 – Managed
Level 5 – Optimising

Level 1 – Initial level

Organizations at this entry level carry out their work on an ad hoc basis. A handful of formal processes are defined properly while project management discipline is, at best, unclear. As such success and failures have little impact on future undertakings. Results therefore become unpredictable, processes are poorly controlled and the ultimate success depends on the dedicated effort of a few enterprising individuals instead of the entire organization as a whole.

Level 2 – Repeatable level

At this second level, organizations depend mainly on policies for managing a software project and measures to apply those policies are established. These measures help the organizations to repeat successfully the previously mastered tasks and avoid the repetition of failures. The major chunk of an organization’s processes at this level stays institutionalised, through staff experience instead of detailed documentation procedures.

Level 3 – Defined level

The various engineering activities and the processes of management at this level is formally defined, documented and integrated. In the process of development and maintenance of software, the organization’s staff follows this defined standard process. At this third level, newer methods and tools can be added, and it becomes easier to train new staff to adapt according to the requirement of the organization.

Level 4 – Managed level

At this level, organizations stress the importance of quantitatively measuring the quality of the products delivered by each process. Detailed measures of the software process and product quality are collected and used to identify and correct issues with process performances. Organizations set quantitative goals for both software products as well as processes.

As part of the organization’s measurement program, productivity and quality of all software process activities and its supporting activities are measured. As new sets of tools or processes are added, or adjustments are made to already existing processes, measurement data enables the organization to access the success of the adjustment as well as prevent the recurrence of defects.

Level 5 – Optimising level

At level 5, focus is on the continuous process improvement. The organization proactively identifies strengths and weakness in process, with the aim of preventing the occurrence of defects. Here continuous improvement becomes institutionalised into the development process. Instead of merely correcting defects as they are found, the main aim at this highest level is to stall future defects and address the key to those defects by planning in advance.

CMM – its KPAs

Each CMM level discussed above focuses on a series of Key Process Areas (KPAs). The KPA’s for a particular level are the focus of enhancements. As processes are systematically implemented, it helps an organization to move to the next maturity level. Within each KPA, is a set of key practices to be taken in order to effectively follow and institutionalise the achievement of the process goals.

Maturity Level

Key Process Areas

5 a. Defect Prevention
b. Technology Change Management
c. Process Change Management
4 a. Software Quality Management
b. Quality Process Management
3 a. Organizational Process Focus
b. Organizational Process Definition
c. Training Program
d. Software Product Engineering
e. Integrated Software Management
f. Inter-Group Coordination
g. Peer Review
2 a. Software Requirement Management
b. Software Project Planning
c. Software Project Tracking & Oversight
d. Software Subcontract Management
e. Software Quality Assurance
f. Software Configuration Management
1 No KPAs

CMM – It’s Stairway

Fundamentally speaking CMM helps an organization in two ways;

  • Firstly CMM instills definite practices, which results in an increase in profitability.
  • Secondly and most importantly is the immediate change it brings about in an organization’s culture and mentality, thereby helping it to climb up the CMM ladder.

Among some 900 plus organizations, which contribute their assessment data to the Software Engineering Institute (SEI), a majority of them fall within level 1 and level 2, the percentages being 34.9 and 38.2 respectively.

However the journey to reach a higher level of process maturity requires a considerable amount of time and effort. The CMM-based enhancement effort which organizations initiated in 1992 and later, has shown that the time to move from one level to the next averaged as follows:

  • From level 1 to level 2: 25 months
  • From level 2 to level 3: 22 months
  • From level 3 to level 4: 36.5 months

An illustration below shows the number of organizations, which have qualified for Level 4 and Level 5 as on October 2002.

Country

Number of CMM Level 4 Organizations

Number of CMM Level 5 Organizations

Australia 2
Canada 1
China 2
France 1
India 27 50
Ireland 1
Israel 1
Russia 1
Singapore 1
USA 39 20

� Source: www.sci.cmu.edu

CMM – A Blessing

The advantages of moving up the CMM ladder are evident in a large number of organizations. Upgrading to each higher level is accompanied by an improvement in the overall performance level of the organization. Some of CMM’s major plus points include:

  • A shift from reactive to proactive management
  • Helps build a skilled and motivated workforce
  • Cuts cost in development and support system
  • Shortens delivery schedules and improves delivery of requirements
  • Results in customer satisfaction
  • Improves quality of software products
  • Induces robustness
  • Improves management decision-making
  • Introduces newer technology thus creating competitive advantages

CMM – A Health Capsule

The SEI-CMM levels are like a prescription provided by a doctor. Just as standards in life have to be followed to improve the overall quality of life, similarly following the key process criteria of the CMM helps an organization to improve its overall health and prosperity. The scaling up of each level enhances the performance and core competency of the organization significantly.

It helps to improve the growth of software engineering from an ad-hoc level to a disciplined and managed level and is well supported by up to date technology. In addition to this it is advantageous for an organization to achieve the maturity level from a purely business point of view.

  • According to reports, when CMM is applied properly it can:
  • Improve productivity threefold
  • Improvement in time-to-market by 0-70%
  • Decrease in product defects by 90%

Percent Improvement Compared with Results at Previous Levels

Criteria Level 1 – 2 Level 2 – 3 Level 3 – 4
Reduce defects 12% 40% 85%
Reduce cycle time 10% 38% 63%
Reduce cost 8% 35% 75%
Schedule variance 145% 24% 15%

* Source: Boeing Corporation

CMM by itself does not guarantee that the work done will be outstanding and successful. It rather makes sure that the practicing organizations work in an orderly manner thereby implying that results will be predictable. Through practicing the CMM process, an organization can reach new heights and look forward to the sky as its limit.

Conclusion

It can be concluded that CMM helps in judging the software processes of an organization as well as identifying the prerequisites necessary to enhance the overall maturity level of these processes. It furthermore points the way down a well-defined path to improve the management and development of software products in a disciplined and orderly way. Applied in a proper manner, CMM is indeed a powerful system, which can help transform an IT organization and help it to reach its pinnacle.

References

1. The Capability Maturity Model for Software, SEI
2. From Model to Money: Keane Inc.
3. Closing the Capability Gap: Keane Inc.
4. A Review of SEI CMM & ISO 9001, OffshoreDev.com
5. Outsourcing & the CMM: Keane Inc.
6. What does ISO 9001 and CMM means to your organization: Builder.com
7. Gartner, Inc.

Pinnacle Systems, Inc. is a technology consulting and solutions provider to the Capital Markets, Pharmaceuticals, Education and Transportation markets.

For over seven years, Pinnacle has applied its in-depth domain expertise and Offshore Development capabilities in each of these verticals to successfully deliver cost-effective project-based solutions for leading global institutions.

Pinnacle Systems, Inc. is headquartered in New Jersey, USA with development centers in Chennai, India and has representation in Europe and APAC. For more information, log on to www.pinnacle-sys.com

Pinnacle, pinnacle-sys.com and the respective logos are trademarks of Pinnacle Systems, Inc. Reproduction of this white paper in whole or in part and in any form or medium without our written permission is prohibited. Should this white paper interest you and you wish to reprint/publish it, please contact info@pinnacle-sys.com. Pinnacle’s Information Research Center has used its best efforts in collecting and preparing the information published herein. However, Pinnacle Systems, Inc. does not assume, and hereby disclaims, all liability for any loss or damage caused by errors, whether such errors resulted from negligence, accident, or other causes.

Copyright Project Perfect