ソフトウェア開発におけるコスト

システムを新規で作成すると、当たり前ですが、
維持するためのコストが別途発生します。

システムは、作ったらそれで終わりというものではなくて、
使って価値を生み出していかなければなりません。

実際の作業ベースで、システムを開発したSI会社がするのか、
エンドユーザ様側が自分でやるのかは別にして、人を割り当てる
以上コストは発生します。

また、動いている間、ずっと維持するためのコストを払わなければなりません。

こういうことを考えると、厳しい納期での新規開発をして、なんとか動くものの
中はボロボロというシステムが納品されて、稼働した場合、
開発コストは、下がるかもしれませんが、稼働中のコストは上がることが多いので、
ソフトウェアのライフサイクル全体で考えると運用、保守分のコストアップで、
開発費を安くしたぶんは、あっというまに相殺されてしまいます。

始めに残した負債は、利子がついて大きく継続的にコストとして、のしかかっていきます。

だとか、考えているとコストってのは、開発費じゃなくて、むしろ保守費用をふくめたもので
あるべきで、償却されるまで、もしくはシステムが捨てられるときまでで、
コストがいくらかかって、どれだけのプラスが得られたのかってことを考えないと駄目でしょう。

なんて考えていくと、コストとして増えていくのは、おそらく運用、保守費用じゃないでしょうか?
しかも長い間コストとして発生するここを下げるためには、どうしたらいいのか?

運用、保守の自動化でしょうか? 
これも大事なことですが、もとをたどれば、作る段階で、
問題の少ない(負債)の少ないものを作ること。

これができれば、運用、保守の段階での費用も予想の範囲内におさまりますし、
動いている間に問題が起きることも少ないので、予想より価値を提供することが
できないという問題も起きにくいでしょう。

前に書いたように、運用、保守の方が期間的に長いということは、コスト的にも、
初期開発より、派生開発や運用、保守といったもののほうが最終コストとしては、
かかる可能性が高いということを意味します。

コストは点で考えてると、線でみたときに大きな失敗に気付くことがありえます。

お客様が対価を払うっていうのは、そのものから得られる価値が支払った金額に見合っているから
だって考えると、システムを構築する側としては、お客様のビジネスとソフトウェアのライフサイクル
を考えて、点の提案じゃなくて、線の提案ができるかどうか?が、
大事なんじゃないかな。

得られた価値がシステムが捨てられるまでに支払ったコストを短期間で上回れば、
それが一番いいことですよね。

それを考えられる人が、これからは、
生き残っていくんだろうなとたまに考えたりしています。

言い換えれば、ただ物をつくって終わりと考えている人は駆逐されていくんじゃないかなと。

流行のSaaSなんてのも、TCO考えてそれがいいのか悪いのか冷静に考えないと、
なんか意味なかったよねということにもなりかねないと個人的には思っていたりもします。
ERPのカスタマイズとか運用コストだとかその他もろもろ色々この手の話はありますが。。