オブジェクト指向モデリング [3] 2003年10月14日.

Slides:



Advertisements
Similar presentations
クラス図(1) FM12013 山口 亨. クラスとは 現実に存在する “ 物体 ” (オブジェクト)の 構造や振る舞いなどに着目して注目し抽 象化したもの クラス図を含む UML のほとんどの図で使用 されている.
Advertisements

Chapter1 UML の概要とオブジェクト指向の基本概念 1 情報工学専攻 MFM10004 奥平 健太.
エンティティ・リレーションシップ・モデル
4 相互作用図 後半 FM13001 青野大樹.
相互作用図 FM11010 田中健太.
ソフトウェア工学特論III 第10回 その他の図 情報通信工学専攻 GM11013 堀江 真史
アルゴリズムとプログラミング (Algorithms and Programming)
オブジェクト指向モデリング [1] 2003年9月30日.
オブジェクト指向プログラミング(4) 静的分析(2)
Chapter 4 相互作用図 FM12010 中山直飛.
ソフトウェア工学 知能情報学部 新田直也.
ソフトウェア工学特論Ⅲ ユースケース図 後半
ユースケース図の概要 ・UMLの図のひとつ ・ユーザの要求を表現する目的で使用 ・システム開発の初期段階で頻繁に使用.
ユースケース図 FM12012 比嘉久登.
3-5 クラス図の関係その3 福本研究室 神田 祐輔.
     年  月  日 名前 太郎 1 班.
CHAPTER1 UMLとオブジェクト指向の基本概念(2)
3-3 クラス図の関係その2.
クラス図(1) 後半 FM13010 村上 太一.
UMLの概要と オブジェクト指向の 基本概念
セマンティクスを利用した 図書検索システム
UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.
基礎情報技術 ーCSⅠ(第2日目)ー 平成19年6月15日(金) ○亀田・中村・千種.
ユースケース オブジェクト指向の要求分析のためのモデル。 スウェーデンのイヴァー・ヤコブソンが1990年代前半に開発。
データベース設計 データベース設計 第0回 オリエンテーション 坂口利裕.
オブジェクト プログラミング 第1回.
UMLとは           032234 田邊祐司.
47070 オブジェクト指向モデリング [4] 2001年10月23日.
47070 オブジェクト指向モデリング [1] 2001年10月2日.
ソフトウェア工学 知能情報学部 新田直也.
47070 オブジェクト指向モデリング [1] 2002年10月1日.
Chapter7 その他の図 FM13010  須崎研 村上 太一.
47070 オブジェクト指向モデリング [6] 2001年11月13日.
その他の図 Chapter 7.
組込みシステムの外部環境分析のためのUMLプロファイル
UMLの概要とオブジ工クト指向の基本概念 第2回
47070 オブジェクト指向モデリング [7] 2001年11月 12日.
暗黙的に型付けされる構造体の Java言語への導入
アスペクト指向に基づく 拡張可能な MDAモデルコンパイラ
社会シミュレーションのための モデル作成環境
     年  月  日 名前 太郎 1 班.
     年  月  日 名前 太郎 x 班.
