SlideShare a Scribd company logo
1 of 12
©2013 Shintaro Hosoai
U M L
Unified Modeling Language
細合 晋太郎
2013/8/21
1
©2013 Shintaro Hosoai
そもそもモデリングってなあに?
• システムって超複雑
いきなり作る(考える)のは無理
• ある観点だけをある抽象度で抽出したもの → モデル
• 世にあるほとんどの~図はモデルと言ってもいい
• Ex) 上から見た構造 → 上面図
• Ex) 粘土で形だけ → クレイモデル
• Ex) 音階とタイミングで音楽を分解 → 楽譜
2013/8/21
2
おおまかにど
んな構造?
具体的ににど
んな構造?
どんな順番で動く?
どんな状態がある?
どんなメッセージをやりと
りする?
抽象度
いろんな観点と抽象度で
考えて(設計して)から実装
©2013 Shintaro Hosoai
構造モデルと振舞いモデル
• 観点は大きく分けると構造と振舞いに大別できる。
• どんな形をしているのか?どんな動きをするのか?
• UMLでは、構造と振舞いのモデルが様々な抽象度と観点で定義され
ている。
UMLモデルは厳密に定義されている。
• UMLの仕様書(Super Structure)
• http://www.omg.org/spec/UML/2.4.1/Superstructure/PDF/
2013/8/21
3
©2013 Shintaro Hosoai
UMLの歴史
1990年代。世はOOP開発方法論戦国時代
開発方法論ごとに数多のモデリング言語が入り乱れ、表
記法で表記法を洗う熾烈なモデル存在競争を繰り広げて
いた
このままでは、開発者同士の意思の疎通すら難しい現代
版バベルの塔となってしまう
3人の漢が立ち上がった。
2013/8/21
4
©2013 Shintaro Hosoai
Three Amigos
2013/8/21
5
Grady Booch Ivar JacobsonJames Rumbaugh
http://www.itmedia.co.jp/im/articles/0212/18/news001.html
http://en.wikipedia.org/wiki/Grady_Booch http://en.wikipedia.org/wiki/Ivar_Jacobson
画像は以下より転載
©2013 Shintaro Hosoai
モデリング言語の統一
2013/8/21
6
http://thinkit.co.jp/free/compare/12/1/より転載
UML 2.1.1
UML 2.1.2
UML 2.2
UML 2.3
UML 2.4
UML 2.4.1
2007,Aug
2007,Nov
2009,Feb
2010,May
2011,Mar
2011,Aug
2013/08/10 現在
©2013 Shintaro Hosoai
UML Diagrams (version 2.4.1)
2013/8/21
7
http://www.omg.org/spec/UML/2.4.1/Superstructure/PDF/ pp710
©2013 Shintaro Hosoai
構造モデル
• Deployment Diagram:配置図
• Component Diagram:コンポーネント図
• Composite Structure Diagram:複合構造図
• Package Diagram:パッケージ図
• Class Diagram:クラス図
• Object Diagram:オブジェクト図
• Profile Diagram:プロファイル図
2013/8/21
8
抽象度
低
高
これは別観点
©2013 Shintaro Hosoai
振舞いモデル
• Use Case Diagram:ユースケース図
• Activity Diagram:アクティビティ図
• State Machine Diagram:ステートマシン図
• Interaction Diagram:相互作用図
• Sequence Diagram:シーケンス図
• Communication Diagram:コミュニケーション図
• Interaction Overview Diagram:相互作用概念図
• Timing Diagram:タイミング図
2013/8/21
9
振舞いモデルは、見たい観点がそれぞれ異なる。
外界との関係、要求
システムフロー
状態
オブジェクト間フロー
オブジェクト相互関係
図間のオーバービュー
動作タイミング
©2013 Shintaro Hosoai
クラス図
システムのクラス構造を書くため
のモデル
箱でクラスの構造を、線でクラス
間の関係を表現する
線種
2013/8/21
10
クラス名
属性*
操作*
ここにクラス名
クラス変数
メソッド
クラスA クラスB
子クラスC
11
多重度
単方向関連
双方向関連
継承
集約
コンポジション
©2013 Shintaro Hosoai
ステートマシン図
• 状態と遷移を可視化するモデル
• ある状態の時に、その状態から
の遷移に指定されているイベン
トが入ると次状態に遷移する
• Guard
• イベントが入った際でもGuardに指定された
条件が満たされていないと遷移しない
• Action
• 遷移が発生した際にここで指定したAction
が実行される
• EntryEvent
• その状態に入った際にここで指定した
Actionが実行される
2013/8/21
11
State
EntryAction()
状態 初期状態
終了状態EntryAction
状態名 Event[Guard]/Action
StateA StateB
StateC
EventA
EventBEventC
EventD
遷移
©2013 Shintaro Hosoai
クラス図・ステートマシン図のモデリング
• 何を作りたいかを明確にする
• 作りたいシステムの機能を洗い出す
• 近い機能ごとにまとめてみる → クラスに出来そうか考える
• クラスとして書き出す、クラス間の関係を考える
• クラスが状態を持つか考える
• 状態を持つクラスをステートマシンに書き出す
• ステートマシン図、クラス図に齟齬がないか確認
• 適宜、リファクタリングを行い設計を進める
2013/8/21
12

