UTI UML教育研究所
トップページ> 読み物> コラム> 使えるUML 第7回
はじめるUML(全12回)
  はじめてみよう!
  モデル要素の整理整頓
  システム全体の構造(1)
  システム全体の構造(2)
  システム全体の構造(3)
  システム化対象の業務(1)
  システム化対象の業務(2)
  システムの動き(1)
  システムの動き(2)
  状態の移り変わり
  OCUPにチャレンジ!
  UML2.0総括(最終回)
続はじめるUML(全10回)
  使ってみよう!
  UMLによる業務分析
  営業職のOCUP受験体験記
  UMLによる要求分析
  インターメディエイト受験体験記
  UMLによるシステム分析
  アドバンスト受験体験記
  UMLによるシステム設計
  情報システム管理者が利用するUML
  続はじめるUML総括
使えるUML(全10回)
  使いこなしてみよう!
  物事を分けてとらえる
  コンポーネント図のいくつかの表現方法
  枠組みを使用してとらえる
  内容とその表現方法をわける
  パターンの表現
  続・パターンの表現
  モデルのモデル
  あいまいさを排除する
  「どのように(How)」から「何を(What)」へ
  大人のオブジェクト指向(最終回)
資格取得までのステップ
FAQ
教育コンテンツ
キャンペーン
ブックプラス
パートナープログラム
認定ユーザープログラム
メールマガジン登録
お問合わせ
使えるUML 第7回

パターンウィーバー(PatternWeaver) ver2.2
さらに使いやすく、新機能満載!
  • 多言語によるモデル開発をサポート
  • モデル駆動型のSOA(サービス指向アークテクチャ)をサポート
  • MS-Word形式へのドキュメント出力をサポート
  • RCP(Rich Client Platform)版の提供を開始
  • 洗練された各種ダイアグラム
  • 操作性の強化
  • リポジトリ(UML要素管理機能)の強化
  • ソースコード連携の強化

評価版がダウンロードできますので、ぜひお試しください。
http://pw.tech-arts.co.jp/download/community_edition.html

●商品に関するお問い合わせ
株式会社テクノロジックアート
e-mail : pw@tech-arts.co.jp
http://pw.tech-arts.co.jp/

パターンウィーバー無料プライベートセミナー 〜知らなかったこんな使い方〜
申込受付中!第一回目は8/27(月)開催
2007.8.2 掲載
続・パターンの表現
前回に引き続きMVCパターンをはじめとしたアーキテクチャパターンや、GoFのパターンに代表されるデザインパターンなどのパターンをUMLでどのように表現すれば良いのかを見ていきたいと思います。ソフトウェア開発の効率化において、再利用は最も有効な手段のひとつです。パターンを利用することで、実装済みのコードだけではなく、問題の解決方法といった考え方も再利用することが出来ます。

◇UMLでのパターンの表現(2)
今回も、前回の時計アプリケーションを例に、コンポジット構造図で記述するコラボレーションの使い方を見ていきますので、前回の記事の内容をお忘れの方は、一度振り返っていただければと思います。

次のコラボレーションは、コラボレーションに参加するパートの型を明確に定義しないかたちの記述方法です。前回も触れましたが、コラボレーションの目的は、あるタスクでのインスタンスの協調を表すことなので、必要であれば、相互作用など他の内容と同様に、パートの型も省略されます。

図1 パートの型を省略したコラボレーション
図1 パートの型を省略したコラボレーション

次の図は、時計アプリケーションの「時刻を確認する」ユースケース内で行われる、「時計」というコラボレーションについて記述したコンポジット構造図です。「時計」コラボレーションでは更に別のコラボレーションである、「Observer」コラボレーションが複数箇所で使用されています。
前回触れた抽象クラスなどを使用することで、図の「時計表示」「時刻」「タイマー」といった「Observer」コラボレーションにバインドされたパートの型を、「Observer」コラボレーションで定義したクラスのサブクラスに限定することができると考えられます。

図2 コラボレーションの使用
図2 コラボレーションの使用

◇パターンをあらかじめモデルで定義しておく
デザインパターンをあらかじめモデル上で定義しておき、モデルとして再利用できるようにしておくことができます。次の図は、コラボレーションテンプレートを利用してObserverパターンを記述したものです。要素の右上にある点線の四角の中には、パートの型をパラメータで変更できることが表されています。

図3 コラボレーションテンプレート
図3 コラボレーションテンプレート

図3のように定義したコラボレーションテンプレートを利用する際には、図4のように、コラボレーションで特定の型を指定します。

図4 コラボレーションテンプレートによるコラボレーション
図4 コラボレーションテンプレートによるコラボレーション

◇まとめ
ソフトウェア開発の効率化において、再利用は最も有効な手段のひとつです。パターンを利用することで、実装済みのコードだけではなく、問題の解決方法といった考え方も再利用することができます。さらにUMLではコラボレーションテンプレートを利用することで、パートの型を利用する時点で指定することができるのです。
今回の記事でみなさんのモデルの再利用性を少しでも向上する助けとなることができれば幸いです。

◇書籍紹介
実装に密着したパターンをUMLで管理する方法に関する詳細につきましては、弊社社員が執筆に関わりました「現場のUML」をご参照ください。

現場のUML 現場のUML
【著作】 浅井麻衣/重田正俊/橋本大輔/浜口弘志/藤井啓詞
【監修】 桐越信一/長瀬嘉秀
【出版】 株式会社ソーテック社

また、UMLによる設計/開発・支援に関しましては、弊社テクノロジックアートで提供しておりますトレーニングコースや、コンサルティングサービスをご活用いただけます。


■筆者紹介
照井 康真/Koma Terui
株式会社テクノロジックアート UMLモデリンググループ グループリーダー シニアシステムコンサルタント