システム開発とはどのようなものによって成り立っている作業なのか?

システム開発の上流工程と下流工程とは?

その多くが受託開発であるシステム開発は、システム設計という上流工程と、プログラミングという下流工程とで成り立っています。受託開発では、顧客の要望に適ったシステム作りをしなければなりませんから、顧客の要望を要求定義仕様としてまとめ上げ、それにもとづいて綿密にシステム設計を行います。このシステム設計という上流工程が完成すると、この設計図を元にプログラムを作成する下流工程に入るのです。このように、システム開発とは、その上流工程で顧客の要望をシステム化し、その下流工程でこれをコンピューターで動かせるようプログラム化する、という作業なのです。

何故、システム開発には上流工程と下流工程があるのか

このシステム開発の上流工程にはシステムエンジニア(SE)が当たり、下流工程にはプログラマーが当たる、という役割分担がなされているのが一般的です。というのも、システム設計という上流工程と、プログラミングという下流工程とは、その役割も作業内容も異なっているからなのです。上流工程であるシステム設計とは、顧客の要望するシステムをコンピューター・システムとして実現するための設計作業ですから、この作業工程なくして顧客の要望をコンピューター・システム化することはできません。この設計が出来上がれば、後はその設計図をコンピューターで実行することのできるプログラム化、という下流工程であるプログラミングという作業工程となるのです。

SEとプログラマーに求められる資質と能力の違いとは

この上流工程であるシステム設計と、下流工程であるプログラミングとでは、その役割も作業の性質や内容も異なっていますから、前者はシステムエンジニア(SE)、後者はプログラマーという別々の担当者が担うことになります。システム設計とは、顧客の要望をコンピューター・システム化するための設計作業であるために、これにはより顧客の要望内容寄りの知識とそれを体系化するための能力が求められるわけです。対してプログラミングには、システム設計をいかにすればコンピューター化しやすくなるのか、というよりコンピューター寄りの知識とスキルが求められることになるわけです。このために、SEとプログラマーに求められる資質や能力というものは、それぞれに異なっているわけなのですね。

古いシステムであるnotesのマイグレーションの移行が難しく、従来のシステムを使い続けている企業が散見されます。一番早いのは、大手システム会社の専門家に相談をし、汎用的なシステムを導入することです。

未分類カテゴリーの記事