LoginSignup
0
0

【2024年01月版】非機能要件ヒアリング・提案メモ【初心者向け】

Posted at

はじめに

要件定義するときに、理解しておきたいことをまとめたメモです。初心者向けです。

IPAの 非機能要求グレード2018 を参照して、自分用に作成しています。

ここに記述されていることを(取捨選択はありますが)、ヒアリング、または、提案できるようになっておくことで、心理的な安全が増加すると思います。

英訳については、翻訳機を主に利用しています。
あとから英語版があることに気がついたので、そちらを参照する予定です。

中項目以降が書きかけです。

非機能要件の大項目

可用性 (Availability)

システムがユーザーによってアクセス可能であり、必要な時に正常に機能する度合いを指します。システムのダウンタイムを最小限に抑え、高いアップタイムを保証することが目標となります。冗長性、障害回復計画、バックアップ戦略が重要です。

性能・拡張性 (Performance & Scalability)

システムが特定の負荷のもとで要求されたサービスレベルを満たす能力です。レスポンスタイム、処理能力、リソース利用効率などが指標になります。システムが将来の成長や負荷増加に対応できる能力です。縦方向のスケールアップ(リソースの増強)と横方向のスケールアウト(インスタンスの追加)があります。

運用・保守性 (Operability & Maintainability)

システムを円滑に運用するための特性で、監視、ログ管理、アップデートやパッチ適用の容易さなどが含まれます。システムの修正や機能拡張が容易であることを指し、コードの可読性、モジュール性、再利用性が重要です。

移行性 (Portability)

システムやアプリケーションが、ある環境から別の環境へ容易に移行できる能力です。システム構成要素の互換性、データのエクスポート・インポート機能、依存関係の管理などが重要です。

セキュリティ (Security)

システムが不正アクセス、使用、開示、破壊、変更、損害から保護されている度合いです。認証、認可、データ暗号化、脆弱性管理、インシデント対応計画などが含まれます。

システム環境・エコロジー (System Environment & Ecology)

システムが動作するためのハードウェア、ソフトウェア、ネットワーク環境などの総合的な構成を指します。システムの環境への影響を考慮した設計のことで、省エネルギー、リサイクル可能な材料の使用、廃棄時の環境負荷の低減などが該当します。

非機能要件の中項目

可用性 (Availability)

継続性 (Continuity)

継続性は、予期せぬ事態や災害が発生した場合にも、企業や組織がその重要なビジネス機能やオペレーションを継続できる能力を指します。これには、ビジネス継続計画(BCP)の策定や、重要なシステムやプロセスに対するリスク評価、予防措置の実施が含まれます。目的は、事業活動を迅速に復旧させ、損失を最小限に抑えることにあります。

耐障害性 (Fault Tolerance)

耐障害性は、システムの一部が故障したり機能しなくなったとしても、システム全体が正常に動作し続ける能力を指します。これは、冗長性の導入、エラー検出技術、自動回復メカニズムによって実現されます。耐障害性を持つシステムは、障害発生時にもサービスの中断を最小限に抑えることができます。

災害対策 (Disaster Recovery)

災害対策は、自然災害や人為的な事故が発生した後、技術システムやデータを元の状態に復旧するプロセスや戦略を指します。これには、重要データの定期的なバックアップ、リカバリサイトの設定、復旧計画の定期的なテストと更新が含まれます。災害対策の目的は、被害を受けたシステムを迅速に復旧させ、ビジネスの中断を最小限に抑えることにあります。

回復性 (Recoverability)

回復性は、システムが障害や故障から復旧する能力を指します。これは、システムが正常な状態や、少なくとも受け入れられる運用レベルに戻るために必要な時間やプロセスに焦点を当てます。回復性の高いシステムは、障害発生時にデータ損失を防ぎ、迅速にサービスを再開できます。これには、適切なバックアップ戦略、効果的なリカバリプロセスの実装が必要です。

性能・拡張性 (Performance & Scalability)

業務処理量 (Workload Capacity)

業務処理量は、システムが特定の時間内に処理できるトランザクションの量や、サポートできる同時ユーザー数など、システムが効果的に処理できる作業の量を指します。この要件は、システムの設計初期段階で重要であり、ハードウェアリソースの選定、ソフトウェアの構成、および全体的なアーキテクチャの決定に影響を与えます。業務処理量を適切に評価し、計画することで、ピーク時の負荷でもシステムのパフォーマンスが維持されるようにします。

性能目標値 (Performance Targets)

性能目標値は、システムのレスポンスタイム、トランザクション処理速度、データ処理能力など、達成すべき具体的な性能指標です。これらの目標は、ユーザーの期待値、ビジネスの要求、および競合他社の基準を基に設定され、システム設計とテストのガイドラインとして機能します。性能目標値を設定することで、開発チームは要件を満たすために必要な設計上の決定や最適化を行うことができます。

リソース拡張性 (Resource Scalability)

リソース拡張性は、システムが将来的な成長に合わせて、容易に拡張可能である能力を指します。これには、サーバーの追加、ストレージ容量の増加、ネットワーク帯域の拡大などが含まれます。リソース拡張性を確保することで、システムはユーザーベースの成長やデータ量の増加に柔軟に対応でき、長期的なビジネスの成功を支えます。

