開発工程と各キャリアのポジション
下の表はシステムの開発工程と各キャリアのポジションを表しています。
ご覧の通り、キャリアのポジションによって携わる開発工程が違うことがわかります。
要件定義 | 基本設計 | 詳細設計 | プログラム | テスト | 運用 | |
---|---|---|---|---|---|---|
プログラマ | △ | ○ | ○ | ○ | ||
システムエンジニア | ○ | ○ | ○ | ○ | △ | |
プロジェクトリーダー | ○ | ○ | ○ | |||
プロジェクトマネージャー | ○ | ○ | ||||
コンサルタント | ○ | ○ |
開発工程の流れ
- 要件定義
- 基本設計
- 詳細設計
- プログラム
- テスト
- 運用
依頼主(一般的にエンドユーザーと呼ぶ)の現状業務やシステムを分析し、各業務を実施するためにどのような機能が必要なのかを定義する工程となります。
この工程でエンドユーザーとシステム開発者側で認識のずれが生じると、後に致命的な結果を導く場合があるため、非常に重要な工程です。
依頼主が必要としている要件をまとめた要件定義を元に、どのようなシステムを開発すればそれらを満たすことが出来るかを検討する工程。
主に画面設計や帳票などの操作、入出力に関する機能設計、生成・保管されるデータベースの設計など、システムの基本的な仕様をまとめます。
基本設計に基づいて、システムとしてそれをどう実現するかをプログラムレベルに分割し、それぞれのプログラムで実現する機能を定義します。
システムをどのように構成し、それぞれがどのような処理を行うべきか、部分間の連携・統合の方法などを決めることが多いです。
基本設計と詳細設計で定められた設計書に基づき、実際にプログラムを作成する工程です。コーディングとも言います。
作成したプログラムが正常に作動するかを確認したり、機能を検証したりする工程です。品質を安定させるための重要な工程です。
プログラムテスト・結合テスト・システムテスト・運用テストなどの複数のテストにより、バグを修正し、納品完了な状態に仕上げます。
開発終了後も、システムが問題なく稼働するために、障害対応や作動状況の確認をします。
必要に応じて改善・追加要望に対応し、システムの運用や保守を行う工程です。
将来的には上流工程を目指そう
今回、6つの工程に分類して説明させていただきましたが、更に細分化すればより多くの工程があります。それだけシステム開発は奥が深いんです。
まず始めのキャリアとしては、「プログラム」「テスト」「運用」などの下流工程の経験を積み、スキルを上げることで「詳細設計」→「基本設計」→「要件定義」の上流工程に携われるようになります。
せっかくIT業界を目指すのであれば、スキルを磨きプロフェッショナルを目指してください。