Updates

新着情報

コラム

Organization SPICE 成熟度レベル4、5の評価で対象にするプロセスについて

先日、Organization SPICE 概説資料を公開しました。この資料は、Organization SPICE PAM の記載事項をなるべく忠実に表現する方針で作成してあります。そのため、少し補足説明を入れないと理解しにくい部分が残ってしまっています。コラムでは、補足が必要だと思われる次の2点について解説いたします:  成熟度レベルアセスメントに必要なインスタンス(プロジェクト)の選び方 成熟度レベル4、5を評価する際のプロセス選定の考え方 前回のコラムでは、インスタンスの選び方をご紹介しましたので、今回は成熟度レベル4、5を評価する際のプロセス選定の考え方についてご説明いたします。PAM の記載事項を要約すると、次のようになります: 成熟度レベル4、5インスタンスの選定 高成熟度(レベル4、5)については、選択されたプロセスセットがそれぞれ能力レベル4および5を達成することが期待される。このセットには、必ずしもすべてのプロセスが含まれる必要ははない。プロセスによっては、能力レベル3を超える根拠やビジネス上のメリットが全くない場合があるからである。(例えば、統計的な手法が適用できないほどインスタンス数が少ないなど) とはいえ、能力レベル4/5に選択された一連のプロセスについては、それらがどのように業務に貢献しているのか、きちんとした分析が必要である。その分析に基づき、能力レベル4/5のプロセスが、大半のプロジェクト(成熟度レベル4の場合)または企業/組織/部門(成熟度レベル5の場合)において、かなりの量の業務成果に貢献していることを明確にする必要がある。 このプロセスセットには、少なくとも1つの基本プロセスが含まれている必要があるが、通常は相互に関連するプロセスグループが存在している。さらにこのプロセスセットには、成熟度レベル2以上の拡張プロセスを含むことができる。 これは、どういうことを言っているのでしょうか?成熟度レベル4以上の活動を経験された方には理解できると思いますが、補足説明がないとわかりにくい内容だと思います。ここからは、これらの背景について説明していきます。 なぜ能力レベル4、5を達成する必要のあるプロセスは限定的(このセットには、必ずしもすべてのプロセスが含まれる必要はない)で良いのか?レベル4、5は、プロセスが事業へ貢献することに焦点を当てているからです。つまり、事業目標を達成するためには、どのプロセスを統計的に制御すると効果があるかを分析する必要があるのです。言い換えれば、すべてのプロセスを統計的に制御しても意味がありません。例えば、品質の向上が事業遂行上の最優先課題とした場合に、MAN.3(プロジェクト管理プロセス)やSUP.8(構成管理プロセス)を統計的に制御することで品質向上に大きく寄与するでしょうか?これらのプロセスを選択するよりも、むしろ過去の不具合傾向を見て、例えば詳細設計プロセスやレビュープロセスに焦点を当てることの方が品質向上に貢献しそうだと思いませんか?つまり、プロセスによっては、能力レベル3を超える根拠(統計的にプロセスを制御する)やビジネス上のメリットが全くない場合があるということなのです。    次に、「能力レベル4および5を達成することが期待される」とは具体的にどのような状態なのでしょうか?レベル4と5では、期待値が多少異なるので2つに分けて説明します: レベル4が期待するプロセス制御レベル4においては、組織内のプロジェクトから収集した標準プロセスの実績データを活用して、プロジェクトを成功に導くことが期待されています。プロセスは、プロジェクトの実績向上に寄与することに焦点が当てられていますが、プロジェクト実績の向上は結果的に組織の事業実績に貢献することになります。 まずは、事業目標を達成するために各プロジェクトはプロジェクト目標を設定します。次に、プロジェクト目標を達成するためにキーとなるプロセスを選択し、このプロセスを統計的に制御(そのイメージは後述します)していきます。つまり、プロセス実績データを統計的に分析しながら、都度プロジェクト実績を予測して、早め早めに手を打つことでプロジェクト目標の達成に導いていくための手法なのです。 データの扱い方の観点から見ると、レベル3のプロセス状態におけるプロジェクト管理では、その時点までに収集したデータを使って状況を把握していると言えます。言い換えると、自動車のバックミラーに映し出された形跡(プロジェクトが実施してきた結果)を見てプロジェクトを管理していることになります。一方、レベル4では、組織内の過去プロジェクトが使用した標準プロセスの実績データの集合から予測モデルを作成して、都度プロジェクト実績をモデル式に当てはめ、プロジェクト終了時点の実績を予測しながらプロジェクトを制御しているのです。こちらは、航空機がランディングする際に自動操縦で滑走路(プロジェクトのゴール)にアプローチするような例えになります。  レベル5が期待するプロセス制御レベル5においては、組織内のプロジェクトから収集した標準プロセスの実績データを活用して、組織のプロセス革新を実現することが期待されています。プロセスは、組織の事業実績の向上に直接寄与することに焦点が当てられます。 レベル4の活動においてプロセスを統計的に制御することが可能になったプロセス実績データを組織改革に活用することがプロセス成熟度の考え方の最終ゴールとなります。ここでは、新しい技術を現在使用している標準プロセスに組み込んだ場合に、プロセス実績がどのように変化するかを予測モデルから評価します。 このようなことができるようになると、刻々と変化するビジネス環境に合わせてダイナミックにプロセスを改善・改革することが可能になり、競合他社に対して優位性を持つことができるわけです。 ここでの説明のとおり、成熟度レベル4の場合は活動の焦点がプロジェクトに向けられています。一方、成熟度レベル5の場合は企業/組織/部門の業績に焦点を当てていることになります。  最後に、「統計的な手法が適用できないほどインスタンス数が少ない」ということに関して補足しておきますこれは、実際にプロセスを統計的に制御する活動をしてみるとわかるのですが、プロセス実績データ(インスタンス)を数多く、かつ頻繁に入手・評価できないと、実際の制御には活用できないということなのです。 例えば、プロジェクトの生産性のような指標は、プロジェクトが終了しないと収集できません。また、このようなデータはプロジェクト1つで1点のデータとしてしか入手できません。プロセスを統計的に制御するためには、プロセス実績の中心値やバラツキを見ながらプロセス実績を評価することになるので、インスタンスが少ないとうまく活用できません。データの母集団を作成するためには、膨大なプロジェクトが必要になりますし、プロジェクトが終わってしまっては、そのプロジェクトの将来を予測できません。 わかりやすい例として、レビュープロセスの実績データがあります。レビューはプロジェクトの中でもかなりの回数実施されるでしょう。母集団の作成も容易にできますし、レビュー終了時点で実績値を予測モデルに当てはめれば、直近のレビュー結果がプロジェクトの将来に与える影響も判断することができます。  今回のコラムはいかがだったでしょうか?PAMには簡単に書かれていますが、なかなか奥の深いトピックだと思います。私たちは、実際の開発現場で成熟度レベル4、5の実装に長らく携わってきました。この活動では、多くの後戻りと苦悩がありました。一番つらかったのはレベル4、5の目指すところを理解できた時点で、それまで構築してきたレベル3プロセスの定義や実装を振り出しに戻す必要が出てきてしまったことです。それまでは、データの扱いや統計的にプロセスを制御するために適切なプロセス構造や活動になっていなかったのです。この時、プロセス改善モデルとの付き合い方として、その時点で目標とするレベルだけを意識するのではなく、一度高いレベルを学習した上で、上位レベルから下位レベルを俯瞰して活動する必要があることを学びました。 同様の悩みをお持ちの方も多いと思いますので、その際はぜひ弊社までお声がけいただければと思います。日吉昭彦

