汎用的なソフトを作るvs専用ソフトを作る

こんにちは、兄です。今日は少しコラム的な投稿になりますので妹はお休みです。

タイトルの汎用的なソフトを作るエピソードを一つ紹介します。

各支店毎の売り上げ計算が必要になりました。

売り上げは、uriage_tokai.txtなど支店毎にテキストファイルがサーバーへ転送されてきます。
「全部を開いてエクセルに張り付けて合計してレポートに出すのが面倒くさい。ソフトを作れないか?」

「そうですね、それだとこういうのはいかがでしょう?」
 そういってアイデアを出します。

 作られるのは、uriage_???.txtを固定値で読み込み、合計計算しながらsum.txtを作るソフトです。
これにより、毎回エクセルに張り付けて合計関数を打つ必要はなくなりました。めでたしめでたし!

……となればいいのですが、そうはいかないのがソフトウェア業界。
客はソフトのお金をできるだけ下げたく交渉してきますが、こっちもメシの種。そう簡単には下げられません。

では、どうするか?

「他の事が起きた時に、ソフト作って貰わなくてもいいようにしたい」
こう落ち着きます。

「まず、uriage_xxx.txtは支店の増減で変わるかもしれないから、テキストファイルを読み込んでそのリストを全て読んで合計してほしい」
「はい」
「次に今は必要ないけど合計だけでなく将来的に標準偏差や最小二乗法によるフィッティングもしたいから、そういう機能も入れてほしい。スイッチで切り替えられるようにしといて」
「はい」
「ああ、支店も対象外にしたい支店が出るかもしれないから、グループで層別してグループごとのサマリと全体のサマリ、除外サマリの機能も追加してほしい」
「あと、支店毎に対象外の製品を見つけたら削除したい。え?条件?支店テキストに品番コードがある。この品番がxxxなら、yyyのコードを代わりに足してくれ」

そして出来上がったソフトウェアは、コピペするよりも膨大なパラメータ入力が必要になります。
「あのソフト屋は無能だ。高いお金を払ったのに使い物にならないソフトができてきた!」

こうなります。

そして、最初のアイデアだったuriage_ooo.txtを読み込み合計するだけのプログラムを他の会社に作って貰い、それを使うようになりました。

めでたし、めでたし。

とまあ、必要な機能以外でソフト機能を追加するときは、

「パラメータが面倒になりますが、いいですか?」
「それくらいの機能なら、後で必要になった時に言ってもらえれば対応しますよ」

その一言が言えれば、印象はだいぶ変わるのではないかと。
汎用的なソフトがいけない、という訳ではなく。
ただ拡張しすぎると、「それ、エクセルでコピペすればよくないですか?」となります。

気を付けましょう。


未分類

Posted by youwaka