UML in Color to UI Design
Activity Based Datamodelの事を考えていて、オブジェクトモデリング側から同じような事をやると、やはりUML in Colorの手法が近いのかなぁと思った。UML in Colorの説明は、aufhebenさんのエントリ参照。
以下は大雑把な説明。
瞬間時間間隔(PINK)*1
- 以下、トランザクションをしめすオブジェクト(コンポジットになっている)
ロール(YELLOW)
- 「パーティ/場所/物(後述)」がイベント(瞬間時間間隔)にどのように参加するかを示す
- イベント or 交差エンティティに相当する場合があるかも。
- ロールの概念はオブジェクト指向設計においては、プラガブル性の確保という意味でも重要っぽいと思った。
パーティ/場所/物(GREEN)
- 以下、基本的にリソース系に対応するもの
- パーティ(人または組織)
- 場所
- もの
説明(BLUE)
- パーティ/場所/物のカタログ情報。
- アナパタでいうと仕様レベルの情報だと思う。
これらのモデルをユーザインタフェースに対応させるためのアプローチが、以下に載ってるっぽいです。ちゃんと読めていないけど、面白そう。
http://www.uidesign.net/1999/papers/UML_UI.html
ピーターコードは日本では人気無い感じがするけど、結構好きだ。新人のころ、インタフェース(Javaのinterface)の意味をはじめて理解できたきっかけも、ピーターコードの著作だったと思う。
(追記)あと、ABDの肝の部分っぽい、「アクティビティがイベントやリソースに対する外部キーを持ち、逆は無い」というのは、関連の方向性や多重度で表現できると思う。
昔のRationalのOOADトレーニングには、設計の後半で、関連の方向を片方向にしたり、n:nの関連を関連クラスを導入して書き直す、という作業があったんだけど、今思うとこういう意図があったのかも、とも思う。