コラム

成熟度レベルアセスメントに必要なインスタンス(プロジェクト)の選び方

先日、Organization SPICE 概説資料を公開しました。この資料は、Organization SPICE PAM の記載事項をなるべく忠実に表現する方針で作成しております。そのため、少し補足説明を入れないと理解しにくい部分が残ってしまっています。コラムでは、補足が必要だと思われる次の2点について解説いたします:  成熟度レベルアセスメントに必要なインスタンス(プロジェクト)の選び方 成熟度レベル4、5を評価する際のプロセス選定の考え方 今回は、成熟度レベルアセスメントをする際に必要となるプロセスインスタンス選び方についてご説明いたします。PAMの記載事項を要約すると、次のようになります: プロセスインスタンスの選定 可能であれば、少なくとも4つのフォーカスプロジェクトを選択する必要がある。選択されたすべてのプロセスは、フォーカス内で分析する必要がある。十分なカバレッジを達成するために、さらにプロセスインスタンスを追加することもできる。 フォーカスプロジェクトと選択されたプロセスインスタンス全体は、いずれも組織ユニットのプロセスインスタンスを適切に代表するものでなければならない。 プロセスインスタンスの選択基準は、定義されたアセスメントプロセスに従う必要がある。  具体的には、どのように選定すればよいのでしょうか?プロセスインスタンスの考え方や組織のプロセス成熟度に関する補足説明がないとわかりにくい内容だと思います。ここからは、これらの背景について説明していきます。 プロセスインスタンスとは何を指しているのか?プロセスインスタンスとは、「組織ユニットの中で組織標準プロセスを使用して活動した実例を示すもの」と解釈するとのが良いと思います。基本的には、1つのプロジェクトが1つのインスタンスとなります。つまり、プロジェクトが組織標準プロセスを履行した結果(足跡)ということです。ただし、プロセス改善プロセス(PIM.3)やスキル開発(RIN.2)など、プロジェクト単位ではなく組織として活動するプロセスは、プロジェクト単位とはならないケースも出てきます。 なぜ、少なくとも4つのフォーカスプロジェクト(プロセスインスタンス)が必要となるのか?成熟度レベルアセスメントは、Automotive SPICE が通常1つのプロジェクトを評価対象とするのに対し、組織のプロセス成熟度を評価対象とするものです。従って、組織ユニット内の限定的な(例えば1つの)プロセスインスタンスを評価しても、組織のプロセス成熟度を公平に表すことはできません。1つだけ良くできた(あるいはアセスメントのためだけに準備された)プロセスインスタンスが組織ユニット全体を表しているわけではないからです。 フォーカスプロジェクトは、どのような基準で選べば良いか?フォーカスプロジェクトは、PAM の記述にあるように組織ユニットのプロセスインスタンスを適切に代表するものでなければなりません。適切なインスタンスを選択をするためには、プロセスの履行にバラツキが出る要因を考慮しておくと良いでしょう: 製品種別:開発する製品特性 開発フェーズ:実施する作業工程、要求される期間、品質など 組織体制:部門/課/グループの特徴 プロジェクト規模:開発の大きさや、携わる人数 ロケーション:仕事の実施される場所(国の習慣や、地域による人の風習など) 顧客:開発要求元会社の文化ここに取り上げた例は、プロセス定義内容は同じにもかかわらず、作業上の違いが生まれてしまう可能性のある要因となるものです。成熟度レベルアセスメントの結果は、組織のベンチマークにも使われます。プロセスインスタンスの選定により評価結果が異なってしまうようでは、公平なベンチマークはできません。従って、成熟度レベルアセスメントにおいては、上記のような要因を考慮して、組織ユニットを代表するプロセスインスタンスを選定することが重要になってくるのです。選択したプロセスアセスメントモデルに、プロセスインスタンスの選定基準が定義されていれば、当然その基準を使用して選択する必要があります。アセスメントモデルに明確な定義がない場合は、選定した根拠を文書化しておくと良いでしょう。日吉昭彦

