はじめに
システム開発・新規サービス開発をする際の流れとか文書とかがごちゃごちゃになってしまったので、自分なりにこれでいいんじゃないって思ったものを頭の整理を兼ねてここにまとめておきます。
自分なりの解釈ですので悪しからず。
目次
1. 要件定義
2. 基本設計(外部設計)
3. 詳細設計(内部設計)
4. 開発
5. テスト
6. まとめ
1. 要件定義
ここでは顧客からヒアリングを行い、どんなものを作りたいのかを明確にして「要件定義書」としてまとめる。
社内主導で新規サービス開発をするなら「企画書」とも言えるかも。
とりあえずざっくりまとめると、こういうものを実現しますということをまとめるフェーズなので企画チーム主導で動く。
2. 基本設計(外部設計)
ここでは要件定義書をもとに、具体的にどのような画面でどうやってそれを実現するのかを「基本設計書」としてまとめる。
書く内容は以下のような内容。
- システム構成図
- 機能一覧
- 画面仕様
- DBテーブル定義
開発チーム主導で動くが、きちんと企画チームや顧客とここまでは整合をとることが大事。
3. 詳細設計(内部設計)
基本設計を受けて、内部的にどのようにコーディングをしていくかを「詳細設計書」としてまとめる。
書く内容は以下のような内容。
- コーディング規則
- バックエンドのAPI仕様
- シーケンス図
- クラス図
ここからは開発チームのみで整合をとる。
4. 開発
基本設計書や詳細設計をもとにコーディング。
5. テスト
作ったものがちゃんと動くかテストする。
テスト内容は以下の通り。
- コードレビュー:ルールに従ってプログラミングできているか
- 単体テスト:プログラム部品が単体でうまく動作するか
- 結合テスト:プログラム部品を組み合わせて問題なく動作するか
- システムテスト:全体として要件定義の要求を満たしているかどうか
6. まとめ
色々と文書にまとめないといけないことがあって、会社ごとにルールとかも違うと思うので大変ですね。なるべく負担になりすぎない程度でまとめるというのが大事なんじゃないかなと最近思うようになってきました。