CMMI is the de facto standard for process improvement in the software development domain. The CMMI encourages a systematic approach to process improvement. On the other hand, agile software development fosters high customer collaboration, rapid feedback and empowerment of the individual developer. Both approaches have already been proven to be compatible and synergistic. Nevertheless, there is still great debate about CMMI's ability to “be agile” and agile methods capacity to adapt to CMMI requirements without losing agility. In this paper I will present arguments to explain why the debate will linger within the software engineering community for the next couple of years. This paper will discuss de following arguments. First, software engineering as a discipline has not fully embraced the agile principles. As long as there is a need to distinguish between “agile” and “traditional” software engineering, the debate will stay. Secondly, interpretation of the CMMI requirements in the agile context requires thorough training on both the CMMI and the agile concepts. Without this training, a synergistic deployment of both approaches cannot be achieved. Finally, the CMMI appraisers and consultants ecosystem makes it difficult to find the suitable individual to perform an appraisal within an agile context. The right individual is the final key to achieving a CMMI rating within an agile context.
|Specialist publication||Agile Product Management & Software Engineering Excellence|
|Publication status||Published - 2012|
- Software Engineering
- Agile development