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

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

システム開発における上流工程と下流工程ではそれぞれ役割が違います。では、SEが担当している上流工程の「要件定義」や「設計」に関する工程の部分については、具体的にどのような仕事をするのでしょうか。

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

戦略立案からシステム選定まで

要件定義や設計の前に、システムを必要としている企業のIT戦略を立てていく必要があります。その企業の目指している売上目標や組織として目指していることなどについての戦略を明確にし、それらの目標を達成するために必要なシステムはどのようなものなのかについて考えます。システム開発にどの程度の予算と時間をかけていくのかについてもこの段階で計画を立てていきます。ここまでは、上流工程のさらに上の「超上流工程」として分ける考え方もあります。
企業のIT戦略が固まったら、開発業務の流れや手順をまとめてベンダ選定のステップへと進みます。パッケージソフトウェアや自社開発、SIerなどの中から希望に合うベンダを選定するために、いくつかの会社から提案してもらって比較検討するのが一般的です。システム開発は手がけるプロジェクトチームの質によって成果がまったく異なったものになる可能性があるので、ベンダ選定はプロジェクトの行方を大きく左右する重要な工程です。成功しているシステム開発プロジェクトのほとんどは、戦略立案からベンダ選定までの段階を丁寧に進めています。

要件定義から設計まで

戦略立案からベンダ選定までが終わったら、具体的にどのようなシステムを作るのかを考える段階に進みます。要件定義では、開発するシステムを使って何を実現したいかを考えていきます。発注する企業側はこの時点でやりたいことがある程度決まっているはずなので、その計画がシステムで実現できるものなのかどうかを含めてSEと細かくすり合わせを行っていきます。この段階で双方がしっかりと話し合って意思を通わせておかないと、合意内容を大きく誤解したままプロジェクトが進んでしまいます。もし誤解に基づく設計のまま作業がスタートしてしまうと、ある程度開発が進んでしまってから大幅な仕様変更を求められてしまうことになります。要件定義書が完成したら、その内容をもとに基本設計と詳細設計が行われます。
基本設計については専門知識がない人が見てもわかる表現が用いられ、詳細設計についてはプログラミングの知識がある人でないと読み取れない表現が用いられます。完成した設計書通りに下流工程の作業を進めるので、要件定義から設計までを担当するSEは、クライアントと開発現場双方の意見や事情を考慮した上でバランスの取れた計画を立てていく責任があります。