UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日.

Slides:



Advertisements
Similar presentations
格成分から見た特許請求項の 概念モデリング 赤間 淳一(デジタル・インフォメー ション・ テクノロ ジー株式会社) 安彦 元(ミノル国際特許事務所) 綾木 健一郎(磯野国際特許商標事務 所) 片岡 敏光(株式会社パットブレーン) 2011/06/25.
Advertisements

クラス図(1) FM12013 山口 亨. クラスとは 現実に存在する “ 物体 ” (オブジェクト)の 構造や振る舞いなどに着目して注目し抽 象化したもの クラス図を含む UML のほとんどの図で使用 されている.
Chapter1 UML の概要とオブジェクト指向の基本概念 1 情報工学専攻 MFM10004 奥平 健太.
シーケンス図の生成のための実行履歴圧縮手法
4 相互作用図 後半 FM13001 青野大樹.
相互作用図 FM11010 田中健太.
Chapter3 クラス図(後半)             FM12014 劉鎧誠.
ソフトウェア工学特論III 第10回 その他の図 情報通信工学専攻 GM11013 堀江 真史
アルゴリズムとプログラミング (Algorithms and Programming)
実地棚卸/棚卸検数 & 在庫調整 SAP Best Practices.
オブジェクト指向プログラミング(4) 静的分析(2)
パイプラインパフォーマンス管理 SAP Best Practices.
クラスその2∽(アドバンス)∽ 福岡工業大学  梶原 大慈       .
Chapter 4 相互作用図 FM12010 中山直飛.
アルゴリズムとデータ構造1 2007年6月12日
ソフトウェア工学 知能情報学部 新田直也.
ユースケース図の概要 ・UMLの図のひとつ ・ユーザの要求を表現する目的で使用 ・システム開発の初期段階で頻繁に使用.
ユースケース図 FM12012 比嘉久登.
3-5 クラス図の関係その3 福本研究室 神田 祐輔.
顧客/コンタクト管理 SAP Best Practices.
売上原価会計 SAP Best Practices.
     年  月  日 名前 太郎 1 班.
CHAPTER1 UMLとオブジェクト指向の基本概念(2)
3-3 クラス図の関係その2.
クラス図(1) 後半 FM13010 村上 太一.
アルゴリズムとデータ構造 2011年6月13日
UMLの概要と オブジェクト指向の 基本概念
BPMN(Business Process Modeling Notation)
ユースケース図2-4~ FM11012 中島拓也.
C#とC++とオブジェクト指向 上甲 健史.
基礎情報技術 ーCSⅠ(第2日目)ー 平成19年6月15日(金) ○亀田・中村・千種.
ユースケース オブジェクト指向の要求分析のためのモデル。 スウェーデンのイヴァー・ヤコブソンが1990年代前半に開発。
オブジェクト プログラミング 第1回.
UMLとは           032234 田邊祐司.
47070 オブジェクト指向モデリング [4] 2001年10月23日.
オブジェクト指向モデリング [3] 2003年10月14日.
チーム FSEL 立命館大学情報理工学部 ソフトウェア基礎技術研究室
47070 オブジェクト指向モデリング [1] 2001年10月2日.
ソフトウェア工学 知能情報学部 新田直也.
Chapter7 その他の図 FM13010  須崎研 村上 太一.
その他の図 Chapter 7.
組込みシステムの外部環境分析のためのUMLプロファイル
UMLの概要とオブジ工クト指向の基本概念 第2回
暗黙的に型付けされる構造体の Java言語への導入
アスペクト指向に基づく 拡張可能な MDAモデルコンパイラ
社会シミュレーションのための モデル作成環境
     年  月  日 名前 太郎 1 班.
     年  月  日 名前 太郎 x 班.
