[アナパタ勉強会終了報告]
1通のメールからすべては始まった。「アナリシスパターン勉強会」
株式会社オーエスケイ 小井土 亨 (koido@kk-osk.co.jp)
◎河合さんが引金を
河合さんから一通のメールが「oosquare」MLにポストされました。
-
--河合さんのメール--
河合@ODLです
Martin Fowler「アナリシスパターン」はとても良い本だと思いますが、かなり難解です。
一人で読むと挫折してしまいそうなので、集まって勉強会をやりませんか。
以前、オブジェクトの広場に「アナリシスパターンの難しさ」についてUPされていましたが、その要旨は、
- 名著であるが難解である
すらすら理解できる人は天才で、大抵Partyまではついていけるが、「責任関係」あたりでGiveUpとなる
- しかしあきらめないで、自分でモデルを書いている内に、段段と分かってくる
- そのうち「知識レベルと操作レベル」、「パワータイプ」、「動的分類と多重分類」が徐々に分かってきて目から鱗となる
私も、Party まではなんとかついていけるのですが、「責任関係」あたりで四苦八苦状態です。Martin-OdellのPower Typeを読んで見たりしています。
勉強会にはOGISの方にメンターとして入って貰い、原則メンバーの間で輪読の形にしたいと思います。
初心者の方で聞いているだけで参加したい、という方でも良いのではないかと思います。
■ 場所:当面もし可能ならOGISにお願いし、その後メンバーで会場提供可能な方の間で持ち回る。
■ 時間:月1位で18:00〜20:00頃?
以上まだ私案で、具体的には何も決まっていません。
ご賛同されるかたが何人か集まればスタートしたいと考えています。
よろしくお願いします。
--以上 河合さんのメール--
◎実行委員会結成から開催準備まで
これを見たMLのメンバー多くの人々がこの意見に共感したようです。あっという間に、20通以上の参加依頼のメールが殺到、とても輪読できる状況ではなく、勉強会形式に変更する事態となりました。そこで、勉強会にする旨のメールがポストされました。
私(小井土)は、このメールに反応して、軽い気持ちで「事例紹介しても良いですよ」とメールをしました。
さらに参加表明のメールが殺到し、35通以上となりました。ここで、いったんMLの管理者の方から登録中断のメールされて、実行委員会が結成されました。メンバは平沢さん、河合さん、矢崎さん、小井土、ML管理者の皆さんです。
私は、勉強会で時間が余ったら少し話をしようかな程度だったので、このメールによる指名に少驚きました。少し冷静に考えてみと、アナリシスパターンを人に教えることの難しさと参加者された方々の熱意に少しめまいを覚えましたが、少しでもお役に立つならやれるだけやってみようという気持ちになっていました。
実行メンバの活発な意見で、どんどん内容が決定されていきました。内容の概要は以下の通りでした。
- オープニング(平澤)
- チュートリアル(河合)
- 演習・発表
- 事例紹介(小井土)
- 質疑・ディスカッション
- 懇親会(参加費1000円で立食)
- 閉会
- 特別参加者
訳者の一人である児玉さんに出席してもらい、ツッコミを入れてもらう部屋の問題で定員25名として、勉強会の案内を送信しました。難しい旨の記述を追加しましたが、アナリシスパターンを勉強したいというメンバーの熱意はすごく、軽く定員は越えて、30名以上の申し込みが殺到しました。実行メンバーは、参加者が減るだろうなどと考えていたのですが、急遽対策を立てる必要に迫られました。同じ内容で2回行うことにして、急遽追加案内をポストしました。
◎またも問題発生
勉強会の参加者から「本屋に本がなく購入できない」とのメールがポストされました。実行委員会のフットワークの良さが発揮され、平沢さんから児玉さんに確認していただいたところ、出版社に頼めば入手できることがわかりました。早速、参加者に案内を送付して、7名の方に購入いただけました。
◎第1回7月6日勉強会
開始、30分くらい前の河合さんと初めてお会いして、打合せを行いました。私から河合さんに、知識レベルと操作レベルとパワータイプまで説明してくださいとお願いしました。河合さんは、できるだけパワータイプまで説明しますと快く約束していただきました。最後は、「臨機応変に行きましょう」で打合せは終了となりました。
OSにログインできないという波乱のスタートとなってしまいましたが、児玉さんの薀蓄のある挨拶で勉強会の雰囲気は良い方向に流れだしました。特に、「パターンを味わう」は、今までパターンを利用するだけと考えていた方には、目から鱗の内容だったのではないでしょうか。
勉強会は、河合さんの工夫されたドキュメントと随所での児玉さんの突っ込みと演習で、非常に有意義で楽しく進みました。特に、議論が白熱した場面では、もっと時間があればさらに突っ込んだ話ができるはずなのにと歯痒い思いをした参加者の方が沢山居られたようです。私も、もっと議論したかったのですが、実行メンバーという立場であるため話をまとめる方向へとの意識があり、不完全燃焼でした。
私の発表ですが、コンポーネントベースでアナリシスパターンを実装した部分を中心に話をしたことと短時間でかなり駆け足で進めたため、多くの方は未消化だったようです。反省の多い内容となってしましました。
懇親会と2次会ですが、勉強会で議論が不完全燃焼だったためか、アナリシスパターンに留まらず、リファクタリングやXPなどについて楽しい議論が交わされました。
特に、児玉さんのと話で、システムのリファクタリングの必要性は匂いでわかるは、大いに盛り上がりました。
◎第2回7月19日勉強会
基本的には同じな内容の2回目の勉強会ですが、説明者は第1回の内容を踏まえ、資料を分かり易いように修正しました。今回は、OSにログインできないこともなく特別ゲストとして、訳者である友野さんに参加していただきました。1回目と同様に随所の議論と友野さんの突っ込みや矢崎さんのフォローなどもあり、有意義に進みました。しかし、時間的に十分というわけにはいきませんでしたので、不完全燃焼の方も居られたと思います。私の発表も1度目の失敗を踏まえて、背景や目的を明確にするように心がけました。それなりに理解していただいたと考えています。
◎私のアナリシスパターンとの出会い
最後の勉強会とは少しずれますが、私のアナリシスパターンとの出会いについて、簡単に紹介して、今回の議事を閉めさせていただきます。
私は、CBOP(https://www.cbop.gr.jp/)という協議会で活動を行っていました。
この協議会の主席理事である堀内教授(アナリシスパターンの監訳者)から、アナリスパターンを勉強しなさいと以前から薦められていました。ちょうどその時期、人事管理システムのプロトタイプ開発を担当していました。本屋で立ち読みをしたところ、「これは、直ぐに応用できそうだ」と感じましたので直ぐに買って帰りました。しかし、全体を通して読むとデリバティブなど、簡単に挫折してしまったものや、何度も読まないと何をいっているのか分からない部分がありました。しかし、動的分類や多重分類、知識レベルや操作レベルがある程度理解できて、実際の開発で利用してみる
とこれがぴったりと適応できました。特に、今まで分析モデルと設計モデルの間に存在した溝がなくなっているのです。更に、フレームワークで実装してみると、アナリシスパターンの拡張性や安定性がフレームワークで反映されていることに感動を覚えました。
アナリシスパターンは、単なるパターンカタログではありません。現実の問題をどのような視点でモデルかしたら良いのか、現実の変化に追随できるモデルを作成するためにはどのように考えを進めたらよいかが、例と共に書かれています。したがって、出てくるパターンをそのまま利用するのではなく、各システムを開発する時に作成するパターンのヒントや雛形として利用することが有効です。また、利用するパターンのどのレベルを利用するかも重要なポイントとなります。
特に以下のようなケースで有効だと思います。
- オブジェクト指向で開発したが、システム変更に予想以上の工数が必要になったアナリシスパターンは、変更を前提にモデリング手法について記述されています。言い換えれば、変更可能でありかつ安定しているモデルを作成するためのポイントが記述されているわけです。ここで言う安定しているモデルとは、基本形は変わらずに柔軟に変化可能なモデルであって、固定されたモデルとは対極に位置します。
- 分析モデルと設計モデルにキャップがあり繰り返し開発にコストが掛かった。アナリシスパターンは、システムの論理的な側面を明確し、型概念の導入することで設計モデルの指針となるような、分析モデルを作成する手法を例示と共に説明しています。例えば、設計モデルをインターフェイス設計フェーズと実装設計フェーズに分割した場合、インターフェイス設計モデルの基本形として利用可能です。
- モデルでクラスの爆発(クラスの数が極端に多くなる)が発生した。アナリシスパターンでは、型概念(パワータイプ)などにより、クラスをインスタンス化することで、クラスの爆発を未然に防ぐパターンが紹介されています。
実際、私は人事情報管理システムで以下のような効果を得ることができました。
安定したモデルが作成された人事情報で管理するデータの種類やデータ関連の種類の変化に柔軟に対応できるモデルが作成できました。
- 分析モデルがインターフェイスモデルの基本形となった分析モデルのオブジェクトがインターフェイスモデルとなり、分析モデルとのキャップがなくなりました。
- インターフェイスが安定したパワータイプの応用により、インターフェイスの変更なしにシステムの変更が可能となりました。
最後に、勉強会を通して参加者の皆様が数多くの「あ、そうか。」や「なるほど。」に遭遇することを願っています。
以上
© 2000 OGIS-RI Co., Ltd.
|
|
HOME |
|
TOP |
|