More Related Content

Viewers also liked

Resume M Pitcher 2010 08 27
Resume   M Pitcher 2010 08 27Resume   M Pitcher 2010 08 27
Resume M Pitcher 2010 08 27Michael Pitcher
 
Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...
Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...
Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...CambridgeIP Ltd
 
Goodrich Global 产品常见问题 (地板)
Goodrich Global 产品常见问题 (地板)Goodrich Global 产品常见问题 (地板)
Goodrich Global 产品常见问题 (地板)Goodrich Global
 
Tulospohjainen Markkinointi Netissä
Tulospohjainen Markkinointi NetissäTulospohjainen Markkinointi Netissä
Tulospohjainen Markkinointi NetissäDarwin Oy
 
Materi rapat sosev batam
Materi rapat sosev batamMateri rapat sosev batam
Materi rapat sosev batamMohammad Subhan
 
P I Infosoft Is Different
P I Infosoft Is DifferentP I Infosoft Is Different
P I Infosoft Is DifferentRajarshi
 
How to-write-a-story
How to-write-a-storyHow to-write-a-story
How to-write-a-storyRocio Torres
 
Participants List For Jsm
Participants List For JsmParticipants List For Jsm
Participants List For JsmJADE aisbl
 
Canvas Based Presentation tool - First Review
Canvas Based Presentation tool - First ReviewCanvas Based Presentation tool - First Review
Canvas Based Presentation tool - First ReviewArvind Krishnaa
 
CambridgeIP Webinar: Developing a fact Based IP Strategy
CambridgeIP Webinar: Developing a fact Based IP StrategyCambridgeIP Webinar: Developing a fact Based IP Strategy
CambridgeIP Webinar: Developing a fact Based IP StrategyCambridgeIP Ltd
 
Verkko Myyntikanavana
Verkko MyyntikanavanaVerkko Myyntikanavana
Verkko MyyntikanavanaDarwin Oy
 
Goodrich Global Corporate Brochure
Goodrich Global Corporate  BrochureGoodrich Global Corporate  Brochure
Goodrich Global Corporate BrochureGoodrich Global
 
TodiCastle: villa rentals & historic hotel in Umbria
TodiCastle: villa rentals & historic hotel in UmbriaTodiCastle: villa rentals & historic hotel in Umbria
TodiCastle: villa rentals & historic hotel in UmbriaMario Santoro
 
Digiaika - Mikä Muuttuu Markkinoinnissa
Digiaika - Mikä Muuttuu MarkkinoinnissaDigiaika - Mikä Muuttuu Markkinoinnissa
Digiaika - Mikä Muuttuu MarkkinoinnissaDarwin Oy
 
Bahan presentasi uu asn batam 11 nov 2014
Bahan presentasi uu asn batam 11 nov 2014Bahan presentasi uu asn batam 11 nov 2014
Bahan presentasi uu asn batam 11 nov 2014Mohammad Subhan
 
My cool new Slideshow!
My cool new Slideshow!My cool new Slideshow!
My cool new Slideshow!Parag Gajbhiye
 

Viewers also liked (19)

Resume M Pitcher 2010 08 27
Resume   M Pitcher 2010 08 27Resume   M Pitcher 2010 08 27
Resume M Pitcher 2010 08 27
 
Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...
Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...
Technology Transfer in the Renewable Energy Space: Key Challenges and Opportu...
 
Goodrich Global 产品常见问题 (地板)
Goodrich Global 产品常见问题 (地板)Goodrich Global 产品常见问题 (地板)
Goodrich Global 产品常见问题 (地板)
 
Tulospohjainen Markkinointi Netissä
Tulospohjainen Markkinointi NetissäTulospohjainen Markkinointi Netissä
Tulospohjainen Markkinointi Netissä
 
