This is the fourth of a series of How to be Software Quality Professional, and we will look two major frameworks that are widely implemented by thousands of organization. As a Software Quality newbie you don’t need to be certified in CMMI or ISO, you only need to know the basics of these standards and process improvement framework. The subsequent posts will talk over in greater detail.
As the Software Industry is growing around the globe and companies are willing to remain intact with their clientele by providing quality software solutions to them. By this willingness there comes an idea of Standards and Best Practices to win the customers or at least sustain them. In order to lower the threats of organization losing their customers some international organization produces some standards and best practices which are widely accepted and practiced around the world in every software development organization to a minimum to maximum extent. This post will describe high level overview of some common quality standards which help in implementing robust Quality Management Systems – QMS
CMMI
CMMI –Capability Maturity Model Integration, one of the robust and widely implemented process improvement standards developed by Software Engineering Institute, Carnegie Mellon University. This process improvement framework provides a five step ladder to achieve the unmatched maturity in software development industry and most of the time CMMI becomes the competitive advantage for the organizations in question. CMMI Levels and their definitions are as follows.
Level 5: Continuous Improvement OR Optimized
Level 4: Quantitatively Manage
Level 3: Defined
Level 2: Managed
Level 1: Initial OR Performed
In order to achieve any of the above level any organization must implement the corresponding process areas also known as Key Process Areas (KPAs). For instance, If an organization willing to achieve Level 2 maturity it should implement all the applicable process areas correspond to Level 2 (i.e. Managed). All of the levels have some specific goals and generic goals. Specific Goals are related to each process area while Generic Goals are related to individual Maturity Level.
For example, Project Planning is one of the process area belongs to Level 2; it has 3 Specific Goals namely:
- Establish estimates
- Develop a Project Plan
- Obtain commitment to the plan
The generic goals of each maturity levels are as follows:
- Achieve Specific Goals
- Institutionalize a managed process
- Institutionalize a defined process
- Institutionalize a quantitatively managed process
- Institutionalize an optimizing process