コードジンのヘッダーが入ります
当セッションの講師は、マイクロフォーカスでシステム開発の全フェーズ(要件分析、開発、テスト、デリバリ)の営業支援を担当する藤原祐之氏。まず「開発プロジェクトの現状」と題されたスライドが提示された。
藤原氏によると、開発プロジェクトのうち納期に間に合って不具合も起きず、黒字で終わった「成功」プロジェクトは全体の30%程度しかない。つまり約7割のプロジェクトが何らかの問題をはらんでおり、この数字は過去10年間ほぼ変わりがないという。
しかしこの不況下で、プロジェクトの品質向上策という提案には予算がかけられず、「お金がないので根性で」という状況が続いている。新しい品質管理手法について理解してはいるものの、さまざまな理由から実際の開発現場に上手く適用できず、品質チェックの体制も統一されていない。
しかし、例えばテスト自動化をとってみても、自動化ツールが出始めた15年前ごろに試して「まったく使い物にならなかった」という印象をいまだに根強く持っている開発者の方がいるという。実際にはこの10年でツール類は大きく進化しており、最新のツールで最新の手法を試してみれば、「使える」と印象が変わることもある。
そのようなさまざまな品質管理手法が、本セッションでは新しいツールとともにソリューションとして提案された。なお、品質管理手法を活用するまでのステップとしては、アジャイルマニフェストのアリスター・コーバーン(Alistair Cockburn)氏に倣い、茶道や武道でいう「守・破・離」の流れで学んでいくのが良いとのことだ。
マイクロフォーカスでは、品質管理手法のソリューションとしてASQ/ALM製品をラインアップしている。ASQ (Automated Software Quality) では、開発の初期段階から品質チェックを自動化して定期的・継続的に実行し、問題の早期発見と品質管理の効率化を実現する。
また、ALM (Application Lifecycle Management)は、マイクロフォーカスが買収したボーランドが強く推し進めていた考え方で、アプリケーションのライフサイクル全般(設計、開発、テスト、運用)を通して統一した体制で品質を管理し、生産性と品質を向上させる。
設計段階では「ユースケースシナリオ」による要件定義の手法が紹介された。ただし、要件情報が膨大になると対応が難しく、要件の変更が前提となるアジャイル開発では履歴を管理する必要もあるため、ツールによる管理で変更点を明確にすることが重要だ。
開発手法では、マイクロフォーカス製品とはとくに関係ないがと断りつつ、アジャイル開発のさまざまな方法論のなかで、とくに大規模開発に適用することを前提として、アリスター・コーバーン氏が提唱する「クリスタル」方法論が有効だとした。
続いて、継続的な品質チェックを行うため、ソースコード分析を自動で定期的に行うツールの導入を勧めた。ここではボーランドの製品だった構成管理ツール「StarTeam」の名前が挙げられた。また、オープンソースでもHudsonなど優秀な継続的インテグレーションツールが出ている。
テストを自動化する際に、アジャイルの場合にはユニットテストが重視される。ここでEclipseプラグインとして提供されるGUI系のユニットテストを自動化するツール「Silk4J」が紹介された。また、コストが限られる中でリスクの高いテストを重点的に実施する「リスクベーステスティング」の機能「Quality Optimizer」なども有用性が高いツールだ。