1. システム要件定義・ソフトウェア要件定義

「システム要件定義・ソフトウェア要件定義」における目標

システム及び/又はソフトウェア要件定義の考え方,手順,手法,留意事項を修得し,適用する。

1.1. システム要件定義のタスク

システム要件定義では,システムの境界の定義,システム要件の定義,システム要件の評価,システム要件の共同レビューを実施することを理解する。

1.2. システムの境界の定義

1.2.1. システムの境界の定義の目的

利害関係者要件として定義された,利用の状況及び運用シナリオに基づいて機能的な境界を定義することを理解する。

用語例

利用の状況,運用シナリオ,API,GUI,インタフェースファイル,サービス

1.2.2. システム化の目標と対象範囲

システム化の目標,対象範囲(対象業務,対象部署)をまとめることを理解する。

1.3. システム要件の定義

1.3.1. システムの機能及び能力の定義

システムの機能要件,性能要件をまとめることを理解する。

用語例

システム機能仕様,レスポンスタイム,スループット

1.3.2. 業務・組織及び利用者の要件

利用者の業務処理手順,入出力情報要件,操作要件(システム操作イメージ)の定義など,業務,組織,利用者からの要求事項をシステム開発の項目に対応させ,明確に定義することを理解する。また,開発対象システムの具体的な利用法を調査,分析して要件を抽出し,5W2H(Why,When,Where,Who,What,How,How much)の観点から明確に文書化することを理解する。

用語例

性能要件,データベース要件,テスト要件,セキュリティ要件,移行要件,運用要件,運用手順,運用形態,保守要件,可用性,障害対応,教育,訓練,費用,保守の形態,保守のタイミング,CRUD マトリクス

1.3.3. その他の要件

システム構成要件,設計及び実装の制約条件,適格性確認要件(開発するシステムが利用可能な品質であることを確認する基準)の定義,開発環境の検討などを行うことを理解する。

用語例

実行環境要件,周辺インタフェース要件,品質要件,機能要件,非機能要件,達成する遂行能力・性能・運用時の実績に対する要件(パフォーマンス要件),イネーブリングシステム

1.4. システム要件の評価及びレビュー

システム要件を評価する際の基準を理解する。また,システム要件定義書の作成後,システムの取得者及び供給者が共同でレビューを行うことを理解する。

用語例

双方向の追跡可能性(双方向のトレーサビリティ),一貫性,テスト可能性,システム設計の実現可能性,運用及び保守の実現可能性,レビュー参加者,レビュー方式

1.5. ソフトウェア要件定義のタスク

ソフトウェア要件定義では,ソフトウェアの境界の定義,ソフトウェア要件の定義,ソフトウェア要件の評価,ソフトウェア要件の共同レビューを実施することを理解する。

1.6. ソフトウェアの境界及び要件の定義

1.6.1. ソフトウェアの境界及び要件の定義の目的

ソフトウェア要件定義では,業務モデル,論理データモデルを作成して,システムを構成するソフトウェアの境界,ソフトウェアに求められる機能,能力,インタフェースなどを決定し,ソフトウェア要件を定めることを理解する。また,要件定義のための業務分析には,DFD,E-R 図,UML などの分析,表現方法を使用することを理解する。

用語例

要件の属性(根拠,優先順位,ソフトウェア要素・テストケース・情報項目への追跡可能性(トレーサビリティ),検証手法),使用性(usability)

1.6.2. ソフトウェアの機能仕様とそのインタフェースの仕様の識別

ソフトウェアの機能仕様とそのインタフェースの仕様を識別する一連の活動と留意事項を理解する。

用語例

ユースケース,ユーザーストーリー,シナリオ,DFD,E-R 図,UML,運用の状態又はモード,サブシステム分割,サブシステム機能仕様定義,サブシステムインタフェース定義,サブシステム関連図,サービスの定義,実装制約条件,品質特性,IoT

1.6.3. 業務モデルとデータモデルの識別

業務フローやサブシステム間の関係から業務モデルとデータモデルを作成する一連の活動と留意事項,データモデルの種類と各々の特徴を理解する。

