稟議を通すには金額が要る。だから一式いくらで出してほしいと伝えたのに、返ってきたのは幅のある概算か、まず調査からという提案だった。誠実なのか、逃げているのか、判断がつかない。この記事は、その金額が出てこない理由を発注する側から見て説明します。
先に結論を書くと、既存システムの作り直しで最初から固定価格が出るときは、たいてい調べていないか、範囲を狭く切っています。
新築と建て替えは違う
新しく作るものなら、要件を並べれば工数はある程度読めます。作り直しが違うのは、作る前に、いま動いているものが何をしているかを確定させる工程が挟まるからです。
ここが読めません。仕様書があっても実装と食い違っていることは珍しくありませんし、十年動いているシステムには、誰も説明できない処理がいくつも残っています。特定の取引先だけ計算が違う、ある年より前のデータは別の扱いになる。こうした例外がいくつあるかは、開けてみるまで分かりません。三つかもしれないし、五十かもしれない。その差がそのまま金額の差になります。
金額が動くのはコードの外側
費用が膨らむ原因として、プログラムを書く手間を思い浮かべる方が多いのですが、実際に見積もりを動かすのは別のところです。
ひとつはデータの移行です。古いシステムの中身は、長年の運用で整っていないことがあります。同じ取引先が表記違いで二つ登録されている、使わなくなった項目に別の意味の値が入っている。新しい形に入れ直すには、どう直すかを業務側と決める必要があり、この相談の回数は事前に数えられません。
もうひとつは外部とつながっている部分です。銀行、取引先、社内の別システム。相手の都合で動いているので、こちらの予定では変えられません。先方の確認待ちが二か月続くこともあります。
三つめが、切り替えの当日と前後です。いつ止めるか、失敗したらどう戻すか、旧システムをいつまで残すか。ここは業務が止まるかどうかに直結するので、慎重にやるほど時間がかかります。
固定価格にすると、どこかにしわ寄せが出る
それでも固定で受ける会社はあります。読めないものを固定にするとき、受ける側は必ず備えをします。
備え方は二つです。読めない分を上乗せして高く出すか、範囲を狭く定義して、外れたものは追加費用にするか。前者なら払いすぎになり、後者なら始まったあとで交渉が続きます。データ移行は別途、運用手順の整備は別途、社員への説明は別途。そう言われたときに、こちらは断りにくい状況になっています。
安く見えた見積もりが、終わってみると総額で高くついた。この形は、最初の金額が固定だったときにこそ起きます。
調査を先に切り出す
現実的な進め方は、金額を確定させる作業そのものを、小さく発注することです。
数週間の調査で、画面とバッチの数、外部とつながっている箇所の一覧、危なそうな部分、作り直す範囲の案、そして幅のある概算が出ます。ここまで来れば社内で説明できますし、その資料を他社に渡して相見積もりを取ることもできます。調査を請けた会社に本体を発注しなければならない理由はありません。
調査を頼むときは、終わったときに何が手元に残るかを先に決めておきます。口頭の報告だけで終わると、次に進めません。
幅のある見積もりの読み方
概算に幅があること自体は問題ではありません。見るのは、幅の理由が説明されているかどうかです。
上限に振れるのはどういう場合か、下限で収まる条件は何か。これが書いてあれば、発注側でも管理できます。移行対象のデータを絞れば下がる、外部連携を今回は触らなければ下がる。そういう形で選択肢が示されていれば、金額はこちらの判断で動かせます。
逆に、幅だけあって理由の説明がないものは、単に自信がないだけです。
この段階で決めなくていいこと
総額を先に決めようとして止まっている案件を、よく見かけます。最初に決める必要があるのは総額ではなく、調査にいくらまで使うかと、いつまでに判断するかの二つです。
技術の中身、開発の進め方、使う道具。このあたりは今決めなくてかまいません。決められる材料が揃っていないうちに決めると、あとで変えにくくなるだけです。
私たちも、現行システムを見る前に固定価格は出しません。出せる数字が当てずっぽうになり、結局どちらかが損をするためです。調査の費用と期間なら、話を聞いた段階でお答えできます。