1.要件定義
1.1 システム要件定義
既存業務の確認を行い、顧客の要望をヒアリングしていく。
既存業務フロー、システム導入後の業務フロー作成などを行う。
機能一覧の作成
1.2 ソフトウェア要件定義(外部設計)
画面や帳票などのインタフェース、セキュリティ、保守運用などの非機能要件もここで決める。
ここで、後続フェーズの見積もりを出すことが多い。(要件定義のお金は別でもらう)
2.システム設計
2.1 システム方式設計
ハードウェア、インフラ周りの検討、プログラミング言語、フレームワーク、必要なソフトウェアパッケージなどを検討する。
2.2 ソフトウェア方式設計(内部設計)
開発するシステムを構成する、サブシステムに分解してそれらをどのようにつなげるかを検討する。
2.3 ソフトウェア詳細設計
各プログラムごとに、処理の流れと処理の詳細を記載する。
プログラムを日本語で書くイメージ。
3.開発
3.1 コーディング
詳細設計をもとに、プログラミングを行う。
3.2 単体テスト
プログラムの開発単位ごとに、ホワイトボックステストを作成し、実施する。
UT(Unit Test)
4.結合テスト
モジュールを結合してテストする。
ITa(Interface Test a)結合テストA
開発するシステム内で作成したプログラムを結合テストする。
ITb(Interface Test b)結合テストB
開発するシステムを他のシステムと結合テストする。
5.システムテスト
完成したシステムを全て結合して、本番想定でテストする。
ST(System Test)
6.ユーザーテスト
システムを顧客環境に反映し、顧客が実際の業務を想定して使ってテストする。
UAT(User Acceptance Test)ユーザー受入テスト。