Tuesday, August 19, 2008

Does the Health Care industry use the CMMI?

I have been contemplating the idea of CMMI in the mental health and behavioral healthcare industries. Can you tell me if you know any organizations in these areas employing CMMI? Some in the healthcare industry are involved, correct?

The CMMI is a process model that can be adapted to any industry. Sometimes the model reads a bit like a "software only" model, but with a little context and creativity it is a powerful solution to fill the need of a process framework for any industry that plans, designs, and delivers any type of work product.

The CMMI has broad adoption by the health care industry, often with those that are partnered with the government through Medicare or Medicaid, or with those that deal with Blue Cross Blue Shield, because these are two entities that are starting to require CMMI as a framework for service and product delivery.

We often see large health-insurance providers (I always cringe when people say they are "health care providers" . . . ) adopt the CMMI, sometimes due to government mandate but also for the "right" reasons (performance improvement).

I'm not aware of any examples specific to mental health, but I see no reason why it couldn't be applied in that scenario.

I'd be interested in hearing more about your thoughts as they progress...


Friday, August 15, 2008

Is process experimentation incompatible with the CMMI?

Many companies are gaining benefit from applying the Toyota Production System or Lean Manufacturing and Development. One aspect of TPS encourages experimentation with the process on a small scale to test a hypothesis about possible improvements to the process. If the experiment succeeds, the team changes the process to take advantage of the success.

Is this approach incompatible with CMMI? Does it require documentation of tailoring each time an experiment is run regardless of how large or small?

This is a GREAT question! The short answer is no, of course the CMMI is not incompatible with this idea.

As a matter of fact, there are Process Areas that a specifically designed to address this sort of thing - Organizational Innovation and Deployment (DAR) and Causal Analysis and Resolution (CAR).

These Process Areas employ "Hypothesis Testing" or other SPC techniques to determine if a change should take place, and if the test is "true" then OID is used to pilot, and then deploy, the improved process.

One of the great misunderstanding about the CMMI is that it's a shackle that is placed upon engineering that forces everyone into a single process. ML3, called the "Defined" process level, is entirely dedicated to the OPPOSITE of that notion. Organizations should draw from a SET of standard processes, not a single process, and should "compose" a process for their project based on guidelines (tailoring). If you would like to do "something different" there is no requirement to document the entire thing, but there is a requirement to manage the deviation, and to submit results (lessons learned for instance) back into the process (GP3.2 and IPM SP1.6).

So, maybe I'm contrarian, but I see the CMMI as supporting ultimate flexibility and agility, ESPECIALLY in ML3-5, as opposed to the mythical shackles that so many (and too many "consultants") believe in.


What does "Organization being Appraised" mean in the SEI Maturity Reports?

I’m a big follower of SEI’s Maturity Reports, but I'm confused about the phrase "Based on the total number of employees within the area of the organization that was appraised”. Does this refer to the Organization Unit, or the Organization within which the Organizational Unit operates?

The concept of "Organizational Unit" exists within the Standard CMMI Appraisal Method for Process Improvement or "SCAMPI," the appraisal methodology used to appraise an organization. The "OU" represents the organizational scope of the appraisal itself, not the entire organization.

An OU could be a geographical location ("everyone in Toledo"), a functional organization ("Software development"), a management tree ("everyone reporting to Bill") or some other segmentation.

The OU must be credible and verifiable by the Lead Appraiser. So something like "every project with less than two people" with only one project in the scope would NOT be credible! Don't laugh, there is a famous example of one company, outside of NA, that did this.

Appraisals are conducted against the "OU", so it is technically only the "OU" that is awarded a maturity or capability level, and hence is the foundation of the data that is published by the SEI.

So therefore, the data in the report comes out of the SCAMPI results, which report the size of the OU, not the overall oganization.


Monday, August 11, 2008

What are the ideal qualifications for being a member of an SEPG?

Our company is going for ML3 and we want to know what are the ideal qualifications for being an SEPG member?

Alive would be preferable, but we can tailor that process if you need us to!

But seriously folks . . . .

A Software Engineering Process Group, or SEPG, is usually a group of people that help to define, deploy, and manage a process within an organization. There is an extensive post from last year on this blog that defines all of the different "flavors" of an SEPG, but you get the picture.

When determining *who* should be part of an SEPG, it's helpful to remember that your process should be approached as if it were a product (actual, it IS a product!). So, if you were to develop and deploy a new product who would you want on your team?

The ideal candidates would have product knowledge (engineering and project management), leadership skills (product manager), change management and deployment skills (consultant), communication skills (marketing), and mentoring skills (teacher).

Can you find ideal people who are coding, managing, consulting, marketing, and teaching gurus?