Curvess I&E
Curvess I&ECurvess I&E
Curvess I&E
 
Materi rapat sosev batam
Materi rapat sosev batamMateri rapat sosev batam
Materi rapat sosev batam
 
P I Infosoft Is Different
P I Infosoft Is DifferentP I Infosoft Is Different
P I Infosoft Is Different
 
How to-write-a-story
How to-write-a-storyHow to-write-a-story
How to-write-a-story
 
♥♥♥
♥♥♥♥♥♥
♥♥♥
 
Participants List For Jsm
Participants List For JsmParticipants List For Jsm
Participants List For Jsm
 
Canvas Based Presentation tool - First Review
Canvas Based Presentation tool - First ReviewCanvas Based Presentation tool - First Review
Canvas Based Presentation tool - First Review
 
CambridgeIP Webinar: Developing a fact Based IP Strategy
CambridgeIP Webinar: Developing a fact Based IP StrategyCambridgeIP Webinar: Developing a fact Based IP Strategy
CambridgeIP Webinar: Developing a fact Based IP Strategy
 
Verkko Myyntikanavana
Verkko MyyntikanavanaVerkko Myyntikanavana
Verkko Myyntikanavana
 
Goodrich Global Corporate Brochure
Goodrich Global Corporate  BrochureGoodrich Global Corporate  Brochure
Goodrich Global Corporate Brochure
 
TodiCastle: villa rentals & historic hotel in Umbria
TodiCastle: villa rentals & historic hotel in UmbriaTodiCastle: villa rentals & historic hotel in Umbria
TodiCastle: villa rentals & historic hotel in Umbria
 
Digiaika - Mikä Muuttuu Markkinoinnissa
Digiaika - Mikä Muuttuu MarkkinoinnissaDigiaika - Mikä Muuttuu Markkinoinnissa
Digiaika - Mikä Muuttuu Markkinoinnissa
 
Unit 0
Unit 0Unit 0
Unit 0
 
Bahan presentasi uu asn batam 11 nov 2014
Bahan presentasi uu asn batam 11 nov 2014Bahan presentasi uu asn batam 11 nov 2014
Bahan presentasi uu asn batam 11 nov 2014
 
My cool new Slideshow!
My cool new Slideshow!My cool new Slideshow!
My cool new Slideshow!
 

More from Shintaro Hosoai

UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature ModelUMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature ModelShintaro Hosoai
 
astah関西勉強会#2 STAMP Workbenchではじめる安全分析
astah関西勉強会#2 STAMP Workbenchではじめる安全分析astah関西勉強会#2 STAMP Workbenchではじめる安全分析
astah関西勉強会#2 STAMP Workbenchではじめる安全分析Shintaro Hosoai
 
Eclipse modeling projectの概要
Eclipse modeling projectの概要Eclipse modeling projectの概要
Eclipse modeling projectの概要Shintaro Hosoai
 
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介Shintaro Hosoai
 
Eclipse con2010 参加報告 upload
Eclipse con2010 参加報告 uploadEclipse con2010 参加報告 upload
Eclipse con2010 参加報告 uploadShintaro Hosoai
 

More from Shintaro Hosoai (11)

UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature ModelUMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
UMLだけじゃないもやもやを解消するモデリング技術の紹介 その2 Feature Model
 
astah関西勉強会#2 STAMP Workbenchではじめる安全分析
astah関西勉強会#2 STAMP Workbenchではじめる安全分析astah関西勉強会#2 STAMP Workbenchではじめる安全分析
astah関西勉強会#2 STAMP Workbenchではじめる安全分析
 
astah関西勉強会
astah関西勉強会astah関西勉強会
astah関西勉強会
 
手抜力
手抜力手抜力
手抜力
 
Mqttで始めるIoT
Mqttで始めるIoTMqttで始めるIoT
Mqttで始めるIoT
 
Xtext入門
Xtext入門Xtext入門
Xtext入門
 
Xtext&Xtend documents
Xtext&Xtend documentsXtext&Xtend documents
Xtext&Xtend documents
 
Xtext practice
Xtext practiceXtext practice
Xtext practice
 
Eclipse modeling projectの概要
Eclipse modeling projectの概要Eclipse modeling projectの概要
Eclipse modeling projectの概要
 
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
 
Eclipse con2010 参加報告 upload
Eclipse con2010 参加報告 uploadEclipse con2010 参加報告 upload
Eclipse con2010 参加報告 upload
 

Recently uploaded

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 

Recently uploaded (9)

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 

Umlとは