ソフトウェア開発者の責任 |
こんにちは 西宮で起業!LocoApps 竹中です。 16年間システムエンジニアとして業務に従事してきましたが、少し失敗談を。
ソフトを開発していると途中で仕様変更が入ります。 仕様変更って何? というと、もう作り始めている、もしくは作り終わっているのに「この部分はこんな感じにして!」と途中で顧客から要望を変えられてしまうことです。
水回りを配慮して基礎をコンクリートで固めてしまっているので、容易には変更できないですよね。 コンクリートを割って、別の場所に移動はできるでしょうが、耐震性も考えると図面の引き直しが必要になりますし追加費用が必要になると思います。 さて話をソフトウェアに戻します。 家ではなく、会計ソフトの開発依頼を1年で発注したとします。 途中まで完成したソフトを見て動きが気に入らず、修正の依頼をします。
このやり取りをどう思いますか? おかしいと感じる方もおられると思います。 ですが開発者(業者)サイドからすると(★)の段階でちゃんと伝えなかった あなたが悪い のです。 なので追加費用と納期調整が必要なのは当然なのです。 という失敗を若い時にしました^^; 要は、追加工数(開発に必要な追加の時間)を、元々の期間であった1年に対して、更に1年必要だ!!とお客様に伝えたのです。 まぁひどく叱られました。 ですが、このやり取りは今でも多く行われています。 このやり取りの多くの問題は、最初の段階でお客様の要望を引き出せていない業者側にあります。 もちろんお客様側の責任も無くは無いですが・・・ この対応の難しいところは、実は要望がお客様の頭の中にあるとは限らないのです。 最初の時点では、消費税が10%になることをすっかり忘れていた場合、業者がそのことを察知してお客様に伝えるか、もしくは消費税率を簡単に変更できるようにプログラムを作っておく必要があります。 消費税のように明確なものは良いですが、このソフトは1人で1台のパソコンから使うのか、複数人がデータを入力したりするのかといった利用シーンを想定していないと、業務に沿わないソフトが出来てしまうかもしれません。 このように、相手の業務をしっかり考えて作れるかどうかがソフトウェアエンジニアとしての能力の良し悪しが分かれるところです。 逆に、相手の業務は考えれてもソフトウェアそのものを作れない人は、理想を追い求めて実現不可能なことを作り手に言ってしまいうまくいかないケースが多く感じます。 |
