Global Wind (グローバル・ウインド)

東京都中小企業診断士協会中央支部・国際部

静永 誠

はじめに

CMMI(Capability Maturity Model Integration:能力成熟度モデル統合)は、プロジェクト管理やプロセス管理の能力を段階的にレベル表現できるモデルであり、主にシステム開発の分野で利用されている。中小企業診断士試験でも過去に取り上げられたことがあり、ソフトウェア業の経験者でなくとも、知っている診断士は少なくないだろう。

CMMIでは序文に「組織がそのプロセスを改善することに役立つベストプラクティスを集めたもの」とあり、継続的なプロセス改善のために役立つ実践事項をまとめたものだと説明されている。しかし、米国国防省がベンダーの入札条件として使用した経緯もあり、調達者の委託先評価や、ベンダー側での入札条件への対応など、実際にはプロセス改善と異なる目的で使われることも多い。そのため、CMMI導入企業の担当者には、プロセス改善とは縁遠い、レベル達成のために不要な作業や作成資料を増やすだけのものというイメージを持っている経験者もいるかもしれない。

モデル作成時の本来の趣旨とは異なる取組みや認識がされることも少なくないCMMIだが、モデル利用者からのフィードバック収集や内容の見直しは長年に渡り進められ、現在も続いている。そして、2018年3月、新しいバージョンであるCMMI V2.0がCMMI Instituteよりリリースされた。前回、V1.3が2010年11月にリリースされてから7年以上経過しており、久し振りの大きな更新になる。

本記事では、新バージョンが久し振りにリリースされた機会に、CMMIの概要、歴史を振り返り、新リリースの変更点を2回に分けて、簡単に紹介する。第1回である今回は、CMMIの概要を紹介する。

CMMIの概要

CMMIはV2.0リリースで構成要素に大きな変更が加えられている。しかしながら、V2.0はリリース直後であるため適用事例はまだ存在せず、V2.0対応の各種トレーニングの開催も数少ないため、詳細が明確ではない点も残っている。

そこで本記事では、CMMIの前身であるSoftware CMMから存在し、CMMI V2.0でも通用する基本的な概念である、組織のプロセス成熟度の考え方を中心に説明する。

組織のプロセス成熟度

CMMIでは、プロジェクト管理の能力を中心に、組織のプロセスの発展段階を5段階の成熟度レベルでモデル化している。

成熟度レベルが最も低い段階は、プロジェクト管理の基礎が実践されず、プロジェクトの成功は個人の能力や英雄的活躍に依存する状態とされている。成熟度レベルが上がると、まずはプロジェクト計画や進捗管理といったプロジェクト管理の基礎が実践される段階となる。さらにレベルが上がると、組織で標準的なプロジェクト管理手法などが定義・展開され、さらに統計的手法を用いた定量的な品質管理や継続的なプロセス改善が実践される段階へと発展していく。CMMIは、このような組織全体に渡る継続的な改善へと進むうえでの、段階的な改善経路を提供したモデルになっている。

CMMIの成熟度レベルをまとめると、表1のようになる。

表 1 成熟度レベルの概要

レベル 成熟度の段階 概要
1 初期 このレベルの組織での成功は、個人の力量や英雄的行為に依存していて、実績のあるプロセス(やり方、段取りなど)に依存していない。

プロセスは場当たり的で無秩序である。このような組織では、機能する製品やサービスを提供できても、予算およびスケジュールを超過することが多い。

2 管理された このレベルでは、基本的なプロジェクト管理の方針とその履行手順が確立されている。

プロジェクトでは計画が作られ、計画に沿って、必要なスキルを持つ要員が確保され、進捗などの監視や成果物のレビューなどが計画通り実施される。重圧がかかっている状況下でも必要な作業が省略されずに実施される。

3 定義された このレベルでは、組織で標準プロセスが確立され、標準的なプロセス、手順、ツールなどが定義される。プロジェクトは組織の標準プロセスを基にして計画を作成し、実施する。

レベル2では、計画・実施されるプロセスはプロジェクト毎に大きく異なる固有のものでありえるが、レベル3では、組織の標準プロセスの沿ったものになる。従って、異なるプロジェクトとの間でも、レベル3ではプロセスに首尾一貫性があり、プロジェクトの知見・経験を組織内でより学習・活用しやすくなる。

4 定量的に管理された このレベルでは、組織およびプロジェクトで、成果物の品質やプロセスの実績に対して定量的目標が確立され、統計的に理解され管理される。

レベル3までの測定や定量データを使った管理は主に計画と実績との比較に焦点をあてるが、レベル4では過去のプロジェクト実績などを利用して統計的に解析し、管理図などを用いてプロセスに問題が起きてないかを分析する。

5 最適化している このレベルでは、統計的な理解を用いて、プロセスを継続的に改善する。

レベル2~4を通じて統計的にも安定したプロセスに対し、レベル5では根本原因分析などによりプロセスの変動要因と共通要因とを識別しながら、欠陥予防などを意図したプロセス改善を継続的に実施する。

CMMIの各成熟度レベルは、次のレベルを達成するために必要な基盤を形成するものであり、組織が優れたプロセス管理の文化を確立するために進化する過程で通過するレベルを示すものとされている。従って、あるレベルを達成しようとするとき、レベルを飛び越すことは反生産的と考えられている。

例えば、レベル1の組織が、レベル2を確立する前にレベル3を実装しようとすると、プロジェクトマネージャがスケジュールおよびコストの圧力によって押しつぶされてしまうため、通常は失敗に終わってしまう。レベル3のように、組織の標準プロセスをエンジニアリングまで含めて定義し実装するときは、レベル2にある管理の規律が実装されていないと、現場ではコストやスケジュールなどの圧力のために標準への対応が犠牲にされることが多い。

