ネットサービスとかソフトウェアってバージョンを重ねるごとに機能がどんどん増えていって複雑怪奇になっていくなぁと思うので、なんでそうなるのかを考えてみました。例によって裏付けのない適当な思いこみですので、そんなもんだと思って読んでいただけますと。
まず一つあるのは、サービスやソフトが成長する中でそもそも巨大化して見通しが悪くなる点があります。全貌を把握する人は居なくて、みんな自分が担当している一部分の領域のことしかわからなくなります。それぞれが自分の担当部分についての局所最適化は出来るのですが、全体最適は誰にも出来なくなります。結果的に、部分的には便利なんだけど、全体としては統一性のない複雑な機能の集合体になってしまい、時には重複した機能が別々の場所に出来上がったりもします。
一度実装された機能は減らせないというのもあります。本来なら不要になった機能は削除できるといいのですが、勇気をもってその決断が出来る人はなかなかいません。その機能を削除して万一にでも何か問題が起きたら誰が責任をとるんだって心配をして、結局盲腸となった機能が山盛り残ってしまうというのもあるあるですよね。
競合とのスペック競争に勝つためにというのもあります。ターゲットのユーザーがその機能を欲しているのかどうかに関係なく、競合がその機能を実装しているのならうちも負けじと実装しなければってわけですね。比較サイトなどで機能ごとに星取り表が書かれてしまいますので、そこで×がついているといかにも劣っているように見えてしまいますよね。実際のサービスやソフトの使い勝手というのはそんな星取り表では比較できないわけですが、現実にはお手軽に星取り表が使われてしまいます。まあ、使い勝手って最終的には好みの問題になってしまうので比較が難しいってのもありますが。ともあれ、星取り表を埋めるための機能開発というのはどうしても行われるわけです。
そして採用側の担当者としても、この星取り表というのが重要になってしまいます。導入にあたって複数のサービスやソフトを比較するわけですが、そこで星取り表で劣っているものは稟議にあげにくい。稟議する側としても、機能が劣っているものに対して決済しにくい。その×がついている機能が自社にとって必要ない機能だったとしても、将来その機能が必要になるかもしれないという万能ワードの前では無力ですよね。結果的に星取り表で最も多く○が付いているサービスがソフトが選ばれていく。真の意味での使い勝手の比較はされずにですね。それは言い方は悪いですが、担当者と決済者の責任逃れのためとも言えますかね。
まあ、機能が増えるといっても、本当に必要な機能が増えて、その結果使いやすいサービスやソフトになっていれば文句はないんですけどね。必ずしもそうはなってないよなぁというお話です。