1430_この世界の常識がシステムの世界では非常識となることがある

この世界の常識

システム開発のプロジェクトに携わっていて難しいと感じることがあります。それはこの世界の常識がシステムの世界では非常識である場合があるということです。たとえば、お客さんとエンジニアの常識が全く違う前提だと話が全く通じないとことになります。

これは専門用語を知っているかどうかではなくて同じ常識をもっているかどうかです。常識とはこの世界の自然の法則やルールです。たとえば、重力があるとか、慣性の法則とかです。また、個人的な習慣、商習慣なども含まれます。先日も前提となる常識が全く違うことで説明に苦慮することがありました。

いくらかかるのか?

お客さんのシステムでプログラミング言語のバージョンがかなり古いというのでアップデートすることになりました。調査したところ、現状のバージョンをテスト環境でまずはアップデートしてみて動かないところを随時修正するよりも、ゼロから造り直したほうが早いことがわかりました。お客さんに伝えたところすぐに「いくらかかるのか?」という問い合わせがきました。

これはこの世界の常識で考えれば正しい反応です。それは、いくらかかるのかがわからないと意思決定ができないからです。そして、着手する前にいくらかかるのかはわかって当然だという前提もあります。なぜなら、現実世界では家を建て直す時に、建て直す費用は事前にわかるからです。

法則やルールがガラッと変わる

しかし、システム開発では同じような常識で考えることはできません。なぜならプログラミング言語のバージョンが変わるということは、この世界の自然の法則やルールがガラッと変わるほどの変化があるからです。

たとえば、家の建て直しであれば、建物は地面の上に立って、柱を立てて、壁と屋根を付けて水道電気ガスを通せばほぼ完了します。しかし、システム開発ではもとのバージョンがそうであったとしても最新のバージョンでは「そもそも、家は宙に浮いていないといけない」とか「壁は透明でないといけない」とか「電機じゃなくて石炭を使え」とかそもそもの前提が大きく変わることがあるからです。

それぞれの常識

ですので、まずはシステムの土台を作って、一部の機能だけを新しいバージョンに移してみることで全体の工数を把握することができます。壁を透明にするのは結構大変だよねとなれば工数は大きくなりますし、石炭に置き換えるのは簡単となれば時間は短縮できます。もし、そういったシステムの常識をもっていないと「なぜ最初に見積もりがだせないのか?金額がわからなのにGOできるか?」という議論になってしまうわけです。

これは決してシステムの世界に限ったことではなく、人それぞれが同じようにそれぞれの常識をもっているんだと思いました。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)