メンテナンスとか

システム開発をするときには、全体最適化を考えています。分析/設計/実装/テストの効率化も重要ですが、運用後の障害調査/対策も大切です。バグかオペミスかハード故障か、何らかの理由で動かなくなったり挙動不審になったときに、すぐさま原因を特定できて、対策できることが重要です。そういう観点で見ると、プログラムよりもDB設計の方が大切だと思うのです。いざとなれば、プログラムは捨てて作り直せば良いのですが、DBはそれまでの運用で格納されたデータを捨てるわけには行かないからです。
また、システムの開発者が忙しいとか、退職したとか、不運にも開発会社が倒産することもあり得るわけです。全体最適化とは、そういう事も考える必要があると思います。弊社が責任を持って面倒見ると言って、一般的でないソフトを採用するとか、その会社の特殊技能を使った開発をして、短納期・低コストで開発できてお客様が喜んだとします。しかし、バグ修正や追加開発時に、開発会社の倒産などでお客様が困るようでは全体最適化とは言えません。お客様が、多少コストは増えてしまっても、他の開発会社へ依頼できるようなシステムを開発すべきだと思うのです。
そういう観点で見ると、どんなに効果的であっても、誰も使ったことが無く、マイナーなままに終わるソフトを使うのには抵抗があります。そのソフトを使うのに初期コストが少ないのなら使っても良いと思うけど、そうでなくて使うのは良くないと思う。弊社は絶対に倒産しませんし、メンテナンスを行うことを保証しますと言えるのなら、別ですけど。