アジャイル開発者の習慣-acts_as_agile

第4回特別コラム 「なぜそんなにも(アジャイル開発者にとって)Wikiは重要なのか」

この記事を読むのに必要な時間:およそ 1 分

江渡浩一郎さんによるなぜそんなにもWikiは重要なのかと題された論文から始まる,Wikiの本質を探る一連の考察があります。

その中で江渡さんはWikiとXPとはパターンランゲージの実践という同じ概念から生まれた兄弟であると主張しています。

これを読むと,アジャイル開発者にとってWikiは単なるWebページを簡単に作成できる情報共有システム以上の意味を持つことがわかります。アジャイル開発に興味を持つすべての方に読んでもらいたい論文です。

アジャイル開発者必読!

今から読むならWikiの起源と進化をお勧めします。さらに,雑誌『10+1 No.48』注aに掲載されている江渡さんへのインタビュー「Wiki的都市は構想可能か?」は論文の内容を踏まえたものとなっており,パターンランゲージの今後についてさらに踏み込んだ内容になっていて興味深いです。

アジャイル開発(というかXP)とWiki

アジャイル開発(特にXP)に関する知識がある方がWikiを使ってみると,XPの考え方やプラクティスをWikiに応用できることに気づくと思います。

たとえば,最もよい情報の書き手となるのは,その情報を読みたい当事者であること(ユーザ参加型の設計),ページを誰でも編集できること(コードの共同所有),小さく始めて大きく育てていく過程でサイトの構造が立ち現れること(進化的設計),よいWikiページの名前が重要であること(意図を表現するコード)……。

WikiとXPとが「兄弟」ならば,似ているのも当然ですが,みなさんにはなぜWikiとXPが似ているのかを考えてもらいたいです。

パターンランゲージとその目的

江渡さんの考察によれば,WikiとXPはいずれもChristopher Alexanderの「パターンランゲージ」をソフトウェア開発の世界に持ち込むために生まれたものです。その中心的役割を果したのが,オリジナルのWikiWikiWeb注bの開発者であるWard Cunninghamと,Kent Beckです。

彼らによるソフトウェア開発におけるパターンランゲージ導入の目的は「ユーザがソフトウェア設計に参加できるようにすること」「ユーザと開発者との共通言語の構築」そして「新しい社会構造をつくること」です。

昨秋Kent Beckが来日した際に「アジャイル開発のプラクティスは開発者のパターンランゲージでは?」と私が尋ねたところ,氏は「もちろんそうだ」と答えてくれました

パターンランゲージはまだ失敗していない

『10+1』のインタビューによれば,Alexanderによるオリジナルのパターンランゲージは,建築業界では「失敗した」ことになっているそうです。江渡さんはこれに対して「実はまだ失敗してないのでは?」と語っています。

私はXPについても同様だと考えています。XPを始めとするアジャイル開発の考え方そのものに成功/失敗といった評価を下すのはまだ早過ぎます。

Wikiが育つところはアジャイルになれる

WikiとXPが本質的に同じものならば,Wikiをうまく育てられるチームや組織はアジャイル開発もうまくやれるのではないでしょうか。みなさんの職場でも,アジャイル開発を導入する前に,まずはWikiから始めてみるのはいかがでしょう(私もこの仮説を検証中です)。

そして,日々の開発作業でWikiに触れる際には,Wikiがアジャイル開発と源流が同じであることを意識してみてください。Wikiには単なる簡易Webページ作成ツール以上の可能性があることに気づけると思います。

注a)
10+1 No.48 特集=アルゴリズム的思考と建築(INAX出版)
注b)
ちなみにWikiWikiWebは「ドキュメントがプログラムである」というDonald Knuthの文芸的プログラミングの手法で書かれていたそうです。これは「コードがドキュメントだ」というアジャイル開発と呼応するようで興味深いです。

著者プロフィール

角谷信太郎(かくたにしんたろう)

(株)永和システムマネジメント,サービスプロバイディング事業部所属プログラマ。「『楽しさ』がシステム開発の生産性を左右する」と信じてRubyによるアジャイル開発を現場で実践するテスト駆動開発者。目標は達人プログラマ。好きな言語はRuby。好きなメソッドはextend。著書に『アジャイルな見積りと計画づくり』(共同翻訳),『JavaからRubyへ』(翻訳),『アジャイルプラクティス』(共同監訳),『インターフェイス指向設計』(監訳)。

URLhttp://kakutani.com/

著書

コメント

コメントの記入