B'zine

B'zine - ビジネスガレージ通信の配信を開始しました

関東では桜の季節も終わり、もうすぐ待ちに待ったゴールデンウィークですね。今月より Automotive SPICE  や開発プロセスに関するトピックをお伝えする「B'zine」を開始しました。今後、毎月1回配信を予定しています。ご興味のある方は、ここから登録をお願いいたします。  第1号の内容は、次のようになっています。  B'zineビジネスガレージ通信(2025年4月号)  関東では桜の季節も終わり、もうすぐ待ちに待ったゴールデンウィークですね。 Automotive SPICEや開発プロセスに関連するトピックスをお伝えするB'zine - ビジネスガレージ通信の配信を開始しましたので、ご一読下さい。今後1回/月のペースでの配信を予定しています。 【今月のトピックス】 イベント:Organization SPICE 解説の無料 Webinar 開催(2025/5/14) 資料公開:Organization SPICE 概説資料を公開 コラム:システム/ソフトウェア開発に品質保証活動は必要なのか? コラム:Automotive SPICE GP 徹底解説 ~ そもそも能力レベル2とは? 【イベント】 Organization SPICE 解説の無料 Webinar 開催のご案内(5月開催決定)プロセスアセスメントは自動車業界では Automotive SPICE として定着していますが、プロジェクト適用から組織的な適用に拡張するために、「成熟度レベルの考え方」や「4つの追加プロセス(PIM.1、RIN.2、QNT.1、QNT.2)」を中心に解説します。日時:2025年5月14日16:00~17:00詳細はこちらhttps://www.bgarage.co.jp/news/1061/ 7月Webinar(予定):Automotive SPICEプロセスと ISO26262/21434 の融合 9月Webinar(予定):Modeling & Simulation SPICE 概説 【資料公開】 Organization SPICE 概説資料を公開しました先日、Organization SPICE が intacs から公開されたことをお知らせしましたが、その概説書を作成したので公開します。詳細はこちらhttps://www.bgarage.co.jp/news/1001/  【コラム】 システム/ソフトウェア開発に品質保証活動は必要なのかAutomotive SPICEのSUP.1 や CMMI では、システム/ソフトウェア開発の品質保証活動に対する要求事項を規定しています。なぜシステム/ソフトウェア開発に品質保証活動が必要なのかを、元となる規格や書籍を参考に、「品質保証活動の必要性」について解説します。詳細はこちらhttps://www.bgarage.co.jp/news/984/ Automotive SPICE GP 徹底解説 ~ そもそも能力レベル2とは?プロセス能力レベル2とは、具体的にはどういう状態なのかについて解説します。プロセス能力レベル2では、繰り返しでの一定レベルの成果を期待しており、以下の2つの仕組みが実施できているかが要求されています。 作業が計画的に実施できているか? 作業成果物が管理され、品質がチェックされているか?詳細はこちらhttps://www.bgarage.co.jp/news/903/ご不明点、ご質問、ご要望等ございましたら、下記までご連絡ください。

