Tuesday, March 31, 2009

Appraisal work – CMMI

The appraisal process is guided by something called the Method Definition Document (MDD). If you are not familiar with the appraisal process already (which you aren't 'cause you're asking the question), you don't want to try to read this unless you're doing some whacky exercise in self-hypnosis.

The MDD is based on a requirements spec called the Appraisal Requirements for CMMI (ARC). And, reading of that document is strictly forbidden without a prescription or special medical dispensation.

The documents are available for download from SEI's Web site and are actually well-written and really useful if you're a Lead Appraiser or studying to be one, but otherwise it's gonna sound like gibberish. Don't say we didn't warn you.

Just so you understand that the complete answer to this question is ordinarily delivered in 2 days' worth of training. We're obviously limited in what we can explain here.

We're going to pick up the appraisal with the portion of the appraisal that most people think about: the on-site period. It's that period of time when there's an appraisal team at your company and they're looking at your evidence and conducting interviews (or performing some other accepted form of verbal affirmation). It's at the end of this period that a company gets the results of the appraisal and, when all goes well, a rating.

Appraisal Team Members & Process Improvement Consulting

Every Appraisal for a rating is done by a team. The minimum number of people is 4 and that can include the Lead Appraiser. Every person on the team must meet certain individual pre-requisites and contribute to certain team-wide qualifications. It is best if the team's constituents include people from your company as well as outsiders.

At the appraisal, if you don't have (and can't create) qualified people in your company to be on the team, then you will need to bring in outside team members. (Most Lead Appraisers keep these in their back pockets -- kinda.) Outside team members are essentially consultants and charge as such. You're doing well if you can get outside team members for $1000/day. This would be very high-value. And, if you're only charged for a day where 1 day = the date on the calendar, and not 1 day = 8 hours, you're doing VERY well.
If your organization needs to get up to speed on CMMI, you'll probably do one of two things: (1) Look to hire an employee with the expected expertise, or (2) Look to hire a consultant with the expertise.

Which you choose to do depends on your organization's needs. The pros and cons of either approach are a basic matter of business and strategy. Either way, there's a cost. As for consultants, they're a lot like Lead Appraisers. And yes, many Lead Appraisers are also consultants. So, what and how they charge is largely up to them.

Lead Appraiser

The Lead Appraiser will need time to meet with you to plan the appraisal, perform some preliminary evidence review (called "Readiness Review") and then to perform the appraisal.

They also charge for all travel expenses as well as time they spend away from your site to do their preparatory and concluding activities. Also, they will often work by the "book". Meaning, a guidebook exists that assists with planning appraisals. The guide suggests that, based on the scope of the appraisal, appraisals be scheduled for a certain duration and not be condensed into fewer days and longer hours. Lead Appraisers are free to charge whatever they want. not many charge the way SEI does.

Someone will also need to provide Appraisal Team Training to the people you plan to have on the Appraisal Team. This takes 2 days and is usually done by a Lead Appraiser, and best if done by the Lead Appraiser you plan to have doing your appraisal.

Models for Assessment and Baselines

A baseline is a current level of performance. An assessment determines the baseline against the model (goal to be accomplished). In addition to the baseline and the model, the third criterion required for continuous improvement is a method for moving from the current baseline to the desired goal.

The assessment against the model characterizes the current practice within an organization in terms of the capability of the selected processes. The results may be used to drive process improvement activities or process capability determination by analyzing the results in the context of the organization's business needs and identifying strengths, weaknesses, and risks inherent in the processes.
Sequencing of the improvements is determined by the organization, and then assessments are used again to show whether or not performance is being accomplished.

Many organizations put new programs into place without a model, and, as a result, have no means of determining whether performance has changed. The effective use of a model, including determining baselines and regular assessments, can help IT management continually improve effectiveness and efficiency.

Implement CMMI

There's what we call the blunt-object (or silo'd or stove-piped) approach, which is, unfortunately, what seems to be the most common approach. In this approach CMMI is implemented with the grace and finesse of a heavy, blunt object at the end of a long lever -- impacting development organizations and project managers' collective craniums.

And then, there's the reality-based approach. In which, processes are implemented in such a way that project personnel may not even know it's happening. Can you guess which one we advocate?

The blunt-object approach resembles what many process improvement experts call "process silos", or "stove pipes". This approach is also often implemented *to* a development team *by* some external process entity with brute force and very extreme prejudice.

So, not only does the blunt approach employ some very unsavory techniques, subjecting its royal subjects to cruel and unusual process punishment, it also (in its design) is characterized by a "look and feel" of a process where each process is in its own vacuum, without any connection to other processes (or to reality, for that matter), and where the practices of the processes are somehow expected to be performed serially, from one to the next, in the absence of any other project context.

Models for Assessment and Baselines

A baseline is a current level of performance. An assessment determines the baseline against the model (goal to be accomplished). In addition to the baseline and the model, the third criterion required for continuous improvement is a method for moving from the current baseline to the desired goal.

The assessment against the model characterizes the current practice within an organization in terms of the capability of the selected processes. The results may be used to drive process improvement activities or process capability determination by analyzing the results in the context of the organization's business needs and identifying strengths, weaknesses, and risks inherent in the processes.
Sequencing of the improvements is determined by the organization, and then assessments are used again to show whether or not performance is being accomplished.

Many organizations put new programs into place without a model, and, as a result, have no means of determining whether performance has changed. The effective use of a model, including determining baselines and regular assessments, can help IT management continually improve effectiveness and efficiency.

Staged Versus Continuous Models

Staged models - Staged models are comprised of a number of distinct levels of maturity. Each level of maturity is further decomposed into a number of processes that are fixed to that level of maturity.
The processes themselves are staged and serve as foundations for the next process.
Likewise, each level of maturity is the foundation for the next maturity level. The Software Engineering Institute’s Capability Maturity Model is a prime example of a staged model.

Continuous models - In the continuous model, processes are individually improved along a maturity scale independently of each other. For example, the project planning process could be at a much higher capability level than the quality assurance process. ISO/IEC TR 15504 (SPICE) is an example of a continuous model.