システム開発プロセスは,基本情報技術者試験をはじめとする情報処理技術者試験で頻出となる重要分野です。全体の流れや各プロセスの役割を整理できていますか?
システム開発プロセス=企画・要件定義・方式設計・詳細設計・構築・テスト・導入・保守・廃棄
システム開発は単なるプログラミング作業ではなく,システムの企画から運用・保守・廃棄まで,ライフサイクル全体を通じて計画的に進められます。各工程は独立しているわけではなく,前工程で決めた内容を次工程で具体化しながら進める「つながり」があります。
このページでは,システム開発プロセスの全体像を図や表で整理し,「どの工程で何を行うのか」が一目で分かるようにシンプルに解説します。初学者の方や,基礎を体系的に復習したい方に向けたまとめページです。
システムのライフサイクルとは(全体像)
システムのライフサイクルは,一般的には次のようになります。
共通フレーム2013とは(プロセス体系の基本)
共通フレーム2013は,システムやソフトウェアの構想から,開発,運用,保守,廃棄に至るまでのライフサイクル全般にわたって必要な個々の作業内容や用語の意味などを示したものです。システムの発注者と受注者の間で解釈の違いが生じないよう「共通の物差し」として示されています。
共通フレーム2013のプロセス体系
共通フレーム2013のプロセス体系は,次のようになっています。
テクニカルプロセスとは
テクニカルプロセスでは,システム開発作業を6つのプロセスで示しています。
| 企画プロセス | システム構想の立案,システム化計画の立案を行う |
| 要件定義プロセス | システムの利用者や利害関係者が必要とするサービスを提供できるシステムに対する要件を定義する |
| システム開発プロセス | 要件定義で明確にされた要件を実現するシステムを作り出す |
| ソフトウェア実装プロセス | システムを構成する各ソフトウェアを作り出す |
| ハードウェア実装プロセス | システムを構成する各ハードウェアを作り出す |
| 保守プロセス | 作り出したシステムやソフトウェアに対する支援を行う |
システム開発の流れ
システム開発の流れは,共通フレーム2013では,次のように規定されています。
※ V字モデル…システム開発の流れを表した図。V字型をしていることから,このように呼ばれる
※ システム企画(企画・要件定義)の詳細は,「システム企画の基礎まとめ」を参照
※ 以前は,システムとソフトウェアが明確に分かれておらず,要求分析→外部設計→内部設計→プログラミング→テストという流れだった
| 事業 | 企業経営のこと |
| 業務 | 日々継続して行う仕事のこと。販売業務,生産業務など |
| システム | 情報を処理するための仕組み。ハードウェア,ソフトウェア,その他の設備,人による活動などから構成される |
| ソフトウェア | プログラムやデータの組み合わせで,何かしらの機能を実行するもの |
広告
システム要件定義・システム方式設計とは(役割と流れ)
システム要件定義では,要件定義で明確にされた要件を実現するため,システムに求められる機能や性能などを定義します。
システム方式設計では,システムの最上位レベルでの方式を確立します。
※ 詳細は,「システム要件定義・システム方式設計の基礎まとめ」を参照
ソフトウェア要件定義(外部設計)・ソフトウェア方式設計(内部設計)・ソフトウェア詳細設計とは(役割と流れ)
ソフトウェア要件定義では,システムを構成する各ソフトウェアに求められる機能などを定義します。ソフトウェア要件の確立では,業務モデルの作成(DFDや状態遷移図などを使用),画面・帳票設計,ヒューマンインタフェースの設計,コード設計,論理設計,ソフトウェア適格性要件の作成などを行います。ソフトウェア要件の評価及びレビューも行います。
ソフトウェア方式設計では,ソフトウェア要件を実現するために,ソフトウェアをプログラム(ソフトウェアコンポーネント)に分割し,各プログラムに必要な機能やプログラム間の関係などを明確にします。機能分割と階層構造化,物理データ設計,入出力詳細設計,ソフトウェア結合テストのためのテスト要件の定義などを行います。ソフトウェア方式設計の評価及びレビューも行います。
ソフトウェア詳細設計では,各プログラム(ソフトウェアコンポーネント)をモジュール(ソフトウェアユニット)にまで分割して,より詳細化します。ソフトウェアコンポーネントの詳細設計,ソフトウェアインタフェースの詳細設計,ソフトウェアユニットテストのためのテスト要件の定義などを行います。ソフトウェア詳細設計及び要求事項の評価とレビューも行います。
※ 詳細は,「ソフトウェア要件定義・ソフトウェア方式設計・ソフトウェア詳細設計の基礎まとめ」を参照
ソフトウェア構築・テストとは(流れとポイント)
ソフトウェア構築では,プログラミング(ソフトウェアユニットの作成)や,単体テスト(ソフトウェアユニットテスト)などを行います。ソフトウェアコードとテスト結果の評価及びレビューも行います。
テストでは,システム要件定義からソフトウェア構築へと詳細化してきた順とは逆の順にテストを行います。各テストの評価及びレビューも行います。
※ 詳細は,「ソフトウェア構築・テストの基礎まとめ」を参照
システムの導入・受入れ支援・保守・廃棄とは(運用とライフサイクル後)
システムの導入,受入れ支援,保守,廃棄については,「システムの導入・受入れ支援・保守・廃棄の基礎まとめ」を参照してください。
まとめ
今回は,システム開発プロセスについて,企画・要件定義からソフトウェア構築・テスト,導入・保守・廃棄までの流れをシンプルにまとめてみました。システム開発は,ライフサイクル全体を通して各プロセスが連携して進められることが重要です。全体像が掴めたら,各プロセスの詳細ページでさらに理解を深めてみてください。
- ソフトウェア設計手法の基礎まとめ
- システム要件定義・システム方式設計の基礎まとめ
- ソフトウェア要件定義・ソフトウェア方式設計・ソフトウェア詳細設計の基礎まとめ
- ソフトウェア構築・テストの基礎まとめ
- システムの導入・受入れ支援・保守・廃棄の基礎まとめ
- レビューの基礎まとめ
- テスト管理の基礎まとめ
理解が進んだら,基本情報技術者試験の過去問題等にもチャレンジしてみてください。