Thankfully there are few of us around! (hey, you said IDEAL candidates didn't you?).

But you CAN be successfull in assembling an SEPG with a few Subject Matter Experts, some managers, some marketing help, and some consulting help, and you could be successful. I would first establish just what you want the SEPG to accomplish, then figure out the skills you need.

I was just teaching a class at a client and I asked them "how many years have you spent to become an proficient engineer?" They answered with their years of experience. I followed that with "how many years have you studied to become a PROCESS engineer?" Most answered "an hour."

How can they hope to be successful? Process Engineering is an entirely different discipline, and just because they are good at coding doesn't mean they'll be equally good at process engineering. The problem is, because they're engineers, they THINK they're good at it. And there is no telling them otherwise!

So choose with care. Good luck!


Saturday, August 9, 2008

Should SAM Apply to internal support groups like QA?

Congratulations on your blog! I visit it often to get the right answers about CMMI. This time, I have a question for you about SAM

We are medium-sized organization that is implementing CMMI ML 2 and we have a QA internal group that support all the project groups for ver & val activities.

Should this organization use SAM to define the services agreements between these two groups?

To SAM or not to SAM - that is the question! This is oft debated in the Lead Appraiser community, because the SEI, in it's wisdom (and I'm not even being sarcastic here) has agreed that SOMETIMES SAM just doesn't apply to an organization and, as such, may be declared Not Applicable for purposes of the appraisal.

Let's separate the appraisal from actual process adoption - which should be pretty close but in practice sometimes is not.

For a SCAMPI ML2 appraisal, the term "supplier" applies to any organization, internal or external, for which you create and maintain agreements for the delivery of products and/or services that are integrated into your products or services.

So, in that scenario, I sometimes see software engineering organizations using SAM to manage the relationship and service-level agreements with the infrastructure (servers and networks) group, or maybe with a testing organization. This makes a lot of sense to do and if you are organized that way, then GREAT! In that scenario SAM could apply to you.

Settled? Not so fast!

Many organizations do NOT run their businesses that way, and, especially for the smaller groups, SAM can be useless overhead and is often declared "NA" if the groups are internal.

Now, I've heard some LA's "declare" (as if they're Zeus) that SAM MUST be applied in this scenario - and this is where I violently disagree with some LA's slave-like adherence to the model (if you hear them say anything like "the SEI makes you . . . " in any way, then run away as fast as you can!).

If this is your scenario, why not just include those groups in the scope of the appraisal, so they would be appraised just like any other part of the organization? This approach more than meets the spirit of the model if you also include them as part of the appraisal scope AND there is no need to create and maintain an entire set of process assets related to SAM.

ahhh! Less work - I love it!

So, in your scenario, the QA group would be interviewed and would need to produce evidence for VAL and VER (and probably some for REQM, PP, and PMC as well).

Of course, all bets are off with a TRUE external organization - say if you decide to contract out your QA to a third party. Then SAM probably would apply to your CMMI effort.

Good luck!


Sunday, August 3, 2008

I was just accepted to the SCAMPI B and C Team Leader Class. Any tips for passing?

I was just accepted into the SCAMPI B/C Team Leader Program and was hoping for some tips for passing the class.

Congratulations on your acceptance! It’s a great class and a great career move on your part.

As far as preparation for the class, a solid understanding of not only the CMMI model itself (including the meaning and purpose of the Generic Practices), but also a solid skill set for conducting appraisals.

For me, the biggest problem I see in our SCAMPI Appraiser community is that, while most have a solid understanding of the model, many don't have the pre-requisite consulting and client management expertise. An Appraisal is a sensitive, expensive, and trying event for a client, and the skilled appraiser will handle their concerns and fears with professionalism and empathy. One must not only be an expert at CMMI, but must also have Engineering and Project Management experience, and be a strong and effective management consultant.

The SCAMPI MDD (available for download from the SEI) is the handbook for appraisals, so read and understand that, but also begin to conceptualize in your mind what an appraisal is like – what the client is feeling and going through, how much it takes out of them, and just what it takes for THEM to conduct an appraisal.

Also try to get your self a copy of the SCAMPI Lead Appraiser Body of Knowledge (SLA-BOK) for review. I participated on the team that developed it and there is quite a bit of information in there.

As for the test, that's up to you. Pay attention in class, read the material, participate, and you'll likely do well. Good luck!


What is the difference between a Capable Process and Stable Process in High Maturity?

Our company is attempting to achieve CMMI ML5, and we would like to know what the difference is between a Capable Process and s Stable Process in High Maturity?

I often get inquiries from organizations that are "going for ML5" and then ask these types of questions. Before I answer it, you may wish to consider that the question itself is an indicator that you might only by "going for ML2 or 3" right now. The CMMI is all about indicators, or feedback concerning your current state, and the question indicates you may not have gone through the prerequisite steps to get to ML5.


While neither term is specifically tied to "high-maturity" it would be difficult to know if you have achieved either a capable OR a stable process without having at least implemented Organizational Process Performance (OPP), as this gives you the information you need to answer the question.

A Capable Process is a process that has achieved it's specified quality and product goals and objectives. A Stable process is one that is operating within specified control limits and without excessive variation. Obviously, statistical process control is required to understand this.

Practically speaking these could be the same thing, or, given the way organizations mature and adapt process over time, they could start out far apart and come closer together over a span of time - often years.

Good luck!