A Roadmap to Better Development Part II

 
Apr 13, 2010

Applying the Maturity Model

by Mark Phillips, Lead Spokesperson, Vertabase Project Management Software

This is the second part of a two-part article on improving your development process using Capability Maturity Model Integration (CMMI). In the first part, I gave some background on CMMI and described the five maturity levels. In Part Two, we'll focus on:

  • applying CMMI to your development process,
  • recommending tools and techniques to optimize your work product at each level and
  • using the model like a map to guide project management and process improvement.

As a reminder, here are the five maturity levels:

  1. Initial
  2. Managed
  3. Defined
  4. Quantitatively Managed
  5. Optimizing

Here is a graphical representation of them (courtesy of NASA):

Characteristics of the Capability Maturity Model (Image Source: Wikipedia)

At each level, specific tools and practices lend themselves to helping organizations deliver the products and services they provide. In the sections below, I provide a breakdown of these tools and practices. Since most organizations fall somewhere in the first three levels, I've gone into more detail on these, particularly on level two, then used a broader brush for levels four and five.

At level one, the task is the basic unit of the organization.

Level one organizations have a great need for task lists, to-do lists, general calendars and easy ways for people to collaborate and coordinate activities with each other with minimal structure. Measurement at level one, if any, is time or expense tracking for invoicing rather than as a metric used to meet the organization's goals. Resource allocation means scheduling new work or determining what work needs to be pushed off if someone becomes unavailable to do a task.

At level two, the project is the basic unit of the organization.

Needs at level two center around project management software tools. Organizations at this level require greater structure around a project and the delivery of the organization's products or services. This level therefore includes adding items like start and end dates, project schedules and change request processes to projects. Roles need tighter definition in a level two organization.

Level two organizations implement time tracking tools or ways to track and measure budgets. The goal now becomes measuring how well their projects produce deliverables that meet the organization's goals. Reports across projects are needed and used to track the metrics relevant to the organization's success. Whereas at level one, resource allocation was a matter of scheduling or finding open slots to do more work, at level two, resource allocation and utilization measurements help optimize utilization.

In a level one organization, project managers serve as traffic managers who aim to keep projects moving, keep people up to date and make sure everyone's feedback is accounted for. A level two organization begins to view project management as a strategic function that provides meaningful data of the delivery of products or services and then as a source of knowledge on how to deliver those products or services more effectively.

In this context, being more effective means any goal that helps the organization achieve its overall mission. This could mean more profit (lower cost with the same revenue), higher revenue, higher customer satisfaction, lower defects, less rework, more repeat business or higher uptime. For a non-profit organization it can mean greater community involvement or awareness of a cause. CMMI doesn't specify the goal, only its importance in determining the efficacy of your process.

Formal project management (level two and higher) defines a process, creates a project plan, executes that process or plan, and modifies the plan as necessary, keeping people informed of changes, receiving updates on tasks, and people's requests for changes to the project plan. It is a matter of communicating a plan, receiving team members' statuses on implementing that plan and keeping everyone on the same page. It is about tracking specific metrics on a project so you can improve the plan next go-around. It is about creating specific categories which can be tracked and compared across projects so you can measure progress on overall portfolio or project goals. It is about projects and plans and how far projects and people are advancing. Formal project management is more strategic than level one's looser, more informal style.

At level three, cross-project reports are the basic unit of the organization.

At the third level, reporting of success metrics becomes the key indicator of project performance and therefore of the efficacy of a particular process or standard. The success metric is whatever the organization uses to measure the success of a project (using our definition of effective in the section on level two above). It is the yardstick used to gauge whether a project met its objectives or not. The objectives, in this case, are more than the specific deliverable or the completion of the project. The objective is to meet the organization's goals. Examples of goals are things like increasing customer satisfaction, raising profitability, and launching a new product. For example, in a level three organization, the success of the project may be measured against how far it advances the organization in increasing customer satisfaction.

Each metric is still separate and specific to the particular product or service. The concept of a portfolio starts to become relevant at this level, to help compare the metrics and performance of like projects, but still does not uniformly measure against the overall goals of the company. That is, each portfolio compares the projects it contains, each one a benchmark against the other.

At level four and five, decision-making moves from subject matter experts to project management or process management leaders.

At level four, you start to see greater uniformity of the metrics across portfolios. Then at level five it becomes necessary to implement methods and tools to directly compare how each portfolio and even all portfolios are attaining the organization's success goals. Decisions at a portfolio of portfolio (or scrum of scrum) level determine which efforts should get more funding, which need to be stopped and the like, then trickle down to the project level and from there to an individual's task level, affecting the resources and budgets available for projects and even the specific tasks someone does every day.

Conclusion

CMMI is a map, a model describing reality. The goal is to provide a framework for you to deliver the products or services you provide in a better way — whatever better means in your organization.

As one moves through maturity levels, project management starts out as a tactical function but quickly moves to a more strategic role. Keep this important distinction in mind when hiring for project management roles or when communicating your process to clients. Make sure the person you are hiring has the skills that match your level. In communicating to a client, be clear on the role you expect them to play and on what types of data they can expect from your process. In some cases, the client will drive your organization to make project management more strategic and the information more quantitative.

Further, in more mature organizations, consistent performance and good decision-making have more value than heroics. Performance means meeting specific and defined goals. Decision-making is informed by useful and relevant information. The quality of a decision is measured by how well the outcome helps the organization meet its goals.

When you are looking to improve the way you do things, CMMI helps you discover what type of approach to take, so that you can get people involved appropriately and select the proper project management tools to get the job done. CMMI provides a guidepost and description of where your organization might be in terms of the way it delivers goods and services. As such, it can help you find the right tools, adopt the right techniques, hire the right people and make the decisions you need to to deliver the best output you can at the level at which you operate right now. Further, by describing the next level up from you, it helps you see what it will take to improve, so that when it's time to make a jump in your output or in your process, you can move towards your goal. And even a description of a level below can help you see where gaps might exist in your current processes that could be holding you back from reaching your goals (since each level builds on the next).

The bottom line is that how you produce something affects the quality of what you produce. There is a deep body of knowledge of how things are produced and the effect that has on quality, and CMMI is one way of describing that body of knowledge. It maps out how different organizations produce, ranging from using task management to get things done all the way up to using portfolio management to manage general corporate initiatives. In this article, I have shown how to use the CMMI to locate where you are on the map. By knowing where you are, you can use the CMMI's body of knowledge to improve how you do things and, therefore, the work you produce.


Mark Phillips is the product manager and lead spokesperson at Vertabase project management software. Vertabase makes the world's leading ColdFusion based project management software. Mark has been the project manager and creative lead on numerous web-based and rich internet applications. He has presented to ColdFusion and Adobe User Groups in the U.S. and Canada on software design, usability, project and time management. He most recently spoke at CFUnited 2009 on project management. He hosted a Birds of the Feather Session at Adobe MAX 2008 on CFML Language Development.


Add a Comment
(If you subscribe, any new posts to this thread will be sent to your email address.)
  
Privacy | FAQ | Site Map | About | Guidelines | Contact | Advertising | What is ColdFusion?
House of Fusion | ColdFusion Jobs | Blog of Fusion | AHP Hosting