理系学生日記

おまえはいつまで学生気分なのか

はい

SIer はシステム構築で対価を得ます。
コードがスパゲッティになろうが、拡張性にとぼしかったり、スケールアウトできないアーキテクチャになっても、(それらが要件にならない限り)評価には関わらないことも多いようです。要件外の事項の実現に余計な工数が発生したのであれば、むしろ悪にすらなり得ます。10 億円の仕事に 20 億円のコストをかけることはできません。
これはまぁ当然ですよね、だって企業なんだもの、利益重要だもの。拡張性を高めるために 10 億円の仕事に 20 億円かかりましたー! とかないですよね。ないない。

一方で、利益を追求するのであれば「動かせば良いんだから、既存システムへの影響を防ぐために、とりあえずビジネスロジックはコピペしろ! そうすれば既存システムへの影響は皆無だから、リグレッションテスト工数が削減できるぞ!!!! 利益率超アップだ!!!!!!!」という、刹那的な利益を追求するアプローチが存在し得ます。


いまぼくは 2 つの話を出しました。

  1. クオリティを高めようとして 10 億円の仕事のコストを 20 億円にできる(赤字にできる)
  2. 最悪のアプローチを取れば、利益率をアップさせることができる(黒字にできる)

ぼくが非常に悪いヤツで今の会社が大嫌いだったら 1. を取るかもしれません。あるいは、会社での出世を超狙いまくってたら、2. の方法を取るかもしれません。そんな悪いヤツが SIer にいたとして、それを防ぐ手段がありますかっていうのって、スゴく大きな問題だと思うんですよね。1. の方はさすがに会社が気付くと思いますけど。


ぼく自身は、そういう悪いことをしようとは思いません。良識問題だと思いますし、エンジニアとしての矜持の問題だと思います。
でも、こういうアプローチ、とくに 2. のアプローチを制度的に防ぐ仕組みがないことって、スゴく問題なんだと思うんですよ。良識とか矜持だとか、そういう精神論がストッパーになっているのって危険だと思うんですよね。ちゃんとした指標なりがないと防げないものなのに、その指標がないってヤバいと思うんですよ。


たとえばこれを読んでいるあなたが SIer にシステム構築を頼む立場だったとして、次の 2 社がコンペに応募してきたとします。

  • 一方は拡張性等に気を配って開発を行う A 社。
  • 一方は上記の刹那的アプローチを採用する会社。機能要件は実現できる上、コストは A 社の半分。

これで A 社の話を聞く気になりますかっていう問題です。

情報の非対称性

上のようなアプローチが取れてしまう理由って、情報の非対称性にあるのではないかと思っています。
SIer とお客さんの間には、ときに

  • 医者と患者
  • 携帯電話契約時の店員と客

レベルの非対称性が存在します。上記の問題も、「品質」に関する指標がないことに起因することによるものだと思ってます。


お客さんは IT の専門家ではないから、専門家たる SIer にシステム構築をおねがいするわけです。なので、どういう IT システムを提案していて、御社はそのシステムをこうこうこういう理由で採用だッ!!! っていう判断基準は提供すべきです。「良い品質のシステム」とは何なのか、その「良い品質のシステム」をどう作るのかがあってはじめて、費用の話だと思うんです。
本来は費用対品質であるべきところを「費用」しか見せず提供せず、だったら、そりゃあ単純に SIer 間で費用減らしの負のスパイラルしか行き着く先はないとおもいます。