Technology8. 非機能要件
要件定義フェーズにおける非機能要件について考えてみます。ここで取り上げるのは、運用業務に特に影響を与える要件です。
- 管理性:管理のしやすさ
運用チームがアプリケーションをどのようにして保守・運用しているかを理解することは価値があります。プラットフォームに関して、組織の標準や方針があるかどうかも確認します。
- プラットフォーム(ハードウェア、基本ソフトウェア、ミドルウェア
- ネットワーク環境
- マシンの設置環境
- 保守・運用要員ができることとできないこと
- 運用性:運用のしやすさ
運用チームの体制やスキルなどを考慮しながら、運用業務の複雑化は避けるべきです。運用性を高めるためには、以下の各事項について組織の標準を確立することが有効です。
- イベント監視ツールと監視業務手順
- バックアップの手法、バックアップ作業手順、スケジュール
- バックアップメディアの種類、保管方法、リストア作業手順
- エラー・メッセージの表示形式や分類に関する指針
- アプリケーションのエラー処理に関する指針
- インシデントや問題の処理手順やルール
- ユーザ管理とサポート手順
- 保守性:保守のしやすさ
アプリケーションのインストールや環境設定手順はできるだけ自動化を図り、人の介在を減らします。アプリケーションの欠陥を修正する際の保守作業手順も自動化と簡略化を図ります。
- アプリケーションのインストール手順や環境設定手順
- アプリケーションを保守する単位、手法、作業手順
- アプリケーション・インストール時の切り戻し手順
アプリケーションの可用性やキャパシティ等の非機能要件は、アプリケーションに対する事業側の期待を表していると言えます。
- 可用性と信頼性
- キャパシティとパフォーマンス
- セキュリティ
- 継続性
- 財務
すべての要件がプロジェクトの早い段階から明確であるとは限りませんが、設計が完了するまでのどこかの段階で、すべての非機能要件が検討されるべきでしょう。