The success or failure of most software organizations often depends on their ability to deliver products on time and within budget. Thus, they are often compelled to implement sound project management practices as part of their software processes. To assist software organizations in this area, several international organizations and bodies of standardization have published a series of models and standards that may serve as guidelines to improve the software process. These models and standards generally synthesize the available knowledge and experience in the form of structured collections of “good practices” and tools that, if used appropriately, can help software organizations improve their project management capabilities.
For software development organizations in particular, two models stand out: the Software Engineering Institute’s (SEI) Capability Maturity Model Integration (CMMI) and the Project Management Institute’s (PMI® A Guide to the Project Management Body of Knowledge (PMBOK® Guide). Both the CMMI and PMBOK® Guide have evolved over that last decade and lately have emerged as two of the most widely used models for software project management.
The CMMI (Chrissis, Konrad, & Shrum, 2004) is a software quality management model that provides software organizations with a guideline for software process improvement and capability determination. Among its 25 process areas, there are eight that address project management issues.
The PMBOK® Guide 2000 Edition Project Management Institute (2000) describes a collection of 39 generic processes that comprise many practices of the 9 knowledge areas related to project management. The processes are described in terms of a series of inputs, outputs, and proposed tools that can be used to transform the inputs into the outputs. All the processes can be applied to manage software projects.
This paper describes the experience gained by a medium-size financial organization in combining the CMMI and the PMBOK® Guide to establish and maintain a combined software project management methodology that comprises practices from both models. We explain how we designed and implemented the methodology, how the practices proposed in these two models were tailored to the needs and available resources in the organization, and summarize the benefits obtained thus far from its use. The issues discussed in this paper should interest organizations that need to improve their software project management capabilities.