「友と学ぶ」 モバイル部門 企画書 テーマ タイトル 校名 グループ名 [文書のタイトルを入力してください] [学校名] モバイル部門の概要
オブジェクト指向モデリング [2] 2003年10月 7日.
データモデリング 情報システム学科 島川 博光.
UML関係のTIPS 2008年5月26日 2010年5月16日改訂 海谷 治彦.
オブジェクト指向言語論 第八回 知能情報学部 新田直也.
プログラミング言語論 第十四回 理工学部 情報システム工学科 新田直也.
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
11.3 酒屋の在庫問題(8) ユースケース 仕入販売支援システム 11. モデリング 受注する 入庫を記録する 在庫を引き当てる 受付係
47070 オブジェクト指向モデリング [3] 2001年10月16日.
物理的側面を表現する図 Chapter6 物理的側面を表現する図について徐研究室の大楠が発表します。 FM13005 大楠拓也 徐研究室.
シナリオを用いたレビュー手法PBRの追証実験 - UMLで記述された設計仕様書を対象として -
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
UMLの概要とオブジェクト指向の基本概念
知識表現 知識の表現形式 宣言的表現 手続き的表現 プロダクション・ルール フレーム 意味ネットワーク.
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
All Rights Reserved, Copyright © 2004, Kobayashi
「クラナビ」 カード操作規約 enTranceプロジェクト.
47070 オブジェクト指向モデリング [8] 2002年12月 3日.
オブジェクト指向モデリング [11] 2003年12月16日.
物理的側面を表現する図 石原研 古賀浩之.
ソフトウェア工学 理工学部 情報システム工学科 新田直也.
オブジェクト指向モデリング [9] 2003年12月2日.
自然言語処理2008 平成20年12月22日.
ソフトウェア工学 知能情報学部 新田直也.
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
47070 オブジェクト指向モデリング [3] 2001年10月15日.
ソフトウェア工学 知能情報学部 新田直也.
GluonJ を用いたビジネスロジックからのデータベースアクセスの分離
Presentation transcript:

オブジェクト指向モデリング [3] 2003年10月14日

2.2 表記法の概要(0) 9種の表記法 概念レベル ①クラス図 ②オブジェクト図 ⑥ステートチャート図 ⑦活動図 ③ユースケース図 2. モデリング言語 2.2 表記法の概要(0) 9種の表記法 関心 静的側面 機能側面 動的側面 物理側面 観点 概念レベル ①クラス図 ②オブジェクト図 ⑥ステートチャート図 ⑦活動図 ③ユースケース図 ④協調図 ⑤シーケンス図 仕様レベル ⑧コンポーネント図 ⑨配置図 実装レベル 図の要素 ノート,型-インスタンスの対応 モデル管理 パッケージ 汎用拡張機構 制約と注釈,ステレオタイプ アクションの記述 アクションセマンティクス

2.3 開発プロセスとモデル ソフトウエアプロセス ワークフロー フェーズ設定 実装 機能 機能 要求記述 分析 設計 制作 問題,目的 2. モデリング言語 2.3 開発プロセスとモデル ソフトウエアプロセス ワークフロー フェーズ設定 方向づけ 推敲 構築 移行 分析 設計 制作 検査 問題,目的 変換(演繹) 判断 制約,価値観 変換(演繹) 判断 制約,価値観 変換(演繹) 判断 制約,価値観 Function 機能 Feature 機能 Artifact 実装 Requirements 要求記述 変換 変換 変換 要求記述(ユースケース) 分析 概念レベル 設計 仕様レベル 制作 実装レベル 検査 型図(クラス図) ワークフロー(活動図) クラス図 相互作用図 クラス図 配置図

シラバス 授業計画 回 月日 内容 1 9月 30日 オリエンテーション:モデルとは何か。 2 10月 7日 モデリング言語:UMLの概要 オブジェクト指向モデリング シラバス 授業計画 回 月日 内容 1 9月 30日 オリエンテーション:モデルとは何か。 2 10月 7日 モデリング言語:UMLの概要 3 10月14日 静的モデル1:概念とクラス,関連 4 10月21日 静的モデル2:関連 5 10月28日 静的モデル3:オブジェクト図 6 11月 4日 静的モデル4:高度な関連 7 11月11日 機能モデル1:ユースケース 8 11月18日 機能モデル2:ユースケース記述,シナリオ 9 12月 2日 動的モデル:協調図,シーケンス図,状態図,活動図 10 12月 9日 モデル図の理解:アナリシスパターン,事例 11 12月16日 モデリング1:モデル図の作成,モデルの評価基準 12 1月13日 モデリング2:例題によるユースケース記述 13 1月20日 モデリング3:例題によるモデル図の作成

3. 概念とクラス 3.1 概念レベル 3.2 クラス図の背景 3.3 概念 3.4 概念と型 3.5 クラスシンボル 3.6 属性と操作 オブジェクト指向モデリング 3. 概念とクラス 3.1 概念レベル 3.2 クラス図の背景 3.3 概念 3.4 概念と型 3.5 クラスシンボル 3.6 属性と操作

