2. 品質保証プロセス 目次 2.2. 品質保証プロセスの必要性

2.1. ソフトウェア開発の流れ

皆さんはソフトウェアライフサイクルという言葉をご存知でしょうか。
ソフトウェアライフサイクルとは、ソフトウェアのライフサイクル、つまり、ソフトウェア製品が産まれてから死ぬまでの生涯(≒ライフサイクル)のことです。
ソフトウェア製品を開発する私たち自身が、そのライフサイクルを知るのは当然のことですね。

要求定義からテストまでの流れが”ソフトウェアができるまでのプロセス”になります。
以下に”ソフトウェアができるまでのプロセス”の詳細を記述します。

このプロセスを構成するひとつひとつの四角が、いわゆる”工程”です。
ウォーターフォール、スパイラル、プロトタイプ…開発プロセスのモデルとして提唱されているものはいくつかありますが、どれも工程という単位でプロセスを管理します。それだけに、各工程には明確な目的と責務があるのです。

要求定義製品要求事項をまとめる
(どのようなシステムを顧客が必要としているのかまとめる)
例)携帯電話で写真を撮りたい
基本設計要求定義を実現するためのシステムの外部仕様を定義
(顧客が必要とする機能をいかに実現するのか決定する)
例)カメラボタンを押すとカメラモードに切り替わる
詳細設計基本設計を実現するためのプログラム構成を定義
(基本設計をどのようにしてプログラム的に実現するのか決定する)
コーディング詳細設計、コーディング規約どおりに実装する
ソースコードレビュー詳細設計、コーディング規約どおりに実装されていることを保証
ユニットテスト詳細設計どおりに実装されていることを保証
(関数単位でテストを実施)
統合テスト基本設計どおりに実行モジュールが動作することを保証
システムテスト製品要求事項を満たしていることを保証



補足説明

  • 工程の設定方法・呼び方は、各社・各プロジェクトによって変わります。ここで示しているのは一例です。
  • ここで示しているのは、ウォーターフォール開発と呼ばれる開発プロセスです。
Copyright(c) 2009 GAIO TECHNOLOGY CO., LTD. All Rights Reserved
2. 品質保証プロセス 目次 2.2. 品質保証プロセスの必要性