昨日のエントリ(分離や分散は問題に対する解決策などではなく、問題そのものとなる)
の通り、僕は分離や分散は問題そのものだと考えています。
分離・分散によって、効果が上がっているプロジェクトにお目にかかったことがありません。
分離の弊害の中でも、最も弊害が大きいと思うものが2つあります。
1つは、昨日のエントリに記載しました。
「物語の断絶」です。
つまり、背景にある要件や、経緯が断絶することです。
もう1つは、責任感の断絶とでも言いましょうか。
他人事や、他人のせいにできる環境を生むことです。
「この仕様は、あの会社が勝手に決めたこと」だとか、
「このバグは俺たちのせいじゃない」という発想は、
一般的な現場でも、よく目にし、耳にする会話だと思います。
でもお客さんから見たら、1つのチームなんですよね。
責任感を統合するべきだ。
とは抽象的な言い方ですが、「全員が責任感を持てること」をコンセプトとして
業界の仕組みを考えなおして見るのはどうでしょう。
「他人事にしない。」「自分ごととして捉える。」という姿勢が崩れたら、
良い仕事なんてできるわけないと思います。
これは大手さんだけではなく、中小のベンダーや、個人でやってるSEさんも持つべき姿勢だと思います。
どうするべきか。以下、理想論も含みます。
結論から言えば、はじめから複合企業でプロジェクトをやるという前提で受注する。つまり、
「企業横断のプロジェクトチーム」
というのが健全だと思います。
ある意味、大手SIerさんを盟主とした同盟関係です。
区切りかたも、フェーズごとの区切りではなく、基本的には「縦割り」サブシステムごとの区切りとします。
中小のベンダー会社には、大手さんの営業力は魅力だし、そもそも中小単独では与信でアウトになります。
大手SIerさんが自分たちのところで、大量のプログラマーをプロパーとして抱えるのは辛いというのは判ります。
だからこそ、外注という位置づけではなく、信頼できるパートナー会社を育てるべきでしょう。
その上で、統括マネジメントと瑕疵責任は、大手SIerさんが担当するため、
大手さんの取り分が多いのは理に適っています。
僕らの会社は中小ベンダーで、今は傭兵団のようにチーム単位でプロジェクトを渡り歩いて戦っています。
しかし、後ろのほうから作戦指示だけして甘い汁だけ吸おうという
腰の引けた殿様のところで戦いたいと思う傭兵はいません。
傭兵は、泥臭い戦いだけやってろという殿様にもついてはいきません。
旗本衆(大名直属の武士団)が、先陣を切って一番の難敵に向かうからこそ、我々傭兵団はサポートします。
今、信頼関係ができてる、良い感じの取引先は、
そういう組織の人格が、尊敬に値する企業さんが中心です。
我々のような傭兵集団においては、大手さんが苦手とする分野を
ちゃんとフォローできるように、刀を磨かなくてはいけません。
そのために、我々中小ベンダーがするべきは「人出し」ではない体制作りと技術の研磨が必要です。
そして、自力でもプロジェクトをまわせるぐらいの責任感でプロジェクトに望むことが必要です。
これって、今までの業界と大きくかわらないじゃないかとも思います。
でも、今までの全部が間違っていたとは思わないから
正しいことをしてたところは評価して、改めるところを改めるべきかなと思います。