はじめての非機能要件
Non Functional Requirement Guidelines
非機能要件はアーキテクチャを大きく左右するため、抜け落ちや認識齟齬があると大きな手戻りが発生する。そのため、できる限り早期に関係者と合意すべきである。しかし現状、要件定義から合意に至るプロセスは個人の経験に依存しがちで、標準的な手法が確立されていない。
本ガイドラインでは、この様な状況を改善するため、非機能要件について円滑に合意形成するための手法をまとめる。
本ガイドラインは、非機能要件の定義と合意をリードする立場の担当者を主な対象とする。「はじめての」と題しているが、まったくの初学者向けの入門書ではない。ここでの「はじめて」は非機能要件定義に取り組むのが初めてという意味であり、具体的には次のいずれかに当てはまる人を想定する(いずれも、個別技術の深い知識は前提としない)。
本ガイドラインが暗黙的に想定するシステム像は、次の通りである。
| 区分 | 内容 |
|---|---|
| 主な対象 | Webアプリケーション(業務システム/Webサービス等) |
| インフラ形態 | クラウド・オンプレミスのいずれも対象とする |
| 主な対象外 | 組み込み・IoT機器、リアルタイム制御システムなど、Webアプリケーションとは非機能の関心事が大きく異なるシステム(電力制約・時間的確実性・物理制御など) |
本ガイドラインは、最初からすべてを通読する必要はない。読者が直面している課題やプロジェクトのフェーズに合わせて、必要なノウハウへ最短でアクセスできるよう、役割の異なる3部構成とした。
非機能要件定義に本気で向き合う経験は、次のような形で、取り組む人自身を育てる。
非機能要件定義は、地味で、正解の見えにくい仕事である。しかし、視座・技術・ビジネス・対人・自己認識という専門職の土台が一度に鍛えられる場は、そう多くない。目の前の要件を埋める作業としてではなく、自らの成長の機会として臨んでほしい。
このアーキテクチャガイドラインの作成には多くの方々にご協力いただいた。心より感謝申し上げる。