性能品質保証 (Performance Quality Assurance)

性能品質保証は、システムが設定された性能目標値を満たすことを保証するためのプロセスと活動です。これには、性能テスト、モニタリング、およびチューニングが含まれます。性能品質保証活動を通じて、システムのボトルネックや最適化が必要な領域を特定し、継続的な改善を図ります。また、将来的な問題を予測し、事前に対処することで、システムの安定性と信頼性を高めます。

運用・保守性 (Operability & Maintainability)

運用・保守性 (Operability & Maintainability)

通常運用 (Normal Operations)

通常運用は、システムが日常的に直面する状況において、効率的かつ効果的に機能するようにするための要件を指します。これには、システムがどのようにして利用可能であるべきか(運用時間)、データの損失を防ぐためにどのようなバックアップ戦略を採用すべきか、システムの健全性や性能を監視するためのメカニズム(運用監視)が含まれます。さらに、システム内のすべてのコンポーネント間で時刻が正確に同期されていることを保証すること(時刻同期)も重要です。

保守運用 (Maintenance Operations)

システムが長期にわたって最適な状態で機能し続けるために必要な活動群を指します。このプロセスは、システムの性能を維持し、将来的な問題を未然に防ぐために、計画的なメンテナンス、運用の効率化、パッチ・セキュリティ更新の適用、およびシステムの継続的な改善を含みます。

障害時運用 (Operations During Failure)

障害時運用(Operations During Failure)は、システムが予期せぬ問題や障害に直面した際に、迅速かつ効果的に対応し復旧するためのプロセスと戦略を指します。このアプローチは、システムのダウンタイムを最小限に抑え、ビジネスの連続性を保つことを目的としています。障害時の対応計画は、事前に準備され、定期的に見直される必要があり、システムの復旧作業、障害復旧の自動化、異常検知とその対応、および交換用部材の迅速な確保を包括的にカバーします。

運用環境 (Operational Environment)

運用環境(Operational Environment)は、システムが日常的に使用される環境の全体的な設定と管理を指します。これは、システムが効率的かつ効果的に運用され、維持されるための基盤を形成します。運用環境の構築と管理には、開発用環境と試験用環境の設置、マニュアルの準備、リモートオペレーションのサポート、および外部システムとの接続が含まれます。

サポート体制 (Support Structure)

システムや機器の操作性や保守性を意味し、これには多くの要素が含まれます。システムや機器の運用・保守性を高めるためには、保守契約(ハードウェアやソフトウェア)、ライフサイクル期間、メンテナンス作業の役割分担、一次対応の役割分担、導入サポート、オペレーション訓練、サポート要員の確保、定期報告会など様々な要素を考慮する必要があります。

その他の運用管理方式 (Other Operational Management Approaches)

システムの運用コストを抑え、サービス品質を維持向上のための、内部統制の対応、サービスデスクの整備、インシデント・問題の管理、構成・変更・リリース管理等、システムが正常に稼働し続けるための保守活動を円滑に行うための要件を考慮する必要があります。

移行性 (Portability)

セキュリティ (Security)

システム環境・エコロジー (System Environment & Ecology)

非機能要件の小項目

小項目の説明、メトリクスについては後日追記予定

可用性 (Availability)

継続性 (Continuity)

耐障害性 (Fault Tolerance)

災害対策 (Disaster Recovery)

回復性 (Recoverability)

性能・拡張性 (Performance & Scalability)

業務処理量 (Workload Capacity)

性能目標値 (Performance Targets)

リソース拡張性 (Resource Scalability)

性能品質保証 (Performance Quality Assurance)

運用・保守性 (Operability & Maintainability)

通常運用 (Normal Operations)

保守運用 (Maintenance Operations)

障害時運用 (Operations During Failure)

運用環境 (Operational Environment)

サポート体制 (Support Structure)

その他の運用管理方式 (Other Operational Management Approaches)

移行性 (Portability)

移行時期 (Migration Timing)

移行方式 (Migration Method)

移行対象(機器) (Migration Target (Equipment))

移行対象(データ) (Migration Target (Data))

移行計画 (Migration Plan)

セキュリティ (Security)

前提条件・制約条件 (Assumptions and Constraints)

セキュリティリスク分析 (Security Risk Analysis)

セキュリティ診断 (Security Diagnosis)

セキュリティリスク管理 (Security Risk Management)

アクセス・利用制限 (Access and Usage Restrictions)

データの秘匿 (Data Concealment)

不正追跡・監視 (Fraud Tracking and Monitoring)

ネットワーク対策 (Network Measures)

マルウェア対策\n(Malware Measures)

Web対策 (Web Measures)

セキュリティインシデント対応/復旧 (Security Incident Response/Recovery)

システム環境・エコロジー (System Environment & Ecology)

システム制約/前提条件 (System Constraints/Assumptions)

システム特性 (System Characteristics)

適合規格 (Conformance Standards)

機材設置環境条件 (Equipment Installation Environment Conditions)

環境マネージメント (Environmental Management)

さいごに

おぼえておきたいですね

参考リンク

IPA システム構築の上流工程強化(非機能要求グレード)紹介ページ

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0