This tutorial explains what are CMM levels and how to achieve these CMM levels for QA processes – explained with the best examples.
For any process, whether it is a QA process, development process or any non-technical process, there are levels of its maturity. By levels of maturity, we mean that the level of formality and process improvement, like ad-hoc processes – to formally defined steps – to managed result metrics – to the optimization of the processes.
What You Will Learn:
- CMM (Capability Maturity Model)
- Level 1 (Initial) – Ad-Hoc: Unplanned, Unsystematic, and Inconsistent
- Level 2 (Repeatable) – Control: Initiate Defining Processes At A High Level
- Level 3 (Defined) – Core Competency: Come Up With A Generalized Process For Wider Audiences And Domains
- Level 4 (Managed) – Predictable: Measure the Processes
- Level 5 (Optimizing) – Innovative: Continuous Improvement
- Additional Info
- Recommended Reading
CMM (Capability Maturity Model)
This is a process-based model that is used to assess the maturity of an organization for different domains. The concept of CMM was introduced by the Software Engineering Institute (SEI) in the USA.
Although this model is applied to the Software Development process, eventually it is used for other processes like QA and testing as well.
It has 5 different levels of maturity from 1 to 5. As we go towards level 5 from 1, variability and inconsistency get reduced. Given below are the details of 5 levels.
Here we will go through the 5 CMM levels with respect to the QA process and what all output/result is expected for each level to mature a QA/testing process and reach up to level 5.
Level 1 (Initial) – Ad-Hoc: Unplanned, Unsystematic, and Inconsistent
As the word “Ad-Hoc” states: unplanned, unprepared, at this level, the significance is not given to planning, following processes, guidelines, and standards.
There is no standardized & consistent way of doing any task. The only thing which is important at this level is meeting the timelines, irrespective of the quality of the end product and deliverables. As there are no pre-defined standards and processes, the same task is done in different ways by different people.
This becomes even more unsystematic and inconsistent if the same task is done differently next time as there are no documents available in the process which can allow the process to be replicated. So, at this level, the process is poorly controlled, unpredictable and reactive.
QA – The example would be that in an organization although QA is one of the phases in a product life cycle, there are not any standards & no defined process, no templates for QA deliverables – test plan, test strategy, test scenarios, and test cases are not standardized.
Even if these things are defined & documented then all the team members have their own way of doing the tasks and the process is not consistent at all. So, basically there is no control over QA and it’s a chaotic phase.
Level 2 (Repeatable) – Control: Initiate Defining Processes At A High Level
In this phase, we get a solution to the problem regarding the unavailability of QA processes, methodology & standards which we saw at Level 1. We have processes, methodology & standards in place.
The standards and processes are not only finalized but are also well documented so that those can be re-used by any of the similar tasks which have been done previously. That is why this level is known as “repeatable” – as we can repeat the steps for doing the same kind of work.
So, the focus is on basic project management at this level.
QA – Define overall QA process and methodology for different types of testing like functional, data, performance, etc. Define the role & responsibilities of a QA engineer & test lead in the project’s life cycle and prepare templates for deliverables in each phase. Test plans, test strategies, test scenarios, and test cases should all be in place.
Not only define and prepare but also share the documentation within the team.
Level 3 (Defined) – Core Competency: Come Up With A Generalized Process For Wider Audiences And Domains
At level 3, people are motivated to follow the standards and processes defined at level 2. For this, first of all, the processes need to be conveyed to all the involved people. It needs to be identified that all skills are needed to use the processes & standards effectively & efficiently and also if there is any training is required for that.
Then, motivate and support the resources to follow those standards and processes. Here, people with more experience need to share their knowledge with others.
The focus is on documentation, process standardization, and integration. By this time, the organization has developed its own standard process of software testing.
QA – Conduct webinars and training sessions to let people get acquainted with the newly defined QA process and standards and motivate them to make use of those during their day to day project work.
Level 4 (Managed) – Predictable: Measure the Processes
At this level, processes defined at level 3 are measured quantitatively. This is done to control the effort required on any task. Based on this quantitative analysis, processes can be adjusted if needed, and that too without degrading the quality of the end product.
An analysis is done by dividing the complete process into smaller sub-processes and then quantitative techniques are applied to these sub-processes. As per the results, sub-processes can be adjusted if needed.
This level is called predictable because based on prior experience, we can predict the process quantitatively and make use of this prediction for the upcoming processes.
The key process areas of CMM level 4 are quantitative project management and organizational process performance.
In short, the process is measured & controlled at this level.
QA – Performing regular audits would be a good idea here. This can include checking if teams are following the processes defined, using standard templates, adhere to methodology or not.
If you are into automation testing, then doing periodic code reviews of the automation test scripts would be an apt example here.
Level 5 (Optimizing) – Innovative: Continuous Improvement
At this level, innovative ways are identified to further improve the pre-defined processes and standards. This is a continuous process.
For this, our own processes are watched and re-engineered continuously by adding new tools & technologies, by continuous research & studies and by keeping ourselves updated with new information in the market.
This can also be achieved by benchmarking other organizations and learning from them and trying to improve our process by adding new innovations to it. So, the focus is on continuous process improvement at this level. The key process areas are organizational performance management & quantitative project management.
QA – Keep on improving the methodology and processes defined based on prior audit results.
Based on some studies it has been concluded that the organizations at level 1 may spend $1000 for any particular task and then for the same task organization at level 5 needs to spend $10.
Recently in my organization, it was identified that we are doing the regression testing manually which takes manual repetition of the same kind of effort and consumes a lot of hours which can be saved and put into some other productive works.
We then did a Proof of Concept to automate the regression testing process with the help of an automation testing tool. The POC went fine and finally, we were successful in doing the regression testing through automation test scripts. This saved a lot of effort & time and contributed to the overall process improvement.
After going through all the 5 levels mentioned above, it looks like reaching up to level 3 is difficult. Once it is achieved then next levels are not too far and difficult to achieve :)
Nowadays, the CMMI model has become popular and has taken over CMM. CMMI (Capability maturity model integration) is nothing but the successor of CMM.
It is an integrated approach that deals with separate models of CMM and overcomes the drawback of traditional CMM. It also has 5 levels similar to CMM.
Given below is a very useful link where you can learn the difference between CMM & CMMI and compare these two:
In the software testing market, some of the CMMI level 5 names that are worth to mention here are Capgemini India Pvt. Ltd – “FSGBU India – Development and Testing Projects”, Capita – “IT Professional Services – Testing Projects” and Infosys Public Services – “Software Development, Maintenance, and Testing”.
You can get the CMMI ratings of the various organizations.
Further Reading: What is SEI? CMM? ISO? IEEE? ANSI? Will it help?
This is a guest article by Meenal Balajiwale.
Meenal is working as a Team Lead in an MNC. She specializes in the overall QA process for performing functional, data, performance and security testing. Worked on Waterfall and Agile models, BI testing, web testing, and data quality as well.
Please feel free to post your queries in the comments below.
44 thoughts on “How to Achieve Level 5 Maturity for QA and Testing Process”
I saw many posts on this CMM topic but this is the first time I see how to actually implement QA processes to get CMM level standards. Nice examples for CMM relation with quality assurance.
thanks for sharing.
Article was good, with examples you have clearly explained the CMM. Most of the small scale IT companies are following the Ad-Hoc process. By following the process companies can reach the next level.
Article is quite good would have been better if it was more detailed.I would say it is just an abstract view of practices and processes.
Nice article! I got to know useful information. I will apply your recomendation in my work.
Thanks all! I am glad to see your encouraging comments.
Very good and nice spelling in the article that may reach every one reading. Better if with the levels may be a statistical images. All the way very good .
10 commandments of software testing
Good article about CMM, thanks a lot.
Nice Article about the CMM Lavel. It give a complete idea how the step by step process are going on. Nice examples for CMM lavel relation with quality assurance.
hi. i am sagar. I am textile engg. I have 2 yrs experience in textile. but now i want to do software testing from pune.
Can I get the job? which institute i should choose,seeds or SQTL. pls help me out.
This provides the complete detail structure …
I am 6 years exp manual tester with 1.6 years in silk performer and silk test.
Have worked in unix,sql,web testing.
Mail me at firstname.lastname@example.org if there is any job opening in your company
JavaOne 2012 is apparently being held at Hyderabad this year as well (3-4 May). They have also started accepting registrations. Check this: http://www.oracle.com/javaone/in-en/index.html?pcode=WWMK11024795MPP084&src=7268797&Act=155 ).
I think this is a good overview of moving between the different levels however what’s not explained is how long it can take to reach the next level; Also it’s not explained how much time, effort and money is needed to achieve the next level.
Article was good.As a fresher how can u say the testing is the important at the software industry?
I am in manual testing from last 2 years and want to enter in automation which scripts are need to study to start?
Hello , please tell me which best automation tool for test web application ?
Could you post a detailed write-up on Testing Maturity Model (TMM).
S he article is good in outlisting the SPM stages and QA. Well done.
Hi , this is very nice article about the CMM Level.Really i got good idea about CMM Level, thaks for sharing this..
Processes for people to follow are like laws. 1. there have to be laws in place that are defined. 2. people have to be willing to follow the laws, and 3. there must be enforcement and penalty for not following the laws. Given that, it seems you are putting in place 1. but how to convince people to follow the processes? You say in 3 to put the processes out to a wider audiences through training… but everyone says they are too busy right? then what?
Really fruitful….a good article, but all that i say if some more example make it best….
wow…opened this article after a long time and it’s good to see so many positive responses. I am glad I could put together something which is useful and fruitful.
@Steven (# 16)..well time required is I guess up to us…how fast and how effective we incorporate all these levels in our organization. And as it is said ‘charity begins at home’ so we can take initiative to improve our own day to day work using this stuff…I am sure that will lead to improve overall organization’s standard and processes. Please let all of us know your valuable thoughts on the same.
@George (#20)…Thanks for suggesting me a new topic to write about. I will get information on that and try to put some stuff here.
@isaac L (#23)…yes even I have faced same issue…people normally follow what has been going on since long and it is difficult for them too to adopt a new thing. But we should keep motivating them. Let’s move forward step by step. Such changes do not occur over night. If we are at level 1, target for level 2 for say for a project first, then move to level 3 and so on. We have to develop first acceptance for this change among people. Once they see better results out of it, they will definitely put efforts for this. This I am telling from my personal experience. Please let me know your thoughts on the same.
I have tried to answers all questions here…if in case I have missed any then please let me know. I will share my thoughts for sure.
Thanks you so much all who have recognized my work here. This motivates me to put more information. Thank you all!!!
@ Lalit (#24)…Some thoughts are in my mind to put a generic example so that every body can relate. I will post asap. Thanks!
I think you must first go for QTP (very famous functional testing tool).
Hi I Rachana Panchal wanted to become a QA Auditor. Currently, I am in software company working as Sr. QA. I have 4 + yrs of experience in the software testing and QA processes.
thanks… very helpful for us
can anybody tell me which is the best software training institute in bangalore which also have the placements assistance,email@example.com this is mail id, thanks in advance.
thanks and Regards
Naveen Kumar T S
Dis Is Kumar , I completed my B-tech ECE IN 2008, I am Having 4 yrs Experience in electronic . i resigned my jobs . i want to join in software tesing . i completed testing course both manual and automation in Hyderabad. can i mention my experience in resume or not? please give me suggest.
thanks and regards
Good articles, One thing is missing..how to one QA person can start career or learning CMM and which kind of job he can find after this…
-How to start with CMMI
-From Manual Testing or Automation testing point of view …
– What are the target course
– Which kind of job in market.
Pleaseupdate me one my email address if you add anything liket his.
This is really a good article to understand about CMMI levels. Right now I am working as Configuration Manager in a company from last 4 yrs. I want to change my profile from CM to QA auditor ( I also have 1.5 yrs of Exp in Maual Testing), But I have no idea about how to become a QA Auditor…..! Can you please guide me about the respective certifications and courses i should do to change my profile.
Nice article , showing very simple & easy way to know about CMM.
Thanks for sharing.
Nice article and nice idea ;)
Thanks for your comments, you all motivate me to write more and one more article of mine has been published. Please take a look at it:
Your suggestions are warmly welcome.
Thanks & Regards,
On Level 4, Measuring the process is not audit alone. As per Industry standards we need to come up with Metrics, which is key and critical to measure the project performance. Need to measure the project/product metrics against the Industry specified metrics, to take corrective action. In fact defining and usage of Metrics comes from Level 3 onwards.
How we can implement any one CMM process in project from QA perspective.
Great article and it explains very nicely with examples.
Great article! Simple and practical explanations
One of my dreams growing up was to become an Engineer. I don’t know how I would have survived because it sounds like it takes a lot of efforts. But now i am a proud test engineer. It’s kind of hard for me to keep up with new tools but I could be sure now after reading this article.
Nice Article,very Informative for a Small & Medium Level organisations