先日、システム開発のリリースを無事完了しました。
数億円規模のプロジェクトでしたが、遅延もトラブルもなく見事な成功でした。
プロジェクトの成功の第1番目の要因はチームワークにありました。
顧客までを含めたプロジェクトチームのチームワークです。
この顧客は、実は一度同じプロジェクトを、別のSIerとやって頓挫してしまっていました。
この頓挫の苦い経験が、今回のプロジェクトでの動き方を変えたんでしょう。
前回は、情報システム部門にお任せで、SIerと情シスが要件・仕様を詰めていたらしいのですが、
今回は、ユーザー部門が前面に立ち、我々とやり取りをしました。
ユーザー部門が協力的であることは、開発の成功のために最重要なんだと思います。
ユーザーさんからは
「何か起こったときは、一緒に解決しましょう」
というスタンスが感じ取れました。
責任の擦り付け合いに要する時間や、予防線・論理武装などの
無駄な時間を省けたことが、開発効率を加速させたのです。
長い開発期間の内、SIerが完全に独立して行えるのは
コーディングフェイズだけであり、全体の4分の1程度です。
調整や仕様決め、テスト+修正に至るまで顧客とのやり取りは続きます。
この期間中、ずっと相手との腹の探りあいをやっていたらと思うとぞっとします。
無駄な腹の探りあいや、交渉戦術が、最も開発効率に悪影響を与えるということを感じます。
信頼しあったチームでは、互いの裁量の範囲が増えてスピーディーに物事が決まるのです。
自律・分散・協調
という分散システムの基本原理は、チームにおいては信頼によって成り立つのだと感じました。