AOAD

アスペクト指向勉強会 - 実践編 (第?回)

前回実装したソースコードの確認をしてマージ。とりあえず動いたけれど、バグがいくつかありそう。そのままコードを直すんじゃなくて、テストで再現させてから直すことに。 モックの使い方にコツが必要。整理してあとで書く。

アスペクト指向勉強会 - 実践編 (第?回)

合宿と称して23時まで。 アスペクト指向によるブラックジャックゲームの実装。 手分けしてどうにか実装まで終わった。でもマージの時間が足りず、実際に動くのを見るのは次回までお預け。

アスペクト指向勉強会 - 実践編 (第?回)

テーマごと独立に設計って言っても、絶対テーマ間に依存関係はあるはず。 でも、テーマ内でオブジェクトの相互依存はそれほど気にしなくてもいい。 アスペクトで新しい関連を引くためには、どこかで何らかのつながりがないとダメ。

アスペクト指向勉強会 - 実践編 (第?回)

アスペクトの織り込み先のクラスの実装方法の議論で一日終わった。 設計で Player、TPlayer と分けたクラスをどう実装するか。 僕の意見は、設計で分けたんだから実装もそのとおり実装すればいい派。 テキスト読んでも解答が見当たらない。

アスペクト指向勉強会 - 実践編 (第?回)

社内有志の勉強会。久しぶりに参加。やっぱり理想と現実は違うよ。 というか、テーマ間の依存関係やテーマ共通のデータやロジックを過小評価しすぎ。

アスペクト指向勉強会 - 実践編 (第17回)

いくつかのテーマについて、個別に設計をしてみる。 僕の担当は「カードを配布する」。

アスペクト指向勉強会 - 実践編 (第16回)

さすがに2連チャンはきついです。 すみません、遅刻しました。orz AOSD 勉強会 前回に引き続き用語の整理など。 Subversion テーマごとに個別に設計を始めることにしたものの、せっかく用意した Subversion のサーバを使ってなかったので、まずは各自クライ…

アスペクト指向勉強会 - 実践編 (第15回)

AOSD 勉強会 Theme Aproach だけだと不十分な点が多いので、ヤコブソンの AOSD も併せて読むことに。とりあえず10章までを読んできて、重要な概念やわからない用語をあげて検討した。 「ゲームする」の設計 Theme Aproach の利点は、テーマごとに独立して設…

アスペクト指向勉強会 - 実践編 (第14回)

2チームに分かれて前回の続き。僕らのチームは、前回の要求の修正をもとに、Theme Relationship View を更新。また、Aspect を識別して Crosscutting View を作成。あと、小さすぎる Theme を統合したりした。ここまででひとまず分析は終了。 もう1チームの…

アスペクト指向勉強会 - 実践編 (第13回)

前回 Crosscutting View を作ってみて問題がいくつも発生。 「ベットする」は「ゲームを開始する」から起動されるの? 起動と見なすと、循環してしまうんじゃない? ゲームのフローじゃない? テーマがつながっていないのは、要件リストにもれがあるのでは? Asp…

アスペクト指向勉強会 - 実践編 (第12回)

Theme Relationship View で Shared Requirement に関連する Theme が Aspect かどうかを識別し、Crosscutting View を作成する。 Aspect かどうか見分ける基準 (手順?) は以下の4つ。 Split the requirement if possible Dominance means association Base …

アスペクト指向勉強会 - 実践編 (第11回)

要求と Theme の関連を表す、Theme/Doc の Theme Relationship View を作成。 普通の UML ツールだと Theme/Doc は書けないので、独自に UML を拡張。Theme をユースケースで、要求をステレオタイプ ≪requirement≫ をつけたクラスで記述する。ただし、今回は…

アスペクト指向勉強会 - 実践編 (第10回)

前回作成した要件リストをもとに、Theme と Entity の抽出。 まずは、動詞を Theme の候補として、名詞を Entity の候補として抜き出し、同義語を整理したり、他の Theme、Entity とまとめたりして整理。 本当は Theme Relationship View の作成までやる予定…

アスペクト指向勉強会 - 実践編 (第9回)

何度か目は覚めたものの、どうしても起きられず4時間遅れで参加。(^^;;)ブラックジャックのゲームの要件のまとめが終了。 次回は Theme の抽出を行います。ようやく AOAD らしくなりそう。

アスペクト指向勉強会 - 実践編 (第8回)

今日やったこと。 ユーザインタフェースのラフスケッチの作成。 ゲームの進行をステートマシン図で記述。… アクティビティ図の方が良かったかも。 なかなかアスペクト指向の本題には入れません。(^^;)

アスペクト指向勉強会 - 実践編 (第7回)

いよいよ開発が始まりました。今日やったことは以下のとおり。 Wikipedia でブラックジャックのルールを確認。http://ja.wikipedia.org/wiki/%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%E3%82%B8%E3%83%A3%E3%83%83%E3%82%AF トランプを使ってブラックジャックを…

