ISO/IEC 15504

ISO/IEC 15504は、ソフトウェア開発を中心とした工程の評価の枠組みであり、国際標準化機構(ISO)と国際電気標準会議(IEC)の合同技術委員会が策定した。原案作成に寄与したプロジェクト名にちなんでSPICE(Software Process Improvement and Capability dEtermination)という愛称で関係者が呼んでいることがある。
ISO/IEC 15504 は，世の中に存在するプロセス診断のモデルや方法についての枠組み（フレームワーク）であって特定のモデルだけに適用できる標準規格ではない。その主題は組織の運営能力と作業（プロセス）定義構造に基づいた診断(アセスメント）である。ISO/IEC 15504は 、完結した方法論を網羅せず，いろいろな方法論の共通部分だけを規定している。例示としてのモデルの一つ第5部(Part5)は、ソフトウェア事業（プロジェクト）で発生しうる活動の枠組みであるソフトウェアライフサイクルプロセス(ISO/IEC 12207: JIS X 0160)に対して、やっていてよかった指標（プラクティス）を示している。第6部(Part6)は、システムライフサイクルプロセス(ISO/IEC 15288: JIS X 0170)に対するモデルである。モデルに記載していることはやっていてよかったという過去の知見である。実施すべきものとしているわけではない。作業生産物(work product)も例である。紙であることを明示しているものは少ない。ISO/IEC 15504 は診断員(assessor)が対象の入力と出力に関して診断の前から分かっていること、面談の結果や証拠を分類し、作業の能力を判定する。診断のやり方は調達を目的として外部から観察する方法と、改善を目的として内部で作業をしている人が判断する方法がある。
1997年発行のISO/IEC 15504 のTR（技術レポート）は9つの部分に分かれていた。2003年以降に発行の現在の国際規格(IS)は5部構成である。第1部(part1)は概念の解説であり、枠組みの概要がわかるようになっている。ISO/IEC 15504の策定にあたっては、作業標準は文化依存の可能性があるため、英語を母語とする人とそうでない人の組合わせでエディタを複数置くことにした。
- part1 日本(伏見諭)、南アフリカ
- part2 日本（小川清）、イギリス
- part3 アメリカ、イタリア
- part4 イギリス、イスラエル
- part5 フランス、フィンランド
その後，
- part6 日本（小川清），イギリス
- part7 日本（岡崎靖子），アメリカ
- part8 ルクセンブルク
- part9 日本（小川清），スイス
- part10 ドイツ
1998年に発行されたISO/IEC 15504のTRは「参照モデル」を含んでいた。参照モデルは「プロセス次元; process dimension」と「能力次元; capability dimension」を定義したものである。現在では、ISO/IEC 12207, ISO/IEC 15288などの任意の「プロセス次元」を参照モデルとして利用することが可能な定義の「能力次元」だけを第2部に含んでいる。
「プロセス次元」はpart5では作業(process)を以下の5種類に分類したものである:
ISO/IEC 15504 TR part6として、ISO/IEC 15288の枠組みでの診断モデル例を発行している。
各プロセスについて、「能力水準」を以下のように定義している:
プロセスの能力はプロセスの属性を用いて測定する。次の9つの属性を定義している（番号 X.Y の X は上述のプロセスのレベルに対応する）:
各プロセス属性を4段階(N-P-L-F)で評価する。4段階評価は百分率表示をした場合の値を示している。:
ISO/IEC 15504 は診断実施のガイドを含んでいる。
診断実施については、技術レポート(TR)段階のpart3およびpart4で記述していた。TR part3は規範的な内容で、TR part4 はTR Part3 の要求を満たすための手引きとなっている。現在、国際規格(IS)では手引きはPart3になっている。
診断モデルとは、実際の診断に使用する詳細なモデルである。診断モデルは参照モデルとの対応づけを作ることになっている。技術レポート(TR)のpart5、国際規格のPart5では診断モデルの例を示している。他のモデルを使用して診断してもよい。
「アセッサ; assessor」には以下のような技能(skill)が必要である:
診断員の能力に関することは1998年発行のTR part 6で記述していた。
一部の内容を除いて国際規格では任意に決めればよいとして詳細は削除している。
ISO/IEC 15504 は以下の2つの場合に使う:
ISO/IEC 15504 は技術部門（組織）のプロセス改善に利用する。プロセス改善は難しく、失敗することが多いため、最初に現状を正しく把握することが重要であり、改善プロジェクト実施後に再度評価する。ISO/IEC 15504 は組織の各段階の能力の診断標準を提供する。特にISO/IEC 15504の参照の枠組みは、目標定義の構造を提供し、その目的を達成するためのプログラム策定を助ける[1]。
プロセス改善については、技術報告のpart7で記述していた。国際規格ではpart4に若干の記述があるにとどまっている。
ソフトウェア開発のアウトソーシングを検討している組織は業者の能力をよく知る必要がある。ISO/IEC 15504 は業者選定に使うこともできる。ISO/IEC 15504 は業者を診断するための枠組みを提供し、それを使ってその組織自身が診断することもあれば、第三者の診断員が診断することもある。
組織は必要性に応じて業者の「能力目標」を設定し、それに照らして業者の診断を行う。これは、費用対効果（コストパフォーマンス）を求める組織では重要である。また、業者側にとっても自分たちの能力と顧客の求める能力のギャップを知るよい機会でもある。能力判定の価値を高める手法として Practical Process Profiles[2]があり、目標設定時にリスクを考慮する。リスクとプロセスの結合は能動的なリスク削減による改良を促進し、それによって問題発生の可能性を削減する。
業者の診断に関しては、TRのpart8で記述していた。国際規格版のPart4に若干の記述があるにとどまっている。
1993年、SPICEの国際標準のドラフト作成のためのワーキンググループを結成した。SPICE は当初 "Software Process Improvement and Capability Evaluation" の略とした。その後、フランス語での evaluation の意味が問題となり、"Software Process Improvement and Capability Determination" の略に変更した。
現在は ISO 15504 が正式名称だが、SPICE という名称もユーザグループの会議の名称で使っている。SPICE の名を冠した会議は2000年にアイルランド島のリムリックで開催されたのが最初で、"SPICE 2003" は欧州宇宙機関主催でオランダで、"SPICE 2004" はポルトガルで、"SPICE 2005" はオーストリア、"SPICE 2006" はルクセンブルクで開催している。
当初、ソフトウェア開発工程のみを扱っていたが、例えば、プロジェクト管理、構成管理、品質保証などソフトウェアビジネス関連のあらゆるプロセスを扱うよう拡張した。適用範囲は以下の6つのビジネス分野である:
2004年の国際規格では、プロセス参照モデルは削除している。ISO/IEC 12207のソフトウェアライフサイクルおよびISO/IEC 15288をはじめとして多くのモデルの基礎として用いることにした。現在では測定フレームワークが中心であり、他の参照モデルを使うことができる。5つ以上の汎用/産業モデルがある。
ISO/IEC 15504 はISO 12207との整合性を取るために、大幅な変更をしている。能力成熟度モデル統合(CMMI)の作成者は ISO/IEC 15504のエディタもした。そのため、ISO/IEC 15504はCMMIを含む枠組みであるため、利用の考え方は共通である。
ISO/IEC 15504 は以下の点で成功を収めている:
15504は能力成熟度モデル統合(CMMI)などの共通部分を定義しているもので、15504とCMMIを直接比較することに意味はない。以下は、15504とCMMIに関連する情報である:
CMM と同様、ISO/IEC 15504 も当初はソフトウェア開発工程を念頭に置いて策定してきた。
しかし、サービスなどの他の文脈への適用は容易で, Part8として審議している。ITILに基づいたプロセス参照モデルの開発が始まっている。さらに様々な文脈での活用手法もある[3]。