書評「「要求」の基本原則 (技評SE選書)」

書評「「要求」の基本原則 (技評SE選書)」

岡 大勝 (著) , 三宅 和之 (著) , 技術評論

カテゴリ:設計・開発

概要

要求を正しく取得し、コントロールできるか否かが、プロジェクトの成否を左右する。本書はソフトウェア工学のアプローチに基づいた「要求を扱う6原則」により、要求をうまく扱いコントロールする方法を実践的に解説する。そして上流工程における要求プロセスを、立ち上げ、識別、導出、仕様化、の4つのフェーズに分けて詳しく説明する。上流工程はもちろん、開発に携わる全ての人々が身につけるべき、要求の入門書。

本書の使い方

第1章:要求に関する問題意識と6つの原則を学ぶことができる。
第2章~第5章:要求プロセスを各フェーズ毎に説明する。
基本的には第1章からの通読を勧める。その上で、要求プロセスの各フェーズの作業を行う際に、第2~5章を参照すると、多くのヒントが得られる。

何を学べるか

第1章 要求の扱い方を身につけよう -開発現場で使える要求工学入門
失敗した多くの開発プロジェクトでは要求がコントロールできていなかったこと、要求定義が難しい理由などを紹介したうえで、要求を適切にコントロールするために必要な、要求工学における「6つの原則」を紹介する。 ①要求の抽象度を識別せよ、②要求を可視化せよ、③要求を検証せよ、④要求にトレーサビリティを附よせよ、⑤要求に属性を付与せよ、⑥要求を分類せよ、の6つを解説する。 そのうえで、要求を取得するプロセス(要求プロセス)を「立ち上げ」「識別」「導出」「仕様化」の4つのフェーズに分けて、次章以降解説していく。

第2章 立ち上げフェーズ
「立ち上げフェーズ」について解説する。立ち上げフェーズでは、プロジェクトの目的と環境を整理し、要求を扱うための準備を行う。本章では、このフェーズを構成する3つのアクティビティを説明していく。①背景と目的を識別する、②前提と制約を理解する、③現状の組織環境を理解する、の各アクティビティの内容とその成果物を、事例を挙げてわかりやすく解説する。とりわけ、「なぜそれを行わなければならないのか」が懇切に説明されており、章末のチェックリストと合わせて、学習者の便が図られている。

第3章 識別フェーズ
「識別フェーズ」について解説する。識別フェーズでは、プロジェクトに潜む問題と要望を可視化する作業が行われる。本フェーズでは、要求の出し手(ユーザー)の視線から作業が行われる。本章では、このフェーズを構成する4つのアクティビティを説明していく。①問題の識別、②利害関係者の識別、③利害関係者の要望収集、④プロジェクト環境との適合度検証、の各アクティビティについて、事例を挙げて解説する。

第4章 導出フェーズ
「導出フェーズ」について解説する。導出フェーズでは、要望を実現するための手段を見出し、プロジェクトの目的が達成できることを合意する作業が行われる。本フェーズからは、視点は要求の受け手(開発者)に代わる。識別フェーズで見出した、ユーザーの要求に対して、開発者が「回答」を行う作業である。 本章では、このフェーズを構成する8つのアクティビティを説明していく。①機能要件の導出、②非機能要件の導出、③要件の検証、④要件適合性の評価(「優先度」の設定)、⑤要求リスクの評価(「要求安定性」の設定)、⑥実現可能性の評価(「難易度」の設定)、⑦システム規模の評価(「コスト」の設定)、⑧ベースライン要求の策定、の各アクティビティについて、事例を挙げて解説する。

第5章 仕様化フェーズ
「仕様化フェーズ」について解説する。仕様化フェーズでは、システムとして設計可能な状態まで、要求を詳細化する作業が行われる。本章では、このフェーズを構成する8つのアクティビティを説明していく。①機能の識別、②シナリオの定義、③機能属性の定義、④インタフェース仕様の定義、⑤データ仕様の定義、⑥機能要求仕様の検証、⑦非機能要求仕様の定義、⑧非機能要求仕様の検証、の各アクティビティを事例を挙げて解説する。