上流工程との違いは?下流工程SEの仕事内容

下流工程が持つフェーズと仕事内容

上流工程と下流工程の違いは実装作業の有無です。下流工程では、上流工程のSEがまとめたシステムの仕様を形にしていきます。1つのシステム開発の大きな流れの中で上流にあたる要件定義や設計の次の段階に進んでいることから、プログラムの実装段階以降を下流工程と呼びます。

下流工程が持つフェーズと仕事内容
LINEで送る
Pocket

下流工程の仕事内容

下流工程では、プログラミング言語を使って「コーディング」と「テスト」「導入」が行われます。コーディングでは、設計書の内容に基づいてプログラミングが行われます。コーディングしたプログラムが動くかどうかテストをひたすら繰り返し、不具合を修正しながら完成度を高めた後に実際の環境でプログラムが設計通り動いているかを確認します。下流工程の段階で仕様変更が生じてしまうと思いがけない問題が発生する可能性があります。そのため、上流工程でいかに正確な設計書が書けるかがプロジェクトの成功を左右します。

下流工程の流れ

下流工程のはじめは、上流工程で作成された詳細設計書に基づいた「コーディング」です。どの部分からコーディングを行うかの明確な決まりはないものの、共通プログラムがあればそちらが先になることがほとんどです。
コーディングの次はテストですが、コーディングが完全に終了してからテストを行うのではなく、1つプログラムを作成したら「単体テスト」を行います。ごく簡単なテストの場合はテストツールで自動化し、テスト業務を効率化します。テストで見つかった不具合は修正した上で再度テストを実施し、仕様通りの動きが確認できるまで繰り返されます。コーディングの段階にはいくつものフェーズがあり、その都度単体テストが行われます。
単体のプログラムが全て完成すると、全てのプログラムを結合します。結合した状態でプログラムが正常に動くかどうかを確認するため、画面遷移やデータの受け渡しなどあらゆる角度からの「結合テスト」が実施されます。テストの実施に際しては、実用を想定したテストシナリオが作成されます。単体テストでは条件をクリアしているプログラムでも、結合テストになるとバグが出てしまうことがあるため念入りに確認しなければなりません。
結合テストをクリアしたら、ユーザー環境かそれと同等の環境で「総合テスト」を実施します。プログラムが正常に動くかだけでなく、処理速度や他のシステムとの連携による影響の有無などを細かく確認していきます。
総合テストをクリアしたら、プログラムをユーザーに確認してもらう「運用テスト」を実施します。当初の要求通りの機能となっているか、以前のシステムから引き継ぐべきところがしっかりと引き継がれているかどうかなど、ユーザーにしかわからない部分をこの段階で確認してもらいます。そのようにしていくつものテストをクリアしたら新しく完成したシステムをリリースします。