オブジェクト指向モデリング [2] 2003年10月 7日.
UML関係のTIPS 2008年5月26日 2010年5月16日改訂 海谷 治彦.
ソースコード縮退による ソースコード理解 神谷年洋 科学技術振興事業団 さきがけ研究21 オブジェクト指向シンポジウム2003.
プログラミング言語論 第十四回 理工学部 情報システム工学科 新田直也.
All Rights Reserved, Copyright © 2004, Kobayashi
第1章 実世界のモデル化と形式化 3.地物インスタンスの表現
シナリオのアニメーション表示による 妥当性確認支援
47070 オブジェクト指向モデリング [3] 2001年10月16日.
物理的側面を表現する図 Chapter6 物理的側面を表現する図について徐研究室の大楠が発表します。 FM13005 大楠拓也 徐研究室.
シナリオを用いたレビュー手法PBRの追証実験 - UMLで記述された設計仕様書を対象として -
1-3 UMLの図(ダイアグラム) コンポーネント図 システムの物理的な構成を表現 ソフトウェアコンポーネントの依存性を表現
UMLの概要とオブジェクト指向の基本概念
オブジェクトの協調動作を用いた オブジェクト指向プログラム実行履歴分割手法
オブジェクト指向言語論 第十二回 知能情報学部 新田直也.
All Rights Reserved, Copyright © 2004, Kobayashi
アルゴリズムとデータ構造 2012年6月11日
物理的側面を表現する図 石原研 古賀浩之.
オブジェクト指向モデリング [9] 2003年12月2日.
47070 オブジェクト指向モデリング [3] 2001年10月15日.
より分かりやすい ユースケースモデルを作る
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
Chapter 5-2 ステートチャート図 FM12011 バユウユウ 山内研
Presentation transcript:

UML入門 UML PRESS vol.1 より 時松誠治 2003年5月19日

UMLとは Unified Modeling Language OMG(Object Management Group)が標準化 http://www.omg.org/ オブジェクト指向分析、設計においてシステムをモデル化する(記法)図法を規定したビジュアル言語(モデリング言語) 用途 自分の考えを整理 チーム開発でのコミュニケーション ユーザや顧客との対話

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

開発プロセスとUML(1) UMLは開発プロセスとは独立 開発プロセス ウォーターフォール型 反復型 アジャイル型 RUP(Rational Unified Process) http://www.rational.com/products/rup/index.jsp http://www.rational.co.jp/products/unified_process/index.html アジャイル型 XP(eXtreme Programming) http://www.atmarkit.co.jp/fjava/devs/process02/process02_2.html UMLは開発プロセスとは独立

開発プロセスと UML(2) 分析フェーズ 設計フェーズ 実装フェーズ UMLを見ながらコーディング ユースケース図を中心に要求を分析、定義 クラス図で問題領域の概念をモデル化 アクティビティ図、状態図、シーケンス図、コラボレーション図を用いて補助 設計フェーズ クラス図を中心に論理的な設計モデルの構築 コンポーネント図、配置図を用いて物理アーキテクチャを記述 実装フェーズ UMLを見ながらコーディング

使用例(勤怠システム) 社員の出退社時間を管理するシステム 社員は出退社処理のみ行うことが可能 総務の人は勤怠変更入力を行うことが可能 次期開発で遅刻、早退の理由を入力する機能を追加予定

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

ユースケース図 図の要素 システムの使用機能 (ユースケース)と、外部環境(アクタ)との関連を表す図 ユースケース アクタ ノート システムの使用機能に名前を付けたもの アクタ システムの外部でシステムと相互作用を行うもの ノート モデルに影響を与えない要素(コメント)

勤怠システムユースケース図 ノート 要訂正 ステレオタイプ アクタ 汎化

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

アクティビティ図 図の要素 関連する複数の業務や処理を順序立てて配置したもの(フローチャート) アクティビティ 開始状態 終了状態 分岐 ガード

勤怠入力システムのアクティビティ図 開始状態 ガード 終了状態 分岐 アクティビティ

アクティビティ図のその他の要素 図の要素 同期バー レーン 制御の分割や同期した結合を示す 振る舞いの責任範囲を分けるために図を縦に分割する実線

勤怠システム開発ワークフローのアクティビティ図 レーン名 レーン 同期バー

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

状態図 図の要素 ひとつのオブジェクトの状態変化を表す図 状態 状態遷移 ただし、粒度はさまざま 名前 変数 関数 オブジェクトがとる状態 ある状態から他の状態への移行

