【機能要件、非機能要件】
システム開発において、機能要件と非機能要件がある。
まとめたものを備忘録として残します。
IPAのサイトを参考にさせていただきました。
機能要件
要件定義の中で「実装する機能」に関する要件のことを機能要件という。
実際にユーザが必要になる機能は機能要件として分類される。
Webサービスやアプリケーションがユーザに提供しなければならない機能そのものである。
・プロセス機能
・データ機能
・インターフェース機能 など。
非機能要件
当たり前だが、機能要件以外のものを指す。
システムが実現する必要のある機能以外のもの。
要件定義の中で、システムの性能など「実装する機能以外」に関する要件を非機能要件という。
・品質要求
・技術要求
・運用、保守 など。
非機能要求グレードでの6分類
非機能要件は、情報処理推進機構(IPA)が大きく6つのカテゴリに分類している。
良いシステムをリリースするためにこれらを満たした要件定義を心がける。
・可用性
運用スケジュールや障害発生時の復旧などに関する要求は可用性に分類される。
バックアップ体制や障害発生時の回復方法を確立し、対策する。
・性能、拡張性
ピーク時の負荷や業務量増加の対応などに関する要求は性能/拡張性に分類される。
ソフトウェア内部の処理を効率化したり、ネットワーク機器の配置に配慮したりする。
・運用/保守性
システム運用時の稼働率や問題発生時の対応などに関する要求は運用、保守性に分類される。
正常運用のための監視の充実や、運用マニュアルの拡充をする。
・移行性
新システム移行に関する要求は移行性に分類される。
移行までのスケジュール調整や、リハーサルの実施する。
・セキュリティ
利用者の制限や不正アクセスの防止などに関する要求はセキュリティに分類される。
アクセスの制限や不正利用者の監視、社員への情報セキュリティ教育をおこなう。
・システム環境、エコロジー
システムの設置環境や消費エネルギー量などに関する要求はシステム環境、エコロジーに分類される。
設備に適した機器の選定、環境負荷を低減させるシステムの構成をおこなう。