特集
» 2005年12月20日 00時00分 公開

始めよう、組み込み開発プロセス改善:CMM/CMMI導入・成功と失敗の分かれ目 (1/3)

組み込み分野でもCMM/CMMIに取り組む会社が増えている一方で、「組み込みに合わない」という声も聞かれる。その実態は?

[石田 己津人,@IT MONOist]

水面下で増えるCMMIへの取り組み

 デジタル家電や携帯電話に代表されるように、組み込み機器の高機能に伴って組み込みソフトウェアには高いレベルのQCD(品質・コスト・納期)が求められている。業界全体で従来手法を見直し、新しい手法を導入しなければ、組み込みソフトウェア開発は今後、立ち行かなくなるという危機感はかなり強い。それに伴い、ソフトウェア開発プロセスを評価・改善する手法として「CMM/CMMI(capability maturity model/capability maturity model Integrated)」が注目されてきた。

 経済産業省がまとめた「2005年版組込みソフトウェア産業実態調査報告書」によれば、「品質管理として採用している方法」という問いに対し、回答事業部門の約3割が「CMMに準拠した標準的な管理プロセス」と答えている。CMM/CMMIと同じく国際標準的な手法で採用率が7割を超えるISO 9000シリーズの半分以下だが、「品質管理の方法としての重要度」という問いでは、逆にISOを上回る評価を得ている(グラフ1、2)。


組込みソフトウェアの品質管理として採用している方法 グラフ1 組込みソフトウェアの品質管理として採用している方法(出典:2005年版組込みソフトウェア産業実態調査報告書)

品質管理の方法としての重要度 グラフ2 品質管理の方法としての重要度(出典:2005年版組込みソフトウェア産業実態調査報告書)

 実際、CMM/CMMIに取り組む企業は多いようだ。例えば、日立ソフトウェアエンジニアリング(以下、日立ソフト)は、産業システム事業部がCMMIで最高位となるレベル5の評定を受け(ほかの部門はレベル3)、他社に対するCMMIアプレイザル(評定)支援を事業化しているが、「コンサルを手掛けている案件の半分は組み込み系。引き合いは増えている。われわれも体制強化を検討している」(技術開発本部プロセス改善技術センタ チーフコンサルタント 臼井孝雄氏)という。

 確かに、エンタープライズ系のようにCMM/CMMIのレベルを公表している組み込み系の開発会社は多くない。ただ、CMM/CMMIに取り組む本来の目的はプロセス改善である。機器メーカーがソフトウェアを自社開発することが多い組み込み系では、CMM/CMMIに取り組んでいたとしても、必ずしも公式評定を受けて対外的に公表する必要はないという考え方も強い。

 組み込みコンサルティングを手掛ける豆蔵 ES事業部で主幹コンサルタントを務める濱野隆芳氏はこう話す。「われわれの顧客の中で、評定まで受けるのは1割もない。CMMIに沿って実際に中身が改善できればよいという意識が強い。それと現状では、(取り組みの歴史が浅いので)それほどレベルが高くなく、評定を受けて公表しても、それほど意味がないと考える傾向がある」。

 レベルを公表するケースは多くないとしても、水面下ではCMM/CMMIの考え方を取り入れてプロセス改善に取り組む組み込み系の開発会社は少なくないのかもしれない。


CMM/CMMIのフレームワーク

 ここで一応、CMM/CMMIの概要を説明しておこう。知っている方は読み飛ばしてもらっても構わない。

 CMM/CMMIは、米カーネギーメロン大学が設立したSEI(ソフトウェア工学研究所)が、米国防省の依頼によりソフトウェア開発プロセスを評価・改善するためのガイドラインとして策定したものである。米政府機関が行う公共入札では、CMM/CMMIの公式評定が入札参加の要件となり、それが民間企業同士の取引や国際取引にも発展し、国際標準的な位置付けとなってきた。日本でも90年代後半からエンタープライズ系で評定を受けるSIerが急増した。

 これまではソフトウェア開発に特化したCMM(正式にはSW-CMM)がメインだったが、最近はハードウェアも含めたシステム開発や機器開発も包含してプロセス改善を目指す統合版のCMMIが主流となっている。SEIは2005年でCMMのサポートを終了、CMMはCMMIに吸収される。ということで、ここではCMMIのフレームワークを説明する(記事中の表記も以下はCMMIに統一する)。まず、全体像を図1に示す。

CMMIの体系 図1 CMMIの体系

 CMMIでは、プロセス成熟度を5段階に分ける。

レベル1(初期段階)
場当たり的な状態で、決まったプロセスがない
レベル2(反復可能な段階)
初歩的管理は行われており、同じようなプロジェクトなら反復できるプロセスがある
レベル3(定義された段階)
組織的に定義された標準プロセスがある
レベル4(管理された段階)
プロセス・製品の精度、品質を管理し、定量的な分析が行われている状態
レベル5(最適化された段階)
プロセス分析からのフィードバックにより、改善が継続的に行われている

 レベル2からレベル3へ上がる際に、個別プロジェクトから吸い上げたプロセスから組織の標準プロセスを定義。それ以降は、標準プロセスを加工・修正しながら個別プロジェクトに落とし込んで実行する。加工・修正も無軌道に行うのではなく、「テーラーリングガイド」と呼ぶ統一基準を設け、統制を保つ。そしてプロセスの実行結果を分析し、標準プロセスの精度を高めていくという流れだ。日立ソフトの臼井氏は「顧客や対象業務がバラバラなエンタープライズ系は、組織の標準プロセスやテーラーリングガイドを作るのに苦労するが、組み込み系は(評定する単位となる)事業部ごとに製品分野が決まっており、標準化しやすい」と指摘する。

CMMIの各レベルと対応するプロセスエリア 図2 CMMIの各レベルと対応するプロセスエリア/注:システムエンジニアリング、ソフトウェア分野のみ

 図2に示したとおり、レベルごとにクリアすべき「プロセスエリア」が決められている。例えば、レベル2なら「要求管理」「プロジェクト計画策定」など7つのプロセスエリアがある。そして、プロセスエリアごとに達成すべき「固有ゴール」と、各レベルの全プロセスエリアで共通して掲げられる「共通ゴール」が定められている。さらに、各ゴールには行動指針となる「プラクティス」が複数対応する。つまり、

プロセスエリア→ゴール→プラクティス

の順に“やるべきこと”を細分化していくわけで、レベル3になるとプラクティスの合計は300以上になる。

 実際の改善活動には「IDEALモデル」と呼ぶSEI独自のPDCA(計画・実行・評価・改善)サイクルを用いる。豆蔵の濱野氏は「IDEALモデルは、一般のPDCAサイクルに比べてフェージングがはっきりしている。各ゲートで関係者の判断がしっかりと入り、あいまいさが排除される」と話す。公式評定を受けるには、SEI認定のリードアプレイザ(主任評定者)に審査を行ってもらう必要がある。


       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.