開発せずとも欲しい機能が手に入る・・・が。
世の中にはソースコードさえも公開してくれるオープンソースプログラムがたくさんあります。 このおかげで企業も個人も安価に必要なシステムが手に入ります。先人には感謝しきれないですね。
次からはソフトウェア開発者の立場から述べますね。
ありがたいのはありがたいが・・。保守の見積もりが難しい
例えば分かりやすくお客様からあるシステムを受託したとします。 そのシステムはLinux上で動作するアプリケーションだったとします。
納品して半年後、Linuxにセキュリティ脆弱性が見つかってパッチが公開されたとしましょう。
当然、お客様はバージョンアップを早くしたいわけですが、受託したソフトウェアベンダーとしては困るわけです。
- 動作確認ができていない
- Linuxのシステムをすべて把握しているわけではないので、納品したシステムへの影響もわからない
- パッチの正常性をだれも保証していない(ということは何かがあればベンダーが責任を取ることになる)
- システムの正常確認をすると1〜3ヶ月かかる。。。。そんな検証稼働をすぐには確保できない
もちろん、ベンダーが採るべき選択肢は「検証するのでその費用がほしい」と顧客に伝えることですね。
ところがです。通常、上記のような大規模システムの場合は「年間保守」という契約を年間で結んでいます。なので、追加費用の催促などほぼ通らない。追加費用を請求するならば、「年間保守」とは違う説明を顧客にしないとだめなわけです。
そんな説明ができるぐらいなら苦労はしませんよ・・・。知らないLinuxのソフトウェアのバージョンアップでの影響範囲がわからないのに。
Redhat Enterprise Linuxとかにすれば? ・・・とおもうでしょ?
思うは思いますが、それだと保守費用が馬鹿にならない上、ベンダーで開発したソフトウェアへの影響は流石にRedHatチームでもわからない。あんたのところで開発したソフトへの影響なんて知らん、と言われてしまいます。 ので、適切なアドバイスは望めないでしょうね。
さいごに
上記のような苦悩は受託開発をされている企業の開発者ならば誰もが経験をするのではないでしょうか。