連載
今日からできる“CMMI流”開発効率改善術(2)


“開発のよくある問題”を解決するCMMIの3大メリット

矢部 智/岡本 隆史(NTTデータ)

2012/5/23

前のページ1 2 

メリット2――定量分析による合理的な意志決定

- PR -

 続いて、CMMIの2つ目のメリットを説明しましょう。皆さんは「何だか忙しいんだけど、どこがボトルネックなのか分からない」「バグが出るんだけど、原因がよく分からない」「なぜか進捗が遅れ気味で、今の調子で進めていくと納期に間に合うか分からない」など、「なぜかよく分からないけれど」、このままでは良くない気がしたり、実際にプロジェクトの最後の方になってあたふたするといった経験はありませんか? このような場合、実態を数字で計ると意外とすっきりします。

 例えば「開発コストの低減」を例に考えてみましょう。皆さんの中でも「テストの自動化ツールを導入したんだけど、どれくらい効果があったのかな? 確かにテストにかかる時間は減っているようだが、ツールの購入にもお金が掛かっているし……」といった「よく分からない」事態に遭遇した経験のある人は少なくないと思います。

 このような課題の場合、CMMIでは見える化を重視します。以下の図3は、ウォーターフォール型の開発プロセスについて、フェーズごとのコストを棒グラフで表したイメージ図です。数字で見れば「どこのフェーズに最もコストが掛かっているか」が分かるので、「どこにどんなツールや技術を導入すれば良いか」という優先順位を合理的に決める手掛かりを得ることができます。

図3 定量データに基づき意志決定を行う。図は「開発全体の工数を▲%減らす」という目標を基に、試験フェーズを改善対象に選択した一例

 また、こうした定量的な情報を基に合理的な判断を行い、改善を継続していけば、1つ1つの改善効果は小さくても、それらを積み重ねることにより品質やコストを大きく改善することができます。図4は、われわれが実際にCMMIに取り組んだことで改善できた指標の一例です。

図4 CMMIでは「定量的な情報を基にした合理的な改善」を推奨している。以上は定量的改善の一例

測ったデータがあれば、予測もできる

 こうした測定データは、以上のように「改善効果を最大化する」ことにも使えますが、こうした情報を継続的に把握しておくと、プロジェクトの開始時や途中で「今回は最終的にこのくらいになるはず」という「予測」をすることもできます。

図5 「予測」のイメージ。図はプロジェクト開始時に「プロジェクトの最終コスト」を予測した例

 図5は開発プロセスのフェーズを細かく区切り、「総コストがどうなっていくか」を予測したグラフです。図のように、1種類の予測だけではなく、実績のブレも考慮し、幅を持たせて現実的に予測するのが”CMMI流”です。前もって予測できれば、コスト面でのトラブルが顕在化する前に対策を実施することができ、結果として失敗を避けられる可能性が高くなります。

メリット3――グローバル対応

 3つ目のメリット「グローバル対応」は、「CMMIが世界中で使われている」ことから享受できるメリットです。例えば、オフショア開発を行った際、発注意図がうまく伝わっておらず、期待したものと違うものができて来た、といった経験はないでしょうか? 「国が違うと開発の流儀も違う」というギャップを何とかしたいと思っている方は多いのではないかと思います。

 その点、CMMIはIT業界におけるデファクトスタンダードとして使用されており、世界の共通言語として使うことが可能です。では、世界のどのような地域で、どれくらい使われているのでしょうか。

 米カーネギーメロン大学 ソフトウェアエンジニアリング研究所(SEI)による、「CMMIのレベル達成件数」の報告を見ると、2006年以降では世界76カ国、約5400組織でのCMMI使用実績があります。一番多いのは中国で1866件、2位が米国で1278件、3位がインドで518件、4位がスペインで222件、5位が日本で187件となっています。中国とインドは国を挙げてIT産業に力を入れているので、件数の増加率も高くなっているようです。

図6 世界におけるCMMIの取り組み状況(2006〜2011年)。CMMIレベル達成を報告した組織は76カ国5378組織に上る(「Process Maturity Profile March 2012」より引用)

 特にここ1〜2年は、小規模組織でのCMMI適用数の増加が目立ちます。2012年3月現在、CMMIを使用している全組織数のうち、45%が50名以下、20%が25名以下の組織です。この少人数組織には、アジャイル開発を行っている組織も相当数含まれていると推測できます。

 日本国内では、アジャイル開発でCMMIを適用した話はまだあまり聞かれませんが、海外のWebサイトではそうした情報を数多く見かけます。世界中の1億5000万人ものプロフェッショナルが情報交換やキャリアアップの場として使っているSNS「LinkedIn」では、CMMI関連のグループにおいて、ほぼ毎日のようにディスカッションがなされています。ディスカッションは全て英語ですが、CMMIを知っていると、何となく理解できてしまうのがまた面白いところです。

参考リンク

 「グローバルな共通言語」という観点でもメリットが出てきます。CMMIを知っているだけで、開発に関連するほぼ全ての作業について意思疎通ができるのです。設計分野におけるUMLのように、CMMIは開発プロセス分野の共通言語と言うことができます。

 例えば、以下の図7を見てください。ソフトウェア開発を行っている会社が3社あり、ある成果物について、「成果物スコープ」「要件定義書」「プロダクトバックログ」といったようにそれぞれ異なる言葉で表現していたとします。しかし、CMMIではそれらを総称する「要件管理」という言葉があるため、CMMIを知っていれば、どの会社の開発プロセスも相互に正しく理解することができるのです。

