Presentation is loading. Please wait.

Presentation is loading. Please wait.

47070 オブジェクト指向モデリング [10] 2001年12月18日.

Similar presentations


Presentation on theme: "47070 オブジェクト指向モデリング [10] 2001年12月18日."— Presentation transcript:

1 47070 オブジェクト指向モデリング [10] 2001年12月18日

2 前回 動的モデル2 9.1 ユースケースを書いてみよう 9.2 コラボレーション図 9.3 シーケンス図 9.4 状態図
オブジェクト指向モデリング 前回 動的モデル2 9.1 ユースケースを書いてみよう 9.2 コラボレーション図 9.3 シーケンス図 9.4 状態図 9.5 アクティビティ図

3 相互作用図 責任の配置 あるユースケース コラボレーション図 シーケンス図 動的モデル2 オブジェクト図 メッセージ 通信 タイミング 著書
borrow(#1234) 1:okToBorrow 2:borrow 2.1:borrowed その会員: 会員 #1234:本 UsingUML: 著書 :本の借り手 責任の配置 あるユースケース コラボレーション図 オブジェクト図 メッセージ シーケンス図 通信 タイミング 著書 会員 0..* 1 0..1 の印刷物である 借りる/返却する その会員: 会員 #1234:本 UsingUML: 著書 :本の借り手 borrow(#1234) 1:okToBorrow( ) 2:borrow( ) 2.1:borrowed( )

4 状態図 ステートチャート図 アクティビティ図 あるオブジェクトの状態 遷移 開始状態、終了状態 アクティビティ 制御の流れ レーン
動的モデル2 状態図 貸出し中 書架にある return() borrow() イベント 状態 遷移 ステートチャート図 あるオブジェクトの状態 遷移 イベント[ガード]/アクション 開始状態、終了状態 アクティビティ図 アクティビティ 制御の流れ 制御構造 split,join レーン アクタ 書架に本を 見つける 並んで待つ [借りる人] [返却する人] 貸出しを記録 次の利用者 に備える [返却する] [借りる] 会員 司書 返却を記録 本を書架に 戻す

5 第10回 モデル図の理解 10.1 責任関係 10.2 勘定 10.3 生産管理システム 10.4 素材発注システム
オブジェクト指向モデリング 第10回 モデル図の理解 10.1 責任関係 10.2 勘定 10.3 生産管理システム 10.4 素材発注システム すべて 教科書外

6 10.1 責任関係(1) 責任関係(accountability)パターン 明示的なレベルを持った組織 Fowler, M.,
モデル図の理解 10.1 責任関係(1) Fowler, M., Analysis Patterns 責任関係(accountability)パターン 明示的なレベルを持った組織 変更に弱い 操作(メソッド)の重複,類似の属性 オブジェクト(インスタンス)図 事業部 地域 * 1 営業所 部門 売上 コーヒー:事業部 首都圏:地域 神奈川:部門 藤沢:営業所 川崎:営業所 東京:部門

7 パターンランゲージ ソフトウェアにおけるパターン Christopher Alexander パターンの記述 体系づけられたパターンの順序
よい建築がもつ性質 無名の質(Quality Without A Name) 生き生きと生きること(alive) パターンの重層 パターンの記述 パターン名 背景,問題意識 解決策 フォース(有効である状況,他のパターンとの関係) 体系づけられたパターンの順序 ソフトウェアにおけるパターン デザインパターン(GoF) アナリシスパターン(Fowler) アーキテクチャパターン(POSA) 213~216ページ

8 10.1 責任関係(2) 階層関係を持つ組織 類似の操作,属性はスーパタイプに持つ 制約の変更が煩わしい マトリックス組織にはどう対応する?
モデル図の理解 10.1 責任関係(2) このインスタンス図はどうなる? 階層関係を持つ組織 類似の操作,属性はスーパタイプに持つ 制約の変更が煩わしい マトリックス組織にはどう対応する? <<階層>> 0..1 制約: 組織 制約:  親は持たない * *  親は部門 事業部 地域 部門 営業所 制約: 制約:  親は事業部  親は地域

9 コーヒー:事業部 首都圏:地域 神奈川:部門 藤沢:営業所 川崎:営業所 東京:部門

10 10.1 責任関係(3) 2系統の階層 制約変更の煩わしさが2倍に モデル図の理解 このインスタンス図はどうなる? 組織 子営業 親営業
* 子営業 親営業 親サービス 子サービス 事業部 地域 部門 営業所 サービス部門 サービス地域 サービスチーム サービスセンタ 制約:  親営業は部門  親サービスはサービスセンタ,親営業は営業所 制約: <<階層>>

11 コーヒー:事業部 首都圏:地域 神奈川:部門 藤沢:営業所 川崎:営業所 東京:部門 親営業 子営業 東京:サービス部門 藤沢:サービスセンタ 藤沢:サービスチーム 川崎:サービスチーム 横浜:サービスセンタ 首都圏:サービス地域 神奈川:サービス部門 親サービス 子サービス

12 10.1 責任関係(4) 関連型の使用 組織構造の制約は,組織構造の変化に敏感 モデル図の理解 このインスタンス図はどうなる? 事業部 地域
部門 営業所 インスタンス:  営業組織  サービス組織 制約:  営業所の親は部門….  サービスチームの親は営業所およびサービスセンタ…. 期間 組織構造型 組織 組織構造 1 * 有効期間 サービスチーム

13 神奈川:部門 藤沢:営業所 川崎:営業所 営業組織:組織構造型 親 子 藤沢:サービスセンタ 藤沢:サービスチーム 川崎:サービスチーム
横浜:サービスセンタ :組織構造 神奈川:サービス部門 サービス組織:組織構造型 :期間 2001/10/1 _ 2002/1/22

14 10.1 責任関係(5) 「組織構造型」と「ルール」 組織構造型ごとのルール 組織の変化に弱い モデル図の理解
このインスタンス図はどうなる? 「組織構造型」と「ルール」 組織構造型ごとのルール 組織の変化に弱い 事業部 地域 部門 営業所 期間 組織構造型 組織 組織構造 1 * 有効期間 サービスチーム ルール

15 神奈川:部門 藤沢:営業所 川崎:営業所 営業組織:組織構造型 親 子 藤沢:サービスセンタ 藤沢:サービスチーム 川崎:サービスチーム
横浜:サービスセンタ :組織構造 神奈川:サービス部門 サービス組織:組織構造型 :期間 2001/10/1 _ 2002/1/22 営業組織型:ルール 営業所の親は部門,部門の親は地域,... サービスチームの親は営業所およびサービスセンタ,サービスセンタの親は,….

16 10.1 責任関係(6) 組織階層を「責任関係」として一般化 依頼者→実行者 Customer-Performerの関係 モデル図の理解
組織 責任関係型 期間 パーティ 責任関係 * 1 実行者 依頼者 有効期限

17 10.1 責任関係(7) 知識レベルと操作レベル パワータイプ(ベキ型) 操作レベルの型の制約を記述 鏡像関係 モデル図の理解
このインスタンス図はどうなる? 知識レベルと操作レベル パワータイプ(ベキ型) 操作レベルの型の制約を記述 鏡像関係 知識レベル 操作レベル 組織 期間 作業 パーティ 責任関係 1 * パーティ型 責任関係型 1..* 実行者 依頼者 有効期限 inv:  collx:set(責任関係)=self.the責任関係  collX->forALL( x | x.型.依頼者->includes(x.依頼者.型) and x.型.実行者->includes(x.実行者.型))

18 シナリオ 同意:責任関係 患者:鈴木一郎は医師:山田太郎との間で,2001年12月18日に内視鏡検査を受けることについて同意した 依頼者
 患者:鈴木一郎は医師:山田太郎との間で,2001年12月18日に内視鏡検査を受けることについて同意した 依頼者 患者 :パーティ型 同意:責任関係型 医師 :パーティ型 実行者 内視鏡検査:作業 :責任関係 依頼者 鈴木一郎 :パーティ :期間 実行者 山田太郎 :パーティ 2001/12/18

19 10.2 勘定(1) 移動の記録 勘定(account) 多肢トランザクション モデル図の理解 このインスタンス図はどうなる? 勘定
/残高 : 量 トランザクション エントリ 数量 : 量 2..*    <<business rule>> inv:  self.エントリ.数量->sum = 0 * 1 実施日:日

20 シナリオ 航空券の購入:多肢トランザクション
 2001年5月1日,航空券を買うためにA航空に45,000円をクレジットカードで払った。2001年5月31日,当座預金からクレジット勘定へ,それを埋合わせるトランザクションを作成した :エントリ :トランザクション 2001年5月1日 クレジット:勘定 -45000円 :エントリ +45000円 A航空:勘定 :エントリ -45000円 :トランザクション 2001年5月31日 当座預金:勘定 :エントリ +45000円

21 10.2 勘定(2) 移動の記録 二肢トランザクション モデル図の理解 このインスタンス図はどうなる? 導出:
時点 勘定 トランザクション * 1 払出 繰入 導出:  残高=self.~繰入.the量->sum - self.~払出.the量->sum 残高 {導出}

22 シナリオ 航空券の購入:二肢トランザクション
 2001年5月1日,航空券を買うためにA航空に45,000円をクレジットカードで払った。2001年5月31日,当座預金からクレジット勘定へ,それを埋合わせるトランザクションを作成した :トランザクション クレジット:勘定 A航空:勘定 当座預金:勘定 :量 45000円 :時点 2001年5月1日 2001年5月31日 残高 繰入 払出

23 10.2 勘定(3) 要約 ロールアップ モデル図の理解 このインスタンス図はどうなる? inv:
/対象エントリ=self.構成要素./対象エントリ トランザクション 対象エントリ エントリ 数量 : 量 1 2..* /対象エントリ 構成要素 {抽象} 勘定 / 残高 : 量 明細勘定 要約勘定 * 0..1 {階層} /対象エントリ=self.対象エントリ

24 旅費交通費:要約勘定 航空旅費:要約勘定 A航空:明細勘定 B航空:明細勘定 クレジット:明細勘定 :エントリ :エントリ :エントリ
構成要素 航空旅費:要約勘定 構成要素 A航空:明細勘定 B航空:明細勘定 クレジット:明細勘定 /対象エントリ /対象エントリ 対象エントリ :エントリ :エントリ :エントリ :エントリ +45000円 +66000円 +128000円 -45000円 :トランザクション 2001年5月1日 :トランザクション 2001年1月31日 :トランザクション 2001年11月21日

25 10.3 生産管理システム モデル図の理解 未定 制約: 最終製品の完 成時に未定であっ てはならない 用途使用条件種
 最終製品の完 成時に未定であっ てはならない 用途使用条件種 (from 技術データ管理) /変更可能用途使用条件 * 品目群 品目群名 用途使用条件値 1 生産計画 製造番号 出来数量 /製造納期 /実績原価 1..* 0..* 座席予約 pegging 投入品目 投入数量 生産品目 生産数量 投入資源 /品目 /製造リードタイム 1..1 指定日 0..1 component 対象 最終製品 /構成部品 <<導出>> assembly 加工資源 加工データ 調達品 調達原価 内作品 /製造原価 単位原価 顧客注文 顧客オーダ番号 顧客名称 数量 希望納期 受注日時 部品期首在庫 部品実在庫量 期首 : 日付 /在庫 / 部品有効在庫量 部品調達計画 製造方法 / 着手日 / 完了日 / 加工原価 ロットサイズ /加工機能 加工機能名 加工時間 着手日 完了日 工順 {ordered} 群加工機能 <<動的>> 加工終了 加工中 未着手

26 10.4 素材発注システム モデル図の理解 製品メーカ 入庫 移動 出庫 在庫調整 裁断 素材 進捗 /エントリ /トランザクション 場所
アクタ : 在庫調整 移動元_ : エントリ 移動先_ : 移動先 : 在庫単位 移動元 : create findAccount createAccount if not found 製品メーカ 入庫 移動 出庫 在庫調整 裁断 素材 進捗 /エントリ /トランザクション 2..* 場所 素材メーカ 染色 完成 <<動的>> 発注 * SKU /在庫 /在庫単位


Download ppt "47070 オブジェクト指向モデリング [10] 2001年12月18日."

Similar presentations


Ads by Google