勤怠入力システムの状態図 状態遷移 状態

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

クラス図 モデルの時間的な振る舞いを含まない静的構造を表す図 図の要素 クラス 関連 特殊な関連 集約・コンポジション 依存関係 汎化 実現

勤怠入力クラス図

クラス 可視性 三つの区間 他のクラスからのアクセスを規制 クラス名 属性 操作 クラスの例 可視性一覧 表記 意味 + public # protected - private ~ package 勤怠入力コントローラ + ログイン():void + 出社():void + 退社():void + ログアウト():void クラスの例 可視性一覧

関連 クラス間の何らかのつながりを表す 矢印 多重度 ロール 関連の方向を表現 関連に参加するオブジェクトの数的関係を表現 役割を示す 関連の例

特殊な関連 集約 コンポジション いずれも全体-部分の関係 コンポジションは集約より強い関係 集約の例

依存関係 相手の変更によって影響を受ける関係 データベースラッパークラスの仕様変更によって データベース操作クラスも変更しなければならない 依存関係の例

汎化 属性・操作・関連を引き継ぐ JAVA、C++等における継承に相当する 汎化の例

勤怠入力ボタンリスナインターフェイスをもとに勤怠入力コントローラクラスを実現 操作のインターフェイスを引き継ぐ JAVAのinterfaceに相当 勤怠入力ボタンリスナインターフェイスをもとに勤怠入力コントローラクラスを実現 実現の例

UMLの拡張メカニズム ステレオタイプ 制約

ステレオタイプ 要素のもっている特徴を表現する Interfaceステレオタイプにより、振る舞いのみを定義したクラスであることを明示 ステレオタイプの例 Interfaceステレオタイプにより、振る舞いのみを定義したクラスであることを明示

制約 一定の規則を持つ場合を明示 年月日をキーとして整列した形でデータを 持つことを表現 制約の例

モデルの管理 パッケージ クラスやコンポーネントをグループ化したもの パッケージの例:クラスのパッケージ パッケージ クラス ユーザーインターフェース 勤怠入力ボタンリスナ 勤怠入力システム 勤怠入力コントローラ 勤務時間データ データベース操作 データベース データベースラッパー

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

相互作用図 オブジェクト間の相互作用を表現 シーケンス図 コラボレーション図 クラスを実体化したもの

シーケンス図 あるシナリオに沿ったオブジェクト間のメッセージのやり取りを時系列に沿って表現 コラボレーション図と同種の内容を表現 シーケンス図の特色 活性区間とライフライン

シーケンス図の要素 図の要素 オブジェクト ライフライン 活性区間 メッセージ オブジェクトの生存期間 オブジェクトに制御が移ったことを示す 矢印の形で同期と非同期を表現 リターン 返り値を記述したいケースで用いる

シーケンス図の例

コラボレーション図 あるシナリオに沿ったオブジェクト間のメッセージのやり取りを、接続関係に着目して表現 シーケンス図と同種の内容を表現 コラボレーション図の特色 オブジェクト間の関係をわかりやすく表現できる

コラボレーション図の要素 図の要素 リンク クラス図における関連 メッセージ 順序番号をつける

コラボレーション図の例

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

オブジェクト図 オブジェクトのある時点のスナップショット メッセージのないコラボレーション図 属性値を明示することもできる

UMLのダイアグラム ユースケース図 アクティビティ図 状態図 クラス図 相互作用図 オブジェクト図 コンポーネント図 配置図 シーケンス図 コラボレーション図 オブジェクト図 コンポーネント図 配置図

コンポーネント図 実装段階での要素(コンポーネント)間の関係を表現 コンポーネント ソースコードやランタイム/実行ファイルなど コンポーネント図の例

配置図 ハードウェアとコンポーネントの関係を表現 コンポーネント図の例

まとめ UMLとはオブジェクト指向のモデリング言語 UMLは開発プロセスとは独立 UMLでは9つの図を描ける 実際に多用されるのは、ユースケース図、クラス図、シーケンス図