用語例

論理モデル,物理モデル,業務モデリング,IoT,画面設計,帳票設計,伝票設計,データモデリング,システム業務フロー,データ要素,データ構造,データ形式,データベース又はデータ維持の要件,ユーザーインタフェース,利用者用文書,利用者の教育訓練

1.6.4. セキュリティ要件の識別

企業の情報セキュリティポリシーに即したセキュリティ機能に関する設計原則及び設計特性を選定して優先順位をつける活動と留意事項を理解する。

用語例

情報セキュリティ方針,セキュリティ要件,セキュリティ実現方式,安全性対策,信頼性対策,設計原則(最小限の原則,多層防御,システムサービスへのアクセス制限,システムへの攻撃にさらされる境界面の最小化及び防御),設計特性(アベイラビリティ,障害許容性(耐故障性),復元性(resilience))

1.6.5. 保守性の考慮

運用開始後の新機能の追加及び既存機能の変更に必要な工数を抑え,機敏性を獲得するための設計上の配慮の必要性を理解する。

用語例

無矛盾性,自己記述性,構造性,簡潔性,拡張性,移植性

1.7. ソフトウェア要件の評価及びレビュー

決定したソフトウェア要件がシステム要件に合致しているか,実現可能かなど,ソフトウェア要件を評価する際の基準,ソフトウェア要件定義書の作成後,システムの取得者及び供給者が共同でレビューを行うことを理解する。

用語例

双方向の追跡可能性(双方向のトレーサビリティ),外部一貫性,内部一貫性,テスト可能性,ソフトウェアシステムの実現可能性,運用及び保守の実現可能性,レビュー参加者,レビュー方式

1.8. 業務分析や要件定義に用いられる手法

1.8.1. ヒアリング

ソフトウェアに何が要求されているかを明らかにし,理解するためには,利用者からのヒアリングが有効であること,ヒアリング実施の手順,考え方を理解する。

用語例

ヒアリング計画,ヒアリング議事録

1.8.2. ユースケース

ユースケースは,一つの目標を達成するための利用者とシステムのやり取りを定義するために用いること,その特徴,目的,ユースケースを描く方法を理解する。

用語例

アクター,振舞い,ユースケース図

1.8.3. モックアップ及びプロトタイプ

ソフトウェア要求分析において,外部仕様の有効性,仕様の漏れ,実現可能性などの評価を行い,手戻りを防ぐためにモックアップ及びプロトタイプを作成することがあること,モックアップ及びプロトタイピングの特徴を理解する。

用語例

プロトタイプ版評価

1.8.4. DFD

業務プロセスをデータの流れに着目して表現する場合に,DFD を使用することを理解する。

用語例

データストア,データフロー,プロセス,源泉と吸収,外部実体,コンテキストダイアグラム,ミニスペック,段階的詳細化,構造化分析法,アクティビティ

1.8.5. E-R図

業務で扱う情報を抽象化し,実体(エンティティ)と実体間の関連(リレーションシップ)を表現する場合に,E-R 図を使用することを理解する。

用語例

実体,関連,データ中心設計

1.8.6. UML

オブジェクト指向設計の標準化された表記法としてUML があること,UML で用いる図式の種類,特徴,UML を用いてシステムの仕組みを表現する方法を理解する。

用語例

クラス図,操作,属性,ロール名,パッケージ図,アクティビティ図,ユースケース図,ステートチャート図,シーケンス図,コミュニケーション図,イベントフロー分析,バックトラック,コントロールフロー,分析と設計の役割分担,エージェント指向,モデル,フレームワーク

1.8.7. ユーザーストーリー

ソフトウェア要件を記述する方法としてユーザーストーリーがあることを理解する。

用語例

エピック,ユーザーストーリー,ストーリーポイント,プロダクトバックログ

1.8.8. その他の手法

その他,業務分析や要件定義に用いられる手法を理解する。

用語例

決定表(デシジョンテーブル),SysML,状態遷移図,状態遷移表