ソフトウェアエンジニアリングにおける能力成熟度モデル(CMM)
⚡ スマートサマリー
能力成熟度モデル(CMM)は、組織のソフトウェアプロセスの成熟度を測定するために使用されるベンチマークです。ソフトウェアエンジニアリング研究所で開発されたこのモデルは、チームが混沌とした場当たり的な作業から継続的で最適化された改善へと移行するための5つのレベルを定義しています。
CMMとは?
能力成熟度モデル 組織のソフトウェアプロセスの成熟度を測定するためのベンチマークとして使用されます。
CMMは80年代後半にソフトウェアエンジニアリング研究所で開発されました。これは、下請け業者の作業を評価する方法として、米国空軍の資金提供を受けた研究の結果として開発されたものです。tractors。 Later1991年にソフトウェア開発の成熟度を評価するために作成されたCMM-SWモデルを基に、CMM-Iには他の複数のモデルが統合されました。
能力成熟度モデル (CMM) レベルとは?
このモデルでは、段階的な成熟度レベルを5つ定義しています。
- 初期
- 反復可能/管理
- 定義済みの
- 定量的に管理
- 最適化
CMM のさまざまなレベルで何が起こるか?
下の表は、各レベルにおける活動内容と特典をまとめたものです。
| レベル | アクティビティ | 公式サイト限定 |
|---|---|---|
| レベル 1 初期 |
|
なし。プロジェクトは完全なカオスだ。 |
| レベル 2 マネージド |
|
|
| レベル 3 の定義 |
|
|
| レベル 4 定量管理 |
|
|
| レベル 5 の最適化 |
|
|
以下の図は、CMMの各レベルで何が起こるかを視覚的に表したものです。
CMM の実装にはどのくらいの時間がかかりますか?
CMMは、あらゆるソフトウェア開発会社にとって製品の品質を維持するための最も望ましいプロセスですが、その導入には予想よりも少し時間がかかります。
- CMMの導入は一夜にして実現するものではありません。
- それは単なる「事務作業」ではない。
- 導入にかかる一般的な期間は以下のとおりです。
- 3-6ヶ月 -> 準備のため
- 6-12ヶ月 -> 実装用
- 3か月間 -> 評価準備のため
- 12か月間 -> 新しいレベルごとに
三次元測定機の内部構造
CMMの各レベルは、 キープロセスエリアまたはKPAレベル1を除きます。各KPAは、関連する活動の集合を定義しており、それらをまとめて実行することで、ソフトウェア機能の向上に不可欠と考えられる一連の目標を達成します。
CMMの各レベルごとに、KPA(重要業績評価指標)のセットが存在します。例えば、CMMモデル2の場合、KPAは以下のとおりです。
- REQM – 要件管理
- PP – プロジェクト計画
- PMC – プロジェクト監視および管理
- SAM – サプライヤー契約管理
- PPQA – プロセスおよび品質保証
- CM – 構成管理
同様に、他のCMMモデルについても、特定のKPA(重要業績評価指標)が存在します。KPAの実装が効果的で、持続的で、再現性があるかどうかを知るために、以下の基準に基づいてマッピングが行われます。
- 実行へのコミットメント
- 実行する能力
- 実施された活動
- 測定と分析
- 実装の検証
CMM モデルの制限
このモデルにはいくつかの限界もある。
- CMMは、プロセスがどのように実施されるべきかではなく、プロセスが何に取り組むべきかを決定する。
- これは、ソフトウェアプロセス改善のあらゆる可能性を説明するものではありません。
- この書籍はソフトウェアの問題に焦点を当てていますが、戦略的な事業計画、技術の導入、製品ラインの確立、人材管理については考慮していません。
- それは、組織がどのような種類の事業を行うべきかを指示するものではない。
- CMMは、現在危機的状況にあるプロジェクトでは役に立たないでしょう。
CMM を使用する理由
今日、CMMはソフトウェア業界における「お墨付き」のような役割を果たしています。ソフトウェアの品質向上に様々な形で貢献しています。
- これは再現可能な標準プロセスへと導き、結果として物事の進め方を学ぶ時間を短縮する。
- CMMを実践するということは、開発のための標準的なプロトコルを実践することを意味し、それはチームの時間を節約するだけでなく、何をすべきか、何を期待すべきかを明確に把握することにもつながります。
- 品質向上活動は、独立したイベントとしてではなく、プロジェクトとうまく融合している。
- それはプロジェクトとチーム間のコミュニケーション役として機能します。
- CMMの取り組みは常にプロセスの改善を目指しています。