3.1 概念レベル 概念モデル なぜ概念レベルのモデルを書くのか 対象世界を深く理解する 概念間の関係として書く 概念の意味は関係で定まる 3. 概念とクラス 3.1 概念レベル 世界 概念モデル 対象世界を深く理解する 概念間の関係として書く 概念の意味は関係で定まる 最小かつ完備 なぜ概念レベルのモデルを書くのか 対象世界を本質的に理解する 実装技術上の都合によって,理解をゆがめない より良い情報システムを作りたい 世界の変化に情報システムが追随できるように

3.2 クラス図の背景 概念データモデル 記述ルール クラス図 E-R図(P.P.Chen) さまざまなE-R図の拡張 3. 概念とクラス 3.2 クラス図の背景 概念データモデル E-R図(P.P.Chen) さまざまなE-R図の拡張 情報図(Shlaer-Mellor) OMTのオブジェクト図(Rumbaughほか) 記述ルール クラス図 概念構造 モジュール構造 学生 N 履修 N 科目 学生 履修 科目 学生 履修 科目 氏名 生年月日 成績 科目名 単位 学生 履修 科目 * * 氏名 生年月日 成績 科目名 単位

3.3 概念(1) 概念 エンティティセット よい概念を 「商品」というと具体的に思えるが 観察者によってプロセスの意味が異なる 3. 概念とクラス 3.3 概念(1) 概念 「商品」というと具体的に思えるが 他の概念やプロセスとの関わりがあって,はじめて意味が定まる その意味が,将来,変わるかもしれない 観察者によってプロセスの意味が異なる 「取引」か「販売」か ビュー(外部表現)は概念でない 名前を持つ エンティティセット よい概念を 見つける 磨く 在庫品 製品 送り荷 サービス 商品

3.3 概念(2) 概念を集合として扱う 集合を特徴づける属性 関係が概念を決める たとえば,学生とは... 3. 概念とクラス 3.3 概念(2) 辞書的定義「学校で学ぶ人」が,そのまま問題領域で使われることはない 概念を集合として扱う たとえば,学生とは... 「本学の入学試験に合格して入学手続きをした個人」 学生である人とそうでない人を分ける・・境界を定める 集合を特徴づける属性 関係が概念を決める 「学生」の集合 属性  ・氏名  ・学部  ・生年月日 属性の値  氏名:小泉淳之介  学部:政経  生年月日:1982年5月4日 属性の値  氏名:児玉公信  学部:心理学  生年月日:1983年11月11日 属性の値  氏名:田口洋介  学部:工学  生年月日:1978年8月20日 属性の値  氏名:中山美子  学部:農学  生年月日:1982年9月30日 学生でない人

3.3 概念(3) 演習1 ファーストフード店のシステムを考えて, 3. 概念とクラス 3.3 概念(3) 演習1 ファーストフード店のシステムを考えて, 重要と思われる概念を1つ挙げて,その主要な属性と,インスタンスをいくつか示してください。

3.4 概念と型 概念を「型」に対応づける 「型」を「クラス」に対応づける 型:構造化された概念 3. 概念とクラス 3.4 概念と型 概念を「型」に対応づける 「型」を「クラス」に対応づける 型:構造化された概念 クラス:プログラムを構成するモジュールの単位 概念をエンティティセットに対応づける エンティティセットをRDBの「表」に対応づける 児玉公信 オブジェクト指向モデリング 小泉淳之介 生産管理システム入門 田口洋介 履修する 問題発見と問題解決 中山美子 「学生」の集合 「授業科目」の集合 学生 氏名 学部  : 授業科目 名称 教員 0..* 履修する

