Friday July 09, 2004
A CMM For Operations
The Capability Maturity Model (CMM) provides a framework for evaluating the how well equipped a software development organization is deliver high quality software on-time and on-budget. There are five CMM levels, each with distinctive Key Process Areas (KPA). Is there an equivalent for website or service provider operations? I'd sure like to see it as formally explored as the CMM.
CMM level one is adhoc and chaotic, project success is pretty much built on a lot of good luck and heroics from competent individuals. Level five is a self-improving managed development lifecycle. In between there are a bunch of KPAs. Here's the spectrum:
|Key Process Area
|1 - Initial
people and heroics
|2 - Repeatable
|Project management processes
Software Project Planning
Software Project Tracking & Oversight
Software Subcontract Management
Software Quality Assurance
Software Configuration Management
|3 - Defined
|Engineering processes and
|Organization Process Focus
Organization Process Definition
Integrated Software Management
Software Product Engineering
|4 - Managed
|Product and process quality
|Quantitative Process Management
Software Quality Management
|5 - Optimizing
|Continual process improvement
Technology Change Management
Process Change Management
One interesting aspect to the CMM is that it's typically not possible leapfrog to new levels. You can't really jump from level one to level three, getting the level two stuff right first is part of getting to level three.
Web site and service provider operations seem to have a similar spectrum. I don't have the KPAs clarified yet and there are some fundamental differences between operations and development: where software development is a collaborative process of invention, operations is predominantly about production and maintenance. Let's give it a try, we'll call this an Operational Maturity Model:
- Ad hoc
Relies on competent people and heroics for success but maintenance is reactive and interupt-driven. Production is manual and loosely planned. Capacity planning? Hah!
Maintenance is still reactive but production is scripted. Future capacity requirements are reactively assessed.
Maintenance is proactive, standard operating procedures (SOP) are codified and production is automated. Capacity planning is based on qualitative projections.
Maintenance and production is highly automated and metric driven. Trends are studied and capacity planning is based on quantitative projectons. Provisioning has been made for high availability and failover (HA/FO) requirements.
Systems are self healing and deployed redundantly with HA/FO provisioned. Production is automated, proactive and metric drivem. SOPs are metric driven so the time to resolution of system faults are measured and refined.
OK, so this might be a stretch. I don't have a big list of KPAs delineated for ops, I'm kinduva software guy. Further, it may
be possible to leap frog to different OMM levels (unlike CMM). I don't know, until the KPAs are understood, it's tough to say. Big Managed Service Provider (MSP) endeavors like Loudcloud, SiteSmith and Logictier have come and gone (or at least re-invented into something else) and you'd think that there'd be more of an established science to these things by now. It's 2004.
Anyway, here are some things I've checked out or amused myself with here and there on the matter:
Why is this important to me? If ops is always descending into madness because things aren't functioning on a more mature level, guess who has to jump into the fray? Yea.
Looking for more on this...
( Jul 09 2004, 10:58:30 PM PDT )