WhitePaper

Organization SPICE 概説資料を公開しました

先日、Organization SPICE が intacsから公開されたことをお知らせしましたが、その概説書を作成いたしましたので公開いたします。 コンテンツに含まれるもの: 成熟度レベルについて 組織成熟度の評価方法 アセスメントモデルとプロセスの選択 プロセスインスタンスの選択 Organization SPICEプロセス群 PIM.1(プロセス確立) RIN.2(スキル開発) QNT.1(定量的能力管理) QNT.2(プロセス革新) Organization SPICE PAM の説明だけでは、理解しにくい下記事項については、今後コラムでご紹介予定ですので、是非こちらもご参照ください。 プロセスインスタンスと、その選択方法について 高成熟度(成熟度レベル4、5)の考え方  

コラム

システム/ソフトウェア開発に品質保証活動は必要なのか?

はじめにAutomotive SPICEのSUP.1やCMMIのPPQAでは、システム開発/ソフトウェア開発の品質保証活動に対する要求事項をまとめています。しかしながら、そもそもなぜシステム開発/ソフトウェア開発に品質保証活動が必要なのかを考えたことがありますか?今回は、SUP.1やPPQAの元となっている規格や書籍を参考に、「品質保証活動の必要性」について考えていきます。  品質保証の規格MIL規格(Military Standard)最初に品質保証が規格として体系化されたのは、MIL-STD-109で、1960年代後半に初版が制定されました。この中で「品質保証(Quality Assurance)」を以下のように定義しています。A planned and systematics pattern of all actions necessary to provide adequate confidence that management and technical planning and controls are adequate to: Established correct technical requirements for design and manufacturing. Create products and services that confirm to the established technical requirements.管理および技術計画と制御が次の事項に適切であるという十分な確信を与えるために必要なすべてのアクションの計画的かつ体系的なパターン。 設計および製造に関する正しい技術要件を確立する。 確立された技術要件に準拠する製品およびサービスを作成する。つまり「適切に正しい技術要件を定義して、適切にそれに準じた製品やサービスを作っている確信を得るための活動」が品質保証であるとしています。さらにその技術要件の重要な要素である品質要件についても以下のように定義しています。The technical requirements relating to the quality of the product (supply or service) and contract clauses prescribing quality standards, inspection, and other quality controls incumbent on the contractor, to assure that the product or service confirms to the contractual requirements.製品 (供給またはサービス) の品質に関する技術要件、および契約者に課せられた品質基準、検査、およびその他の品質管理を規定する契約条項で、製品またはサービスが契約要件に準拠していることを保証する。契約者(≒供給者)が、要件通りのモノを作ったことを保証するための契約事項(≒約束事)を品質要件と定めています。言い換えると、要件通りにモノを作ったことを対外的に保証する行為が品質保証活動だと言えるでしょう。ISO規格(国際標準規格)品質に関する国際標準は、皆さんもご存知のISO 9000シリーズです。1980年代に制定されましたが、その中のISO 9003が、特に「最終検査および試験における品質保証モデル」に焦点を当てた規格です。ISO 9003は、製品の最終検査と試験を通じて品質を保証するためのガイドラインを提供していました。ISO 9003は、長期間にわたって製造、設計、その他の使用方法が確立されている製品に対して、最終検査のみで品質を保証するための規格でしたが、2000年の改訂により、ISO 9001に統合され、より柔軟で包括的な品質マネジメントシステムの規格となりました。IEEE規格(電気・電子工学分野における国際標準規格)電気・電子工学分野における国際的な標準を策定するための組織であるIEEE(Institute of Electrical and Electronics Engineers)も、前述のMIL-STDをベースに1970年代後半に品質保証の国際標準を制定しました。IEEE Std 730IEEE Standard for Software Quality Assurance Processesがその規格であり、今もなお改版を続けています。この中で、Automotive SPICEやCMMI以上に詳細説明があるので、この規格を参考に必要性を整理していきます。この国際標準では、SQAプロセスの目的と以下のように定義しています。 「ソフトウェア開発プロジェクトが SQA プロセスを使用して、ソフトウェア製品が確立された要件に準拠していることを正当に証明するための根拠となる証拠を作成および収集できるようにすること」 やはり、品質保証を要件通りにモノを作ったことを対外的に保証する行為と位置付けています。  QAが準拠保証しなくてはならない要件とは Automotive SPICEのSUP.1でも定義されているように、成果物とプロセスの品質保証をする必要があるため、QAが遵守保証しなくてはならない要件は、プロダクト要件とプロセス要件になります。IEEE std 730では、契約事項である利害関係者要件から導出されたプロダクト要件とプロセス要件に対し、図にあるような適合関係の推移性に基づいて、1つ前の情報と比較し適合していることを確認することで、プロジェクト全体を通じて、「要件通りにモノを作ったことを保証する」こととしています。 契約事項と導出されたプロセス要件の適合を確認する プロセス要件と導出された計画やプロセス、標準や手順の適合を確認する 計画やプロセス、標準や手順と実際の活動結果の適合を確認するこのように、1つ前の情報との適合を確認することが、品質保証活動の基本的な考え方となります。  プロジェクト内のレビューやチェックだけでは品質保証は十分なのか?契約事項に基づいた「要件通りにモノを作ったことを対外的に保証する」必要性は、開発に携わった人であれば理解できることかと思います。それでは、その対外的な保証はプロジェクト内の活動だけで十分であると考えることはできないのでしょうか?先のコラムAutomotive SPICE SUP.1 本当に品質は良くなるの?でも引用した「プロセス成熟度の改善」(Watts S. Humphrey著日本語訳:日科技連出版社発行)には、客観的な品質保証の必要性を以下のように説明しています。監査者に対し客観的になることは、誰にとっても難しい。一般に、我々はかなり注意深く仕事をやっており、そうでないように言われると不愉快に感ずる。しかし、「外側から」のレビューを行うのは、釣り合いのとれた見方が必要だからである。たとえば、あなたがこれからパラシュートを包み終えて跳ぼうとしているとする。有能な検査者があなたの1つ1つの動作を監視して本当に正しく行ったということを保証してくれるならば、あなたの幸せになれる勝算は大きくなる。品質が決定的に重要な場合は、なんらかの独立したチェックが必要である。それはその人たちが信頼できないからではなくて、その人たちが人間だからである。ソフトウェアにおける問題は、チェックが必要かどうかではなく、誰がどうやるかである。小規後な組織では、しばしば管理者自身が作業を直接に監視できるので、SQAの活動は必要がない。部下の数が多くなるにつれて管理者は他の業務に巻き込まれ、次第に日常の技術的作業ができなくなってしまう。このような時には、管理者は次の事項の1つを行うことが必要である。 余分な負荷をうまく扱うなんらかの方法を見つけ、部下の仕事をより密接に監視できるようにする。 監視する人を雇う。 部下同士が互いに監視するように動機づける。技術的、経済的、そしてモラル上の観点から、最後の選択が一般には最も望ましい。残念ながら、歴史的にもソフトウェアの組織が数十人を越えてくると、この「ニ人一組方式」は崩壊してしまう。このような場合には、SQAによって解決しなければならないのである。 規模が膨らみ、複雑なシステム/ソフトウェア開発を行っているからこそ、管理者に代わって、「要件通りにモノを作ったことを対外的に保証する」客観的な視点が必要になるのです。当然ながら、管理者のサポートが、効果的な品質保証活動を行う大前提となります。  さいごに いかがだったでしょうか。今回は、改めて品質保証活動の必要性について考察してみました。皆さんの効果的な品質保証活動を行う動機付けになれば幸いです。 内山哲三