1.レビュー種別に関して
非形式的なレビューから形式的なレビューまで、さまざまなタイプのレビューが存在します。適切なレビュー種別を選択することは、要求されるレビュー目的を達成するために重要になってきます。よく使用されるレビュー種別は以下の通りになります。
・非形式的レビュー
・ウォークスルー
・テクニカルレビュー
・インスペクション
①非形式的レビュー
非形式的レビューは、プロジェクトチームや関係者によって行われるレビューであり、形式的な手続きやドキュメント化されたガイドラインに基づかずに行われます。不正や問題点を見つけるために、多くの異なる視点から成果物を評価します。プロジェクトの参加者が自由に意見を交換できるため、不正や懸念事項がある場合には、それが容易に浮かび上がります。
②ウォークスルー
ウォークスルーは、プロジェクト参加者が作成された成果物を詳細に見直し、問題や改善点を特定するためのレビュープロセスです。対話的なレビュー形式であり、フィードバックを迅速に得るために効果的です。通常、作成者が成果物の内容や背景を説明し、参加者が質問や提案を行います。作成者が主導するウォークスルーは、品質評価や作業成果物に対する信頼の積み上げ、レビューアの教育、合意形成、新しいアイデアの創出、作成者のモチベーションの向上と改善、不正の検出など、多くの目的を達成することができます。
③テクニカルレビュー
テクニカルレビューは、ソフトウェアの技術的な側面に焦点を当てたレビュープロセスです。技術的な専門知識を持つ参加者が必要であり、コードの品質やパフォーマンス、セキュリティなどを評価します。技術的な問題に関して合意を得て判断するだけでなく、不正の検出、品質評価や作業成果物に対する信頼の積み上げ、新しいアイデアの創出、作成者のモチベーションの向上と改善ができるようにすることを目的としています。
④インスペクション
インスペクションは、品質管理プロセスの一環として行われるフォーマルなレビュープロセスです。厳密な手順に従い、ドキュメント化された成果物の詳細な検査と改善点の特定が行われます。通常は、ガイドラインや標準に従って行われ、プロジェクトの成果物の品質を高めるための重要な手法の1つです。
2.事例を用いたレビュー種別の説明
①非公式的レビューの事例
チームAは新しい機能の開発を進めています。開発者が機能のコードを書き、それをレビューするためにチーム全体が非形式的な会議を開催します。この会議では、コードを表示しながら、開発者が機能の動作や実装方法について説明し、他のチームメンバーが質問や提案を行います。このプロセスにより、不正や問題が発見され、改善が提案されます。
②ウォークスルーの事例
チームBは新しいウェブアプリケーションを開発しています。UIデザイナーがプロトタイプを作成し、ウォークスルーを行うためにチームメンバーが集まります。UIデザイナーはプロトタイプをデモし、ユーザーエクスペリエンスやナビゲーションの流れについて説明します。参加者は実際にアプリケーションを操作しながら、問題点や改善点を特定します。
③テクニカルレビューの事例
チームCは大規模なデータベースの変更を行うプロジェクトを進行中です。データベース管理者が変更内容を提案し、テクニカルレビューが実施されます。テクニカルレビューには、データベース管理者やシステムアーキテクト、セキュリティエキスパートが参加し、変更の技術的な側面やセキュリティリスクを詳細に検討します。
④インスペクションの事例
チームDはソフトウェアの要件仕様書を作成し、品質管理のためにインスペクションを行います。インスペクションには、要件エンジニア、プロジェクトマネージャー、ドメインエキスパートが参加し、要件の正確性や一貫性を確認します。ドキュメントの各部分が厳密に検査され、不明瞭な項目や矛盾点が特定され、修正が行われます。
3.まとめ
レビューを行う目的は品質改善のみならず、開発計画と実際の成果物との比較検証、成果物の審査、開発目的との相応など多岐にわたることから、各レビューから導き出される結果も異なります。適切なレビュー種別の選択は、ソフトウェアの品質や機能性、セキュリティ、パフォーマンスなどの側面を網羅し、ソフトウェア開発プロセス全体の品質管理に貢献します。