Implementing Six Sigma and CMMI within an Agile Framework
The reality of undertaking a business process improvement drive is a pix and mix approach to adoption of both improvement strategies and methodologies along with their associated processes, those necessary to achieve the desired outcome. In terms of Six Sigma and CMMI, there is no need to choose between the two, since they have different strengths, weaknesses and purposes therefore complement each other. Whatever the reason for your business improvement drive, whether it be the result of a failed product launch or the loss of a big client, it is important that from the outset that the chosen improvement approaches are integrated / unified. Although this is universally true no matter the framework chosen, this particular article is about the integration of CMMI and Six Sigma improvement efforts within an Agile environment and how codeBeamer ALM further enhances this potent combination.
Why use both Six Sigma and CMMI?
To understand why both Six Sigma and CMMI should be adopted, each must be understood separately, however both are too complex to explain in detail within a single article. Below is a short overview that should make it clear as to why both methodologies should be used.
Six Sigma: Improvement of all Business Life Cycles
The Six Sigma of today is a data driven, statistical improvement initiative that has evolved from focusing on improvement of manufacturing processes to improvement of all business life cycles. It is based on the simple philosophy of improving customer satisfaction through the prevention and elimination of defects and bugs from the customers perspective. Defects are a roadblock to customer satisfaction and ultimately an inhibitor of business profitability. The end goal of Six Sigma is to improve business profitability by making the customer happy.
Various frameworks have evolved that encompass the core Six Sigma thinking. The most commonly used include DMAIC (Define, Analyze, Improve Control), DFSS (Design for Six Sigma), and Lean2. What they all have in common is that the adoption leads the adopter through a data led journey of discovery with a focus on goals and processes with the aim to improve performance at every level and thereby improve business profitability.
Much of Six Sigma drive towards improvement feels like Agile Continuous improvement but focused on the less lofty goal of profitability rather than the quality of software (keep management and business stakeholders happy). However, Six Sigma and Agile Methodology can be used together.
CMMI: Process Improvement, Compliance and Software Development
The drive to adopt CMMI or to increase CMMI level is typically a business technical requirement to compete and bid upon certain contracts, the lack thereof or the required CMMI level typically excludes businesses from competing simply because, without it they cannot show that they comply with industry standards. This is typically part of a supplier vetting process designed to exclude the undesirable. In this case CMMI acts as a stamp of approval that engenders trust that the applicant supplier can-do-what-they-say-they-can.
CMMI incorporates 4 areas of alike activities or groups of process activities, these are:-
- Process management
- Project management
There are 5 CMMI levels 1-5 with 5 being the most difficult and costly to implement and maintain. The higher the level obtained the lower the risk of working with the qualifying supplier. Typically level 5 CMMI (highest level) is obtained by businesses to show that they can perform at that level when they need to, rather than that they always do it. It is implemented on a small scale and operated for only as long as necessary to get the level 5 certification. This is because it is just to costly to operate at level 5 and remain profitable for extended periods of time.
For small to medium sized businesses CMMI level 2 (managed process level) compliance is typically the end goal and approximately 70% of small business can achieve this. CMMI is geared towards the software development industry, which is increasingly important for manufacturers as they are more and more reliant on embedded software development teams and embedded software to define new product features and to set themselves apart from their competitors. The formal method used to evaluate an organizations performance is the Standard CMMI Appraisal method for Process Improvement (SCAMPI).
Agile Methodology vs. Six Sigma
In many ways Six Sigma feels like Agile Methodology, and the continuous improvement of Kanban, however while Agile is more focused on software development, (Software Development Methodology), Six Sigma is specifically a process improvement methodology not focused on software development alone.
Six Sigma is therefore useful for measuring and optimizing business for profitability and is of an entirely different purpose to Agile, with a different end goal. That being said Agile itself has expanded its role beyond software development (ie DevOps) and is now used for all manner of purposes where changing circumstances are highly likely. Consequently, the tools for managing Agile (specifically codeBeamer ALM Software) has adapted to be of use in all manner of industries and purposes, outside of the realm of software development. The features and scope of codeBeamer ALM software are therefore of great use for Six Sigma framework implementation. Indeed many organizations using Agile also use Six Sigma. Likewise Agile practitioners using our own codeBeamer ALM also often require CMMI level 2 utilizing codeBeamers ALM features to implement it.
With codeBeamer ALM you can not only adopt and practice any Agile Development Framework or Agile Variant along with a Six Sigma framework as well as CMMI. Of particular note for Six Sigma adopters, – through codeBeamer ALM’s Soap API and BPMS (Business Process Management System) all manner of external software can be integrated including PLM (Product lifecycle management software).
For CMMI adoption we have created a simple matrix to demonstrate and implement CMMI within the Agile model, aligning our codeBeamer ALM feature set to CMMI requirements to simplify the whole task.
Download our CMMI brochure for Achieving Capability Maturity Model Integration (CMMI) – Maturity level 2 to understand the Value of codeBeamer ALM Software for CMMI.