« RedmineのRESTful APIを使う | トップページ | Redmineユーザによるオンライン会議 »

2010/05/14

ペア作業やミーティングをクラウド化する

大規模プロジェクトになるほど、コミュニケーションの重要性が高まる反面、複雑性も増す。
コミュニケーション作業そのものをクラウド化できないか、アイデアをメモ。

大規模プロジェクトでは、小規模プロジェクトとは違った問題が現れてくる。
メンバーが増えるので、XPのようなオンサイト顧客、ペアプロのような対面の作業がやりにくくなる。
メンバーが増えるほど、コミュニケーションパスは増大し、誰が何を言ったのか、すぐにわからなくなる。
ちょっとした仕様変更を伝えるにも、逐一ドキュメントに残す作業が増える。

メンバーが多いほど、トップのマネージャの考えが伝わらないのだ。
まさに伝言ゲーム。

一番の問題はミーティングにあると思う。
ちょっとしたレビュー、仕様変更のフィードバック、課題の棚卸のために、十数人のメンバーが2時間以上も会議を開く。
マネージャやプロジェクトリーダーなど地位が高い人ほど、1日の大半が会議で潰れてしまう。
10人が2時間の会議を開くだけでも、20人時間、つまり2.5人日分も浪費している。
それだけの価値があるかどうかも不明。

だが、ミーティングをクラウド化することで、ミーティングを効率化できないか?
各メンバーは自席のPCで、Skypeで議論しながら、GoogleDocsのドキュメントを複数人が更新し合って、一つの議事録を作り上げる。
あるいは、UStreamやWebカメラなどを使って、物理的に離れたチーム同士でミーティングをスムーズに行う。

レビュー作業が重要と分かっているのに、そのレビューが不十分な原因の一つは、せっかくレビューしたのに理解漏れのために仕様が漏れてしまうこと。
ペア作業みたいにやりたいけれど、5人以上のレビュー会議では、1台のPCで作業できない。
ならば、各自の自席のPCでSkypeで議論しながら、一つの設計書を見ながら、レビューアが直接修正してはコミットすればいい。そうすればレビュー漏れもない。

ペアプロもそうだ。
特にオフショア開発の場合、Skypeで議論しながら、SVNにある一つのソースコードを複数人のレビューアがソースレビューすればいい。
Eclipseには、地理的に離れていてもペアプロできるプラグインもある。

幸いなことに、SkypeもUstreamも導入コストは小さい。
その気になれば、開発チーム内でストリーミングサーバーを作って、Webカメラを使って、地理的に離れたチーム同士でミーティングできるようにすればいい。

とにかく、大規模プロジェクトになるほどコミュニケーションのコストが大きい。
システムに非機能要件があるように、単体のコンポーネントの信頼性が高くても、全てのコンポーネントを結合して初めて分かる問題もある。
大規模プロジェクトのコミュニケーションコストの大きさは、小規模プロジェクトにはない特有の問題なのだ。

大人数の作業環境そのものをクラウド化して、誰でもその作業が見えるようにして、すぐにフィードバック出来る環境が欲しい。

チケット駆動開発は、進捗情報を自動集計することによって、進捗報告のコストを無しにした。
同様に、クラウド化によってコミュニケーションコストを下げることはできないか?
同様に、昨今の技術革新でコミュニケーションをサポートできないのか?

|

« RedmineのRESTful APIを使う | トップページ | Redmineユーザによるオンライン会議 »

Agile」カテゴリの記事

ソフトウェア工学」カテゴリの記事

プロジェクトファシリテーション」カテゴリの記事

プロジェクトマネジメント」カテゴリの記事