アスペクト指向勉強会 - 実践編 (第6回)

今日やったこと。 実践編の題材を決める。→ ブラックジャックに決定 開発プロセスで、分析の成果物とワークフローを整理。… 分析の最後に概念モデル(ドメインモデル)を作成するのが、オリジナルと大きく異なるところ。 次回からようやく実際の開発が始まりま…

アスペクト指向勉強会 - 実践編 (第5回)

Theme/UML ⇔ 実装言語 のマッピングの続き。 AspectJ 5 でサンプルコードを作成。テキストに多少誤植があるけれど、何とかビルドまではできた。 Theme/UML(もどき)でサンプルコードに対応するモデルを作成。 マッピングのガイドラインにまとめる。 ここまで…

アスペクト指向勉強会 - 実践編 (第4回)

ツール類の選定と Theme/UML ⇔ 実装言語 のマッピングを確認。 使用するツール類は、 Java 5.0 AspectJ 5 (AspectJ 表記) Eclipse 3.1 (All-In-One Eclipse) Subversion など。Aspect-Oriented Analysis and Design: The Theme Approach (Addison-Wesley Obj…

アスペクト指向勉強会 - 実践編 (第3回)

参加者少数(3名)のため、全員で Theme/Doc、Theme/UML の代替表記の検討の続き。Jacobson の AOSD を参考にして、Theme はユースケースで表記することにした。

アスペクト指向勉強会 - 実践編 (第2回)

プロジェクトを開始する前の準備として、開発プロセスと、Theme/Doc、Theme/UML の代替表記の検討をチームに分かれて行いました。 僕は、開発プロセスの方を担当、AOAD の分析、設計、コンポジションの手順を整理しました。昨年の勉強会は全部出席したはずだ…

アスペクト指向勉強会 - 実践編 (第1回)

社内のアスペクト指向勉強会「アスペクト指向を実践するセッション」の第1回がありました。昨年↓このテキストで勉強したのを受けて、実際自分たちで題材を決めて実践してみようというセッションです。Aspect-Oriented Analysis and Design: The Theme Approa…

アスペクト指向勉強会 (第12回) - Map to Implementation

テキストを使っての勉強会はひとまず今回で終わり。 来年はケーススタディを行う予定。 Chapter 7 Map to Implementation (前回の続き) AspectWerkz AspectJ とは違って普通の Java クラスで Aspect を定義できる。Weaving の設定は XML または Annotation …

アスペクト指向勉強会 (第11回) - Map to Implementation

今日と次回は実装編。今日は AspectJ、次回は AspectWerkz と CME (Concern Manipulation Environment) をとりあげます。 Chapter 7 Map to Implementation AspectJ 千葉先生の本良さげですね。早速買おうっと。Seasar のMLでも話題になっていたけど、Intert…

アスペクト指向勉強会(第10回) - Theme Composition

勉強会もいよいよ佳境。仕事が立て込んでるのでメモのみ。 Chapter 6 Theme Composition (前回の続き) Integration Option Merging Operation ここで出てくる containers はやっぱりクラスのことかなぁ。 Combining Integration Policies Theme どうしは Mer…

アスペクト指向勉強会(第9回) - Theme Composition

いよいよ第6章まできましたねぇ。 Chapter 6 Theme Composition Theme ごとに設計したものを合成する。これがちゃんとできないと、今までやってきたことは全部水の泡。(^^;) Overview of Composing Themes こんな手順で行う。 合成する Theme を選ぶ マッチ…

アスペクト指向勉強会(第8回) - Theme Design

今回もほとんど予習できず。orz Chapter 5 Theme Design (後半) Design Crosscutting Themes Control Flow Restrictions on Triggers あるクラスに op1()、op2() という2つの操作があったとき、op1() から呼び出された場合だけ op2() にアスペクトを適用する…

アスペクト指向勉強会(第7回) - Theme Design

寝坊して40分遅れで参加。でも、始まったのも30分遅れだったみたい。 Capter 4 Analysis (前回の残り) Planning for Design ここでオブジェクトの識別をするんだけど、結局その方法は書かれていないみたい。ふつうに(?)オブジェクト指向でやればぁ? というこ…

アスペクト指向勉強会(第6回) - Analysis

だんだん英語のテキストが斜め読みできるようになってきた気がする... 気だけですけど。(^^;) Capter 4 Analysis (前回の続き) Deciding on Theme Responsibilities 目的は Theme が Aspect かどうかを識別すること。 Split the requirement if possible Dom…

アスペクト指向勉強会(第5回) - Analysis

PofEAA 読書会準備のため予習できず。ゴメンなさい。m(_ _)m Capter 4 Analysis Theme/Doc Views and Tool Support サイトを探してみたけどツールらしきものはなし。(^^;) Overview of the Theme/Doc Process 第3章の復習かな? Deciding on the Themes 最初…