システム開発の流れは、大きく上流工程と下流工程の2つに分けられます。
ここでは、上流工程と下流工程の違いおよびそれぞれの工程で必要とされるスキルについてみていきましょう。
目次
上流工程・下流工程の違い
システム開発の大まかな流れとしては、要求分析→要件定義→機能設計→コーディング→各種テスト→納品となっています。
最初の要求分析では、どのようなシステムを作るかを明確にします。
システムの発注側と開発側で認識が食い違うことのないように、しっかりと具体的なドキュメントを作成していきます。
要件定義では、要求分析で決定したことをより具体化していきます。
予算とも照らし合わせながら実装する機能を検討し、内容を要件定義書にまとめます。
機能設計では、機能についての詳細を固めていきます。
ここでしっかりと詰めていかないと、全く使えないシステムになってしまう可能性があるので注意が必要です。
そして、一般的に上流工程と呼ばれるのは要求分析、要件定義、機能設計までのステップです。
それ以降のステップは下流工程と呼ばれ、実際にプログラムを作っていくコーディングやシステム作成途中で行われる各種テストなどが含まれます。
なお、一般的にシステム開発においてより重要だといわれているのは上流工程です。
これは、上流工程に不備があるとプロジェクトそのものが失敗に終わる可能性が高いからだといえるでしょう。
上流と下流で求められるスキル
上流工程に携わるうえで必要なスキルとしては、まずはヒアリング力が挙げられます。
顧客の要望をきちんと引き出すことができなければ、満足してもらえるシステムを開発することはできません。
そして、ドキュメント作成が多いのも上流工程の特徴です。
そのため、高いドキュメンテーションスキルは欠かせないといえるでしょう。
さらにチームをまとめるリーダーシップやマネジメント力も重要で、とくに大きな問題に直面したときにはその力が試されます。
チームがうまく機能するように普段からメンバーとの意思疎通を図ることが大切だといえるでしょう。
それに対し下流工程に求められるスキルは大きく異なります。
下流工程の基本的な仕事は、上流工程で作成された設計書を元にプログラムを作成することです。
そのため、長時間のパソコン作業に集中して向き合える能力が重要だといえるのではないでしょうか。
下流工程から上流工程にステップアップを
どんな一流のエンジニアでも初めは下流工程からスタートします。
しかし、給料が高いのはやはり重要だといわれる上流工程で働くエンジニアです。
下流工程で経験やスキルを積みながら、最終的には上流工程へのステップアップを目指してみてはいかがでしょうか。
ネットワーク・データベース・クラウド・サーバ案件多数! インフラエンジニアの転職なら「FEnet インフラ」
インフラエンジニア専門の転職サイト「FEnetインフラ」
FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。
転職をお考えの方は気軽にご登録・ご相談ください。