スクエア
Skyscraper1
Skyscraper2
Service

TEDIA Service

CreateID

Rectangle1
SpecialBatch
ミニタイアップ
テキスト&イメージ
FindITホワイトペーパー
Rectangle2
Rectangle3
HatenaBookMark
Google ADS

技法とテンプレート!

第5回:インスペクションを自在にカスタマイズ

カスタマイズが必要な理由

 組織内のすべてのソフトウエア開発プロジェクトを画一的に扱い、唯一の手順、技法、開発方法論だけではプロジェクトを成功に導くことはできません。個々のプロジェクトへの手順、技法のカスタマイズは必須であり、インスペクションについても同じことが言えます。

 本記事ではドイツフラウンホーファ実験的ソフトウェア工学研究所(IESE)がこれまでに実践、発表しているインスペクションに関する学術論文[文献1][文献 2]の内容をもとに、同研究所テスティング&インスペクション部門の責任者Frank Elberzhagerと国立大学法人 奈良先端科学技術大学院大学情報科学研究科の森崎 修司が相談しつつ本記事の読者用に作成したものです。なお、本記事は奈良先端科学技術大学院大学とフラウンホーファ実験的ソフトウェア工学研究所の国際連携であるWorking Group of International Research Cooperation on Software Inspections
(http://www.software-inspection-wg.org/) に基づくものであり、日本語訳は森崎が担当しています。

開発プロジェクトによって事情が異なる

 個々のソフトウエア開発プロジェクトによって事情が異なるため、単純にほかのプロジェクトのインスペクションの成功事例を丸写しするだけでは必ずしも同じように成功するわけではありません。プロジェクトごとにリスク、ソフトウエアに求められるもの、かけられる工数も異なるでしょう。これまでのIESEでの経験では、プロジェクト事情を勘案したテーラリング(プロジェクトの特性や事情を考慮し、インスペクションをカスタマイズすること)をしなかったときのインスペクションの効率は低くなりやすいことを確認しています。

 現在使われている主要な読み進め方としてチェックリストを使ったものがあります。チェックリストはなるべく多くのプロジェクトやソフトウエアにあてはまるよう抽象的な書き方をされていることが一般的です。筆者らの経験では、チェックリストがプロジェクトごとにカスタマイズされることはほとんどありませんが、実際にはプロジェクトに応じてカスタマイズする必要があることが多いです。

 アーキテクト、プログラマー、テスタ、顧客をはじめプロジェクト関係者へのメリットを理解してもらう必要があります。プロジェクト関係者が、インスペクションを非生産的な追加の活動と考えているうちは、期待する効果が出ないどころかかえって効率が下がります。

 もし、積極的な意見を出せないメンバしかインスペクションに参加しなければ、単に他人が作成したドキュメントを最初から最後まで目で追う会議になります。例えば、要求仕様書のインスペクション会議では、単に正しい文章が書けているかどうかをチェックするだけでなく、最終形であるシステムのどの構成要素(サブシステム)でおのおのの要求を実現するか、また構成要素間ではどのようなやりとりがあるかを想定しながらでないと効率的な欠陥指摘は難しいでしょう。

1    2    3    次のページ

著者プロフィール

Fraunhofer Institute for Experimental Software Engineering (IESE)  Frank Elberzhager

Fraunhofer Institute for Experimental Software Engineering (IESE)  Frank Elberzhager

ドイツ カイザースラウテルン大学にて計算機科学の修士号を取得。ソフトウェア品質保証全般、ソフトウェアインスペクション、ソフトウェアレビュー等の静的解析に興味を持つ。また、ソフトウェア開発企業とともに品質保証技術の導入や改善活動を支援している。 連絡先: Fraunhofer IESE, Fraunhofer-Platz 1, 67663 Kaiserslautern, Germany frank.elberzhager [at] iese.fraunhofer.de. 日本語訳(奈良先端科学技術大学院大学 森崎 修司)

記事評価

---