大人になりたくない

プログラミング系。最近は主に vvvv 。

マネージャやリーダーには是非読んでおいてほしい「組織パターン」

「組織パターン-チームの成長によりアジャイルソフトウェア開発の変革を促す」

最近出版され本屋で並んでいたアジャイル系の本3冊のうちの1冊。
著者はジム・コプリエンとニール・ハリソン。

組織パターン (Object Oriented SELECTION)

組織パターン (Object Oriented SELECTION)

本書で書かれているものは、散発的な経験から作られたプロセス定義ドキュメントとは違い、
多くの実際のプロジェクトから、見つけ出され抽象化された、パターン言語。
なので、他の開発プロセスの本に比べ、一段階抽象化されているので、この本から得られる物が多い。

デザインパターンオブジェクト指向の心を学ぶための近道になるのと同様に、この組織パターンは組織を上手く動かすための心を学ぶための近道になる。

また、アジャイルと題されているが、要件定義、設計、実装を同時に行う、並行的な開発を、アジャイルなどを意識せず(むしろウォータフォール型を忠実に守ろうとしていたとしても)、自然と行っているプロジェクトは多い。

アレグザンドリアン形式かつ重要な所は太字なので読みやすいし、読み返しやすい。
パターン名を忘れても、すぐにあぁそれかと思い出せる。

また、読みこなすのに少し前提となる知識が必要になる。
必要な知識:
オブジェクト指向の基礎的な知識やツール、開発経験
・パターンとパターン言語に関する基礎的な知識
開発プロセスや開発手法の基礎的な知識
・プロジェクトでのロールの重要性


本書に書かれているパターン言語は4つある。
・プロジェクトマネジメントのためのパターン言語
・組織の漸進的成長のためのパターン言語
・組織のスタイルのためのパターン言語
・人とコードのためのパターン言語


たくさんのパターンが書かれているが、3つだけ心に残っているパターンを簡単に挙げておく。

4.2.9「防火壁」から
現場と交流する事によって「手伝う」必要があるとステークホルダーが感じているとき、ステークホルダーをなだめて、開発者やプロジェクトを完了に進めている人の気を逸らさないようにするのは重要だ。
(中略)
それゆえ:
開発担当者を外部のロールとのやりとりから守るマネージャーロールを作ろう。このロールの責任は「ペストを寄せ付けない」ことにある。
(省略)

5.1.7「コンウェイの法則」から。
組織の構成要素(たとえば、チームや部署、課など)がプロダクトの本質的な構成要素を反映していない場合、あるいは組織間の関係がプロダクトの構成要素間の関係を反映していない場合には、そのプロジェクトは困った事になるだろう。
(中略)
それゆえ:
組織をプロダクトのアーキテクチャと対比できるようにしよう。
(省略)

5.2.10「アーキテクトも実装する」から。
ソフトウェアプロジェクトでは、リーダーシップの及ぶスコープを広げつつ、実践に対する深みや注意を犠牲にしてはならない。
(中略)
それゆえ:
開発者にアドバイスしたり、コミュニケーションする事を超えて、アーキテクトは実装に参加すべきだ。
(省略)

面白そうだと思った人は是非読んでほしい。
パターンの羅列が終わった後の6章ではパターンをきちんと適用するための現実的なアドバイスも書かれている。
最後には2つの生産性の高いプロジェクトでのケーススタディもある。

少し敷居が高いかもしれないが、マネージャやリーダーの方には是非読んでほしい。
プログラマにも自分のロールについて考えるいい機会になる。
プロジェクトに関わる全ての人がこの本の内容を把握していれば、とても楽しい組織ができそう。

良本。