Slide 11 of 17
Notes:
XP claims to be a lightweight discipline of software development. It is a specific process instance whereas the CMMI is a model for process improvements. The Software CMM tells what to do in general terms, but does not say how to do it, while XP is a set of best practices that contain fairly specific how-to information an implementation model for a particular kind of environment. In order to implement the full process the user will have to choose or develop the pieces outlined by the CMMI but not currently discussed by the XP process.
CMMI can allow extra steps as long as what is specified in the process model is followed. CMMI not only allows tailoring but also recommends it and assumes it will be necessary for most environments. XP discourages tailoring and warns of "almost XP" syndrome. Encouraging users to embrace the entire process of XP but allowing tailoring where appropriate if the spirit of XP is preserved. Obviously from the examples found the main place the XP process would appear to clash with the CMMI is in the documentation of requirements, design and code. The question that remains to be answered is if the CMMI documentation can be done without losing the spirit of XP.