図1~3は、成熟度レベル1からレベル3までのプロセスの変化を簡単に示している。

20180705_1

図 1 成熟度レベル1のプロセス

成熟度レベル1では、最終的に必要な作業が実施されることは多いが、進め方や進捗などに対する可視性は、管理者からは非常に限定されている状態である。活動のステージ分けが貧弱に定義されているため、プロジェクトの進捗と活動の状況を確立することは管理者にとって非常に難しい。

20180705_2

図 2 成熟度レベル2のプロセス

成熟度レベル2では、手順などプロジェクトのやり方は計画や手順書などで明らかにされ、作成する主要な成果物はテンプレートなどにより必要項目などが明らかにされている。さらに計画やテンプレートなどに沿って、基本的なプロジェクト管理が実施されている。このレベルになると、活動のステージ分けが明らかになり、管理者は各ステージでプロセスや成果物が期待通りに実装されているかチェックすることができる。

20180705_3

図 3 成熟度レベル3のプロセス

成熟度レベル3では、プロジェクトが組織の標準プロセスに基づいて計画を作成し、プロジェクト管理やエンジニアリングを実施する。このレベルになると、組織は標準プロセスに基づいて実施される様々なプロジェクトの知見を蓄積し学習できるようになるため、管理者は類似プロジェクトの知見から先を見越したリスク対策なども可能になる。

 

成熟度レベル向上の期待効果

CMMIの成熟度レベル1の組織では多くの場合、品質・スケジュール・コストなどの達成結果について、プロジェクトにより大きなばらつきが見られる。組織のプロセス成熟度が向上するにつれて、狙った目標に合わせるうえで、以下のような改善効果が期待できる。

第一に、プロジェクトおよび各種作業の品質・スケジュールなどに対する予測能力の向上があげられる。例えば、同じサイズのプロジェクト10件が5月1日を納品予定としていたとき、平均のプロジェクト納品日はプロセス成熟度が高いほど5月1日に近づく。レベル1の組織では、当初予定していた納期を大幅に外すことが少なくない一方で、レベル5の組織はかなりの正確性で納期に合わせることが期待できるようになる。

さらに、成熟度レベルが高くなると、目標を中心として実績の変動が減少することが期待できる。例えば、レベル1の組織では、同じサイズのプロジェクトでも納期予想が難しく、変動範囲も大きいことが多い。一方でレベル5の組織では、より小さい変動範囲で納品されることが期待できるようになる。

最後に、成熟度レベルが高まるにつれ、目標自体の改善が期待できる。成熟度レベルが向上し最終的に継続的な改善が実施される組織になれば、コスト削減、工期短縮、生産性向上などのために確実なプロセス改善策の導入が期待できる。その結果、不具合や手戻りの削減による品質・コストなどの継続的な改善が期待できる。

成熟度レベル向上と期待効果の関係を図4に示す。

20180705_4

 

図 4 成熟度レベル毎のプロセス能力

図中のグラフでは、縦軸はプロジェクトがどのような結果を残すかの確率を示し、横軸は時間(スケジュール)、コストなどの目標および実績を示す。成熟度レベルが向上することで、目標に対する実績の予測能力や制御能力(ばらつきの抑制能力)が向上していくことが見てとれる。

今回のまとめ

今回の記事はCMMIの概要について、組織の成熟度レベルを中心に紹介した。CMMIの成熟度レベルは、組織が優れたプロセス管理の文化を確立するために進化する過程で通過する段階を示す。成熟度レベルの向上により組織は、品質・スケジュールなどに対する予測能力の向上、目標に対する実績の変動の減少、目標事態の改善が期待できる。各成熟度レベルは、次のレベルを達成するために必要な基盤を形成する。

次回の記事では、CMMIの歴史と新バージョンでの変更点を紹介する。

参考資料

  • CMMI Product Team, “CMMI for Development, Version 1.3 CMMI-DEV, V1.3 CMU/SEI-2010-TR-033 ESC-TR-2010-033,” Software Engineering Institute, Carnegie Mellon University, 2010
  • CMMI 成果物チーム、「開発のためのCMMI® 1.3版 CMMI-DEV, V1.3 CMU/SEI-2010-TR-033 ESC-TR-2010-033 より良い製品とサービスを開発するためのプロセス改善」、カーネギー・メロン大学ソフトウェア工学研究所、2010年
  • Mark C. Paulk, Bill Curtis, Mary Beth Chrissis, Charles V. Weber, “Capability Maturity ModelSM for Software Version 1.2 Technical Report CMU/SEI-93-TR-024,” Software Engineering Institute, Carnegie Mellon University, 1993.
  • Mark C. Paulk他著、「能力成熟度モデルのキープラクティス 1.1版 技術報告書 1993年2月、CMU/SEI-93-TR-25、ESC-TR-93-178」、ソフトウェアエンジニアリング研究所、カーネギーメロン大学、1993年

 

Capability Maturity Model、CMM、 CMMI は、Carnegie Mellon大学によって米国特許商標庁に登録されている。

SEIは、Carnegie Mellon大学の商標。

 

プロフィール:

静永 誠

大手メーカー系・独立系ソフトウェアハウスで開発工程全般の実務を経験した後、ソフトウェア開発プロセスのアセスメント資格と中小企業診断士を取得。航空宇宙業界や自動車業界で、プロセスアセスメントやソフトウェアプロセス改善のコンサルティングを担当した後、他業種のSIベンダーのプロセス改善支援にも活動を広げている。