相互作用図 FM11010 田中健太.

Slides:



Advertisements
Similar presentations
All Rights Reserved Copyright © 2004, Takashi Kobayashi 1 ロバストネス分析の演習問題 <問題1> 次の文をよんで問いに答えよ。 顧客は、 ATM により自分の口座から預金を払い出す。 顧客は、 ATM にキャッシュカードを挿入し、個人認証を行う。
Advertisements

プログラミング言語論 第3回 BNF 記法について(演習付き) 篠埜 功. 構文の記述 プログラミング言語の構文はどのように定式化できるか? 例1 : for ループの中に for ループが書ける。 for (i=0; i
クラス図(1) FM12013 山口 亨. クラスとは 現実に存在する “ 物体 ” (オブジェクト)の 構造や振る舞いなどに着目して注目し抽 象化したもの クラス図を含む UML のほとんどの図で使用 されている.
Chapter1 UML の概要とオブジェクト指向の基本概念 1 情報工学専攻 MFM10004 奥平 健太.
プログラミング言語論 第10回(演習) 情報工学科 木村昌臣   篠埜 功.
シーケンス図の生成のための実行履歴圧縮手法
4 相互作用図 後半 FM13001 青野大樹.
Chapter3 クラス図(後半)             FM12014 劉鎧誠.
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
ソフトウェア工学特論III 第10回 その他の図 情報通信工学専攻 GM11013 堀江 真史
オブジェクト指向プログラミング(4) 静的分析(2)
Lync 会議 Lync 会議に参加する Lync 2013 クイック リファレンス Lync 会議のスケジュール
Lync 会議 Lync 会議に参加する Lync 会議をスケジュールする 会議のオプションを設定する
PowerPoint の基本操作 情報機器の操作(e) 2016.
PHPエディタによる 情報システム演習 01.
クラスその2∽(アドバンス)∽ 福岡工業大学  梶原 大慈       .
Chapter 4 相互作用図 FM12010 中山直飛.
Chapter5 ステートチャート図 FM 于 聡.
ソフトウェア工学特論Ⅲ ユースケース図 後半
ユースケース図の概要 ・UMLの図のひとつ ・ユーザの要求を表現する目的で使用 ・システム開発の初期段階で頻繁に使用.
ユースケース図 FM12012 比嘉久登.
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
3-5 クラス図の関係その3 福本研究室 神田 祐輔.
     年  月  日 名前 太郎 1 班.
CHAPTER1 UMLとオブジェクト指向の基本概念(2)
担当:青木義満 情報工学科 3年生対象 専門科目 システムプログラミング システムプログラミング プロセス間通信(パイプ) 担当:青木義満
クラス図(1) 後半 FM13010 村上 太一.
条件式 (Conditional Expressions)
透視投影(中心射影)とは  ○ 3次元空間上の点を2次元平面へ投影する方法の一つ  ○ 投影方法   1.投影中心を定義する   2.投影平面を定義する
Chapter 2 ユースケース図 FM12011 バユウユウ 山内研究室
BPMN(Business Process Modeling Notation)
ユースケース図2-4~ FM11012 中島拓也.
UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.
この資料は、テキストをもとに、講義のために作成したものです.学習用に活用してください.
ユースケース オブジェクト指向の要求分析のためのモデル。 スウェーデンのイヴァー・ヤコブソンが1990年代前半に開発。
オブジェクト プログラミング 第1回.
UMLとは           032234 田邊祐司.
オブジェクト指向モデリング [3] 2003年10月14日.
プログラミング演習3 第2回 GUIの復習.
Chapter7 その他の図 FM13010  須崎研 村上 太一.
その他の図 Chapter 7.
プログラミング言語論 第3回 BNF記法について(演習付き)
シーケンス図を用いて実行履歴を可視化するデバッグ環境の試作
プログラミング演習3 第2回 GUIの復習.
PowerPoint の基本操作 情報機器の操作(e).
社会シミュレーションのための モデル作成環境
     年  月  日 名前 太郎 1 班.
     年  月  日 名前 太郎 x 班.
MSET使用方法  一時中断したい場合には、マウスの右クリックをしてください(小ウインドウが開き一時停止します)。続行する場合には、開いた小ウインドウ以外の適当な場所を右クリックしてください。
オブジェクト指向モデリング [2] 2003年10月 7日.
UML関係のTIPS 2008年5月26日 2010年5月16日改訂 海谷 治彦.
ステートチャート図 前半 FM13003 怡土 宗太.
All Rights Reserved, Copyright © 2004, Kobayashi
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
シナリオのアニメーション表示による 妥当性確認支援
物理的側面を表現する図 Chapter6 物理的側面を表現する図について徐研究室の大楠が発表します。 FM13005 大楠拓也 徐研究室.
シナリオを用いたレビュー手法PBRの追証実験 - UMLで記述された設計仕様書を対象として -
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
UMLの概要とオブジェクト指向の基本概念
課題 5/25 以下の指示に従って作成した pptx あるいは ppt ファイルを電子メールで へ送りなさい。
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
vc-2. Visual Studio C++ のデバッガー (Visual Studio C++ の実用知識を学ぶシリーズ)
物理的側面を表現する図 石原研 古賀浩之.
言語プロセッサ 第12日目 平成20年1月9日.
より分かりやすい ユースケースモデルを作る
データ構造と アルゴリズム 第四回 知能情報学部 新田直也.
木構造の比較に基づく メソッド呼び出し履歴の変化の可視化手法
Chapter 5-2 ステートチャート図 FM12011 バユウユウ 山内研
PowerPoint の基本操作 情報機器の操作 (e).
PowerPoint の基本操作 情報機器の操作(e).
Presentation transcript:

相互作用図 FM11010 田中健太

4‐4 コラボレーション図 (UML2.X:コミュニケーション図) シーケンス図 上から下に時系列に沿ってメッセージのやり取り コラボレーション図 相互作用の参加者を中心にメッセージのやり取り

UML1.x コラボレーション図 相互作用の参加者をオブジェクトとして表現する オブジェクト間にリンクと呼ばれる実線を引く メッセージラベル オブジェクト1 オブジェクト3 シーケンス番号 2:Message() 3:Message3() 1:Message1() オブジェクト2 アクター リンク メッセージ 相互作用の参加者をオブジェクトとして表現する オブジェクト間にリンクと呼ばれる実線を引く その上に矢印およびメッセージラベルを表記する

UML2.x コミュニケーション図 UML2.xでコラボレーション図はコミュニケーション図に名称が変更に なった。 ライフライン メッセージラベル ライフライン1 ライフライン3 シーケンス番号 2:Message() 3:Message3() 1:Message1() ライフライン2 アクター リンク メッセージ UML2.xでコラボレーション図はコミュニケーション図に名称が変更に なった。 シーケンス図と同様にオブジェクトの代わりにライフラインを用いる ライフラインは長方形のみをさす

コラボレーション図でのオブジェクト オブジェクト名のみ オブジェクト名とクラス名 クラス名のみ 田中さん 田中さん:会員   :会員

リンク リンクは2つのオブジェクト間を実線で接続する。 データのやり取りや関係があることを表現している。 会員リスト 会員 リンクは2つのオブジェクト間を実線で接続する。 データのやり取りや関係があることを表現している。 コラボレーション図ではまず、オブジェクト間にリンクの実線を引いてから メッセージの矢印を置く。

コラボレーション図のメッセージ リンク上に記述するメッセージには3種類ある。 先端を塗りつぶした矢印 同期メッセージ 矢印 非同期メッセージ  同期メッセージ 矢印  非同期メッセージ 点線矢印   先端を塗りつぶした矢印のリターン

コラボレーション図のメッセージ 店長 店員B 店員A 1:来店者数の調査() 3:トイレ掃除()

コラボレーション図のメッセージ メッセージラベル シーケンス式は以下の形式で記述する シーケンス番号 繰り返し式: 先行子 ガード条件 シーケンス式 返却値 := メッセージ名(引数並び) シーケンス式は以下の形式で記述する シーケンス番号 繰り返し式: シーケンス番号が、整数の場合はメッセージの送信の順番を示す アルファベットの時は並行処理を表現する

コラボレーション図のメッセージ Webウィンドウ 商品リスト 商品 5:選択() 1:商品情報:=表示() 4:表示() 2:商品情報:=商品情報取得() 6:選択() 3:商品情報:=商品情報取得() : お客さん

マルチオブジェクト マルチオブジェクトとは複数のオブジェクトで構成される集合体 1:会員情報取得() 店員 会員 マルチオブジェクトとは複数のオブジェクトで構成される集合体 同一のクラスから作成された複数のオブジェクトを一度に生成して表現し たいときに表記する。 マルチオブジェクトは長方形を二つ重ねるように表記する。

繰り返し 1はシーケンス番号 「*」は繰り返し *[i=1..n]と記述することのより、n回のメッセージを繰り返すことを意味 している 1*[i=1..n]:会員情報:=会員情報取得(会員ID) 会員 店員 1はシーケンス番号 「*」は繰り返し *[i=1..n]と記述することのより、n回のメッセージを繰り返すことを意味 している

4‐5 コラボレーション図 コラボレーション図のメッセージ 4‐5 コラボレーション図 コラボレーション図のメッセージ 先行子 ガード条件 シーケンス式 返却値 := メッセージ名(引数並び) 2a、3a/ [ID番号>100] 1c*[i=1..n] 会員情報  :=  会員情報取得(会員ID) 先行子はこのメッセージが送信する前に送信しておくべき他のメッセージの シーケンス番号を示します。 先行子、ガード条件、返却値はオプショナルです。 ガード条件にはメッセージが送信される条件を記述する。

並行処理 複数のメッセージが同時に送信されていることを示すため、シーケンス番 号の末尾にアルファベットを付ける Webウィンドウ 商品リスト イメージリスト イメージ 商品 1:表示() 2a:表示() 2b:表示() 3a*[i=1..n]:表示() 3b*[i=1..n]:表示() 複数のメッセージが同時に送信されていることを示すため、シーケンス番 号の末尾にアルファベットを付ける

先行子 先行子に書かれた1つ以上のシーケンス番号を持つメッセージ送信がす べて行われるまでは、メッセージ送信が可能にならないことを示す Webウィンドウ 商品リスト イメージリスト イメージ 商品 1:表示() 2a:表示() 2b:表示() 3a*[i=1..n]:表示() 3b*[i=1..n]:表示() ボタン 2a,2b/2:表示() 先行子に書かれた1つ以上のシーケンス番号を持つメッセージ送信がす べて行われるまでは、メッセージ送信が可能にならないことを示す

アクティブオブジェクト アクティブオブジェクトは制御する流れを一つ所有し、制御活動を開始し て、相互作用の流れを制御するオブジェクト アクティブオブジェクトは別のオブジェクトの制御下では稼働しない 一度生成されると他のアクティブオブジェクトと独立して稼働する 独自の制御スレッドを持たないオブジェクトをパッシブオブジェクトという 課長 社員1 社員2 社員3 顧客 2a:会議室の用意 2b:書類のコピー 1:トラブル報告 2c:関係者の招集

仕様レベルコラボレーション図 /役割(ロール)名:クラス名 /買い手 :会社            /買い手  :会社 仕様レベルコラボレーション図ではオブジェクト同士の協調関係の中で、 定義された役割(ロール)を表現する コラボレーション図では同じクラスでも、異なる役割を演じることがあるた め、役割を”/”のあとに記述する

仕様レベルコラボレーション図 販売会社 /売り手:会社 販売品 購入会社 購入品 /買い手:会社 商品 販売活動の協調関係

インスタンスレベルのコラボレーション図 A会社/売り手:会社 商品 B会社/買い手:会社 2:販売会社名取得() 1:購入() オブジェクト名については以下の形式でオブジェクト名とクラス名の間 を”/”で区切って役割(ロール)を記述する      オブジェクト名 /役割(ロール)名 :クラス名       A会社     /売り手       :会社

相互作用参加者の比較 UML1.xのインスタンスレベルのオブジェクト オブジェクト名:クラス名 仕様レベルのオブジェクト    オブジェクト名:クラス名 仕様レベルのオブジェクト    /役割(ロール)名:クラス名 UML2.xのライフライン 役割(ロール)名:クラス名

Chapter4 まとめ 登場人・物同士のメッセージのやり取りをUMLでは相互作用図で表現す る シーケンス図 時系列に沿って上から下に表現する メッセージはライフラインの点線から他のライフラインの点線に引く アイコンの下にライフラインの点線を配置してオブジェクトが存在している ことを表現する コラボレーション図 オブジェクトを中心にメッセージの流れを表現する オブジェクト同士をリンクで接続し、矢印を配置し、メッセージ名をシーケ ンス番号付きで記述する オブジェクト名、クラス名にロール(役割)を付け加えることができる UML2.x(コミュニケーション図)ではオブジェクトのかわりにライフライン で表現する

練習問題 問題1 以下の図について、正しい記述を選択しなさい 練習問題 問題1 以下の図について、正しい記述を選択しなさい ①「操作1()」のメッセージが終了した時 点で、「A」「B」「C」全て残っている可 能性がある。 ②このシーケンス図では「A」「B」「C」は必 ず一度は生成されるということを表し ている。 ③「×」印は、各メッセージが失敗したこと をしめしている。 ④長方形のアイコンの下にある「□」(白 抜きの長方形)はメッセージの制御 期間とメッセージの関係を表現してい る。 ⑤長方形のアイコンの下にある「□」(白 抜きの長方形)はライフライン(生存 線)を表現している。 B 生成 A 操作1 操作2 生成 C 操作3 × ×

練習問題 問題2 シーケンス図とコミュニケーション図の特徴に関して適切な説明文を選択しなさい 練習問題 問題2 シーケンス図とコミュニケーション図の特徴に関して適切な説明文を選択しなさい ①シーケンス図は、時系列に従った処理の流れを見るのに適しているが、 コミュニケーション図は、相互作用の参加者の接続関係をみるのに適し ている。 ②シーケンス図は相互作用の参加者の接続関係をみるのに適しているが、 コミュニケーション図は時系列に従った処理の流れを見るのに適してい る ③シーケンス図は、非同期のメッセージを見るのに適しているが、コミュニ ケーション図は時系列に従った処理の流れを見るのに適している。 ④シーケンス図は時系列に従った処理の流れを見るのに適しているが、コ ミュニケーション図は、オブジェクトのライフサイクルを表現するのに適し ている。

練習問題 問題3 A ① C B A B C ② A C B ③ A C B ④ A C B OP1 OP2 OP3 OP4 練習問題 問題3 A ① 3:OP3 1:OP1 以下のシーケンス図に対応するコミュニケー ション図を選択しなさい C B 2:OP2 A B C 4:OP4 ② A OP1 1:OP1 3:OP3 OP2 C B OP3 2:OP2 4:OP4 ③ OP4 A 3:OP3 1:OP1 C B 2:OP2 ④ 4:OP4 A 1:OP1 3:OP3 C B 2:OP2 4:OP4

練習問題 問題4 先行子についての説明で適切なものを選択しなさい 練習問題 問題4 先行子についての説明で適切なものを選択しなさい ①あるメッセージ送信の後に分岐するときには、それぞ れのメッセージのシーケンス番号を指定する。 ②あるメッセージ送信と同時に送信すべきメッセージの シーケンス番号を指定する。 ③あるメッセージ送信の後に送信すべきメッセージの シーケンス番号を指定する。 ④あるメッセージ送信の前に送信すべきメッセージの シーケンス番号を指定する。

練習問題 問題5 この図は何を表しているか適切なものを選択しなさい 練習問題 問題5 この図は何を表しているか適切なものを選択しなさい :会員 ①パート ②パッケージ ③ライフライン ④クラス ⑤コンポーネント