3.5 クラスシンボル 型の構造をクラス図で表記する クラスシンボル 関連 クラス名→型名 データ→(型の)属性 メソッド→(型の)操作 3. 概念とクラス 3.5 クラスシンボル 型の構造をクラス図で表記する クラスシンボル クラス名→型名 データ→(型の)属性 メソッド→(型の)操作 関連 関連名 多重度 学生 氏名 学部  : 名前を教えて 年齢を教えて 授業科目 名称 教員  : 履修申請する 教員を変更する 履修する * *

3.6 属性と操作(1) 属性 理解に必要な属性 本 書名 is a copy of 3. 概念とクラス 0..* 1..1 何番め 書名 購入日 借りた日 返却予定日  : 書名 著者 訳者 発行日 ISBN 貸出可能数  : is a copy of 0..* 1..1

3.6 属性と操作(2) 操作 その型が持つ責任 本 書名 is a copy of 3. 概念とクラス 0..* 1..1 何番め 購入日 借りた日 返却予定日  : 書名 著者 訳者 発行日 ISBN 貸出可能数  : is a copy of 0..* 1..1 ある機能を実現するために必要な操作 is貸出可能() 借りる()  : 貸出実施()

3.6 属性と操作(2) 操作の割当て ユースケース「本を借りる」 書名 会員 貸出 本 is a copy of 3. 概念とクラス d:貸出 a:会員 b:本 c:書名 書名 著者 訳者 発行日 ISBN /貸出可能数  : 利用者 new 1..1 is a copy of 0..* 会員 貸出 本 氏名 住所  : 借りた日 返却予定日  : 何番め 購入日  : 0..* 0..* 1..1 1..1 isValid() : 借りる() 返却()  : is貸出可能()  :

4. 関連 4.1 関連と多重度 4.2 ロール 4.3 再帰関連 4.4 汎化関連 4.5 集約関連 4.6 補足的な関連 問題解決からビジネスモデリングへ 4. 関連 4.1 関連と多重度 4.2 ロール 4.3 再帰関連 4.4 汎化関連 4.5 集約関連 4.6 補足的な関連

ソースを主語とし,関連名を述語として読めるように... 4. 関連 4.1 関連と多重度(1) 関連(association) 関連の方向 ソース → ターゲット ソースを主語とし,関連名を述語として読めるように... 書名 本 is a copy of 0..* 1..1 実践ファンクションポイント法 リファクタリング UMLを使って 1番め 2番め 3番め 本 書名

4.1 関連と多重度(2) 多重度(multiplicity) インスタンスどうしの対応(リンク)数 書名 本 ターゲットの近傍に表記 4. 関連 4.1 関連と多重度(2) 多重度(multiplicity) インスタンスどうしの対応(リンク)数 ターゲットの近傍に表記 0,1,* 最小数..最大数 書名 本 is a copy of 0..* 1..1 実践ファンクションポイント法 リファクタリング UMLを使って 1番め 2番め 3番め 本 書名

4.1 関連と多重度(3) 多重度(multiplicity) ソースのある1つのインスタンスからリンクされるターゲットのインスタンス数 本 4. 関連 4.1 関連と多重度(3) 多重度(multiplicity) ソースのある1つのインスタンスからリンクされるターゲットのインスタンス数 0..* 本 書名 1..1 実践ファンクションポイント法 リファクタリング UMLを使って 1番め 2番め 3番め 本 書名

4.1 関連と多重度(4) 多重度の表記 関連の表記 書名 本 本 書名 最小数..最大数 「2..5」 4. 関連 4.1 関連と多重度(4) 多重度の表記 最小数..最大数 「2..5」 列挙 「2,5」,「0..1,3,5」 無限 「*」 省略 「0..*」=「*」,「1..1」=「1」 関連の表記 関連名:自明なら省略 関連の方向:自明なら省略 書名 本 is a copy of 0..* 1..1 本 書名 * 1

4.1 関連と多重度(5) 演習2 次の条件で,多重度を埋めてください 4. 関連 4.1 関連と多重度(5) 演習2 次の条件で,多重度を埋めてください 条件:「学生」は最多で6つまでの「授業科目」を履修でき,各「授業科目」には最多で25人の「学生」を登録できる。 授業科目 学生