図7 CMMIは“開発プロセスの共通言語”

 なお、CMMIは元は英語版ですが、現在では日本語、中国語、ドイツ語、ポルトガル語など、さまざまな言語に公式訳があるため、必ずしも英語に習熟していなくても使用することができます。

図8 CMMIはグローバル標準語。図中の「REQM」は要件管理(Requirements Management)の略称だが、こうした「CMMIで定められた略称」を使えば、開発プロジェクトにおいてどの言語を使おうと正確な意思疎通ができる

 また、CMMIで使用されている略語などは、どの言語の訳を使っても同じであるため、CMMIを使用していれば、どの国のどの会社のプロセスを見ても、その状況についてだいたいの見当がつくというメリットもあります。現在はグローバルに散在した拠点を連携させた開発も盛んになりつつありますから、このような共通言語による相互理解はますます重要になっていると言えるでしょう。

 今回はCMMIの3大メリットを説明しました。今現在、それなりに効率良く開発できている組織でも、CMMIの考え方を活用すれば1ランク高いパフォーマンスを狙うことが可能です。また、グローバル化が急速に進展する中で、デファクトスタンダードについてある程度知っておくことは、今後のビジネスをスムーズに行う上でもメリットがあると思います

 次回はスクラム開発にCMMIを適用させる場合、どのような部分が重なり、どのような部分が改善に向けたヒントになるのか、具体的に見ていきたいと思います。

参考リンク

筆者プロフィール
矢部 智(やべ さとし)
SEI認定CMMI(SCAMPI)高成熟度リードアプレイザー、SEI認定CMMIインストラクター。日本人資格者としてCMMI V1.2以降で初のレベル4以上のCMMI評定を実施。ソフトウェアプロセス改善全般に取り組み、CMMI評定を中心としたプロセスアセスメント(30回以上)、ソフトウェア開発における定量データの分析、プロセス改善教育、標準プロセスの作成支援などを行っている。
岡本 隆史(おかもと たかし)
認定スクラムマスター。OSSのプロジェクト管理ツールのスクラム対応の強化や、分散バージョン管理の勉強会、執筆を通し、オープンソースで企業が気軽に導入できるプロジェクト管理ツールの開発を進める。業務ではクラウド基盤の研究開発に従事。
■要約■
前回、CMMIとは「開発から管理、組織運営、定量分析まで全てをカバーした“全部入りモデル”」であることと、アジャイルとCMMIなど「各業界標準はお互いに排他的ではなく、重なる部分が多い」ことを紹介した。すなわち、今スクラムを使って開発作業を行っていても、作業を改善するためにCMMIを有効に使うことができる。今回はCMMIの3大メリットを紹介する。

1つは「情報共有」。CMMIでは「情報共有を推進するチーム」のリードに合わせて、各開発チームが作業振り返り結果を共有し、互いにその教訓を生かすことを推奨している。これにより改善の手掛かりが増えるだけではなく、「同じ問題について各チームが個別に悩む必要がなくなる」「誰かが解決策を考えたら、みんながすぐ使える」メリットがある。

2つ目は「定量分析による合理的な意志決定」。例えばウォーターフォール型開発でも、開発フェーズごとのコストを棒グラフで表すなど、CMMIでは課題を定量化し可視化することを推奨している。これによって「どのフェーズに最もコストが掛かっているか」を把握し、「どこにどんなツールや技術を導入すれば良いか」という優先順位を合理的に付けることができる。また、こうした定量データを継続的に把握しておくと、プロジェクトの開始時や途中で「今回は最終的にこのくらいになるはず」という「予測」を立てることも可能だ。

3つ目のメリット「グローバル対応」は、「CMMIが世界中で使われている」ことから享受できるメリット。CMMIは世界の共通言語として使うことが可能。また、CMMIは各開発用語に略称を正確に定義しているため、会社によって開発用語が異なっている場合でも、ともにCMMIを使っていれば、ほぼ全ての開発作業について正確に意思疎通できる。

前のページ1 2 

“開発のよくある問題”を解決するCMMIの3大メリット
  Page1
開発効率を1ランク上に引き上げてくれるCMMI
メリット1――情報共有
CMMIにおける情報共有の仕組み
→ Page2
メリット2――定量分析による合理的な意志決定
測ったデータがあれば、予測もできる
メリット3――グローバル対応


この記事に対するご意見をお寄せください managemail@atmarkit.co.jp

キャリアアップ

@IT Sepcial
@IT Sepcial

「ITmedia マーケティング」新着記事

マーケターの87%がサードパーティーCookie利用規制の影響を実感――イルグルム調査
広告主はWeb広告の効果においてCookieの利用規制の影響を感じているようです。

2021年ホリデーシーズンにおける米国オンライン消費額、サプライチェーン危機にもかかわらず過去最大を更新
「Adobe Digital Economy Index」によると、米国の2021年のホリデーシーズンにおけるオン...

「パーソナライゼーションエンジン」 売れ筋TOP10(2022年1月)
今週は、パーソナライゼーション製品の国内売れ筋TOP10を紹介します。