Transcript PPT

Chapter 6
物理的側面を表現する図
発表者 石原研 FM12015 佐々木惇也
物理的側面を表現する図とは?
クラス図・オブジェクト図・
パッケージ図・ユーズケース図など
論理的な側面
コンポーネント図・配置図など
使用するファイル
実行環境
物理的な側面
• コンポーネント図
システムを開発,運用する上で必要な
ソフトウェアコンポーネントの 構成を表現.
• 配置図
実行時におけるシステム構成を表現.
コンポーネント図
コンポーネント図とは
実行ファイル
ソースコード
データベース
テキストファイル
などのソフトウェアコンポーネントの依存性を表現
メリット
コンポーネントごとに開発チームを作るなどして
並行作業しやすくなる
コンポーネント図の表記法
UML1.x
コンポーネント名
<<executable>>
<<table>>
main.exe
会員.tbl
コンポーネント図の表記法
UML2.x
component
<<subsystem>>
サブシステム
<<component>>
component
コンポーネントの型とインスタンス
UML1.x
main.exe
型
一般化された記述
この実行ファイルがどのような
ものなのか,という定義をコン
ポーネントの型という.
main.exe
インスタンス
具体的な記述
複数のコンピュータにそれぞれ
実行ファイルを配置する時など
にそれぞれのファイルをコポー
ネントのインスタンスという.
コンポーネントの依存関係
コンポーネント間の関係を依存関係によって表現
・コンパイルの依存関係
・実行ファイルの依存関係
ソースファイルの依存関係
UML1.x
「会員登録画面」クラスのコンポーネント
memberRegistrationForm.html
「会員」クラスのコンポーネント
member.java
依存関係
blackList.java
「ブラックリスト」クラスのコンポーネント
memberList.java
「会員リスト」クラスのコンポーネント
複数のソースファイルをコンパイルし1つの実行
ファイルを生成する時などソースファイルの関係
を依存関係で表現する.
実行ファイルの依存関係
UML1.x
<<executable>>
main.exe
<<table>>
会員.tbl
<<executable>>
client.exe
<<file>>
ヘルプファイル
単純なシステムでは1つの実行ファイルのみで稼働
するが,クライアンドサーバーシステムなどでは複数
の実行ファイルが存在する.実行ファイル間の呼び
出しやデータのやり取りなどを依存関係で表現する.
インタフェース
コンポーネント間でデータのやり取りなどをする際
外部から見える操作の名前(仕様)のみを記述し,
操作の内部の手続き(実装)を記述しないことに
よって再利用性(Reusability)を向上させる.
インタフェース
UML1.x
UML2.x
インタフェース
会員DB
updateMembers
<<component>>
:Order(注文)
要求インタフェース
(required interface)
提供インタフェース
(provided interface)
<<executable>>
member.exe
<<component>>
:Product(製品)
アセンブリコネクタ
要求・提供インタフェースで接続されているコネクタを
アセンブリコネクタという
提供インタフェース
<<component>>
:Order(注文)
<<provided interfaces>>
受注
<<component>>
:Order(注文)
<<required interfaces>>
注文可能商品
要求インタフェース
またインタフェースは右図のようにも書くことができる
配置図
システムを構成するコンピュータ,プリンタ,モニタ,
通信接続関係といったハードウェア構成を表現する
場合UMLでは配置図で表現する.
ソースファイルなどソフト的なものは表現しない
ノード
ノードとは演算を実行するリソースを表す.
(メモリや処理機能を持つものを指す)
ノードに関しても型とインスタンスがあり,
一般化されたものを型,具体的に表すものを
インスタンスで表現する
UML1.x
PC
経理部PC:PC
ノード型
受付PC:PC
営業部PC:PC
ノードインスタンス
ノード
UML2.x
ノード(装置)
ノード(実行環境)
<<devicet>>
:AppServer
<<executionEnvironment>>
:J2EEServer
UML2.xではノードで装置(ハードウェア)だけでなく
OSなどの実行環境(ソフトウェア)も表現できる
配置図のコンポーネント
コンポーネントには型とインスタンスがあるが
コンポーネント図ではコンポーネント型しか
使用しなかった.
一方,配置図ではコンポーネントの型・インスタンスの
両方を使用できる.
配置図のコンポーネント
UML1.x
コンポーネント型
サーバ1号機:Server
updateMembers
<<executable>>
member.exe
:会員DB
コンポーネントインスタンス
ノード
田中さんのマシン:PC
<<executable>>
<<file>>
:client.exe
:ヘルプファイル
配置図のコンポーネント
成果物
UML2.xではコンポーネントの代わりに
成果物を配置する
UML2.x
<<artifact>>
member.exe
member.exe
配置図のコンポーネント
UML2.x
<<device>>
サーバ1号機:Server
ノード
(装置)
<<executionEnvironment>>
:UnixOS
<<artifact>>
updateMembers
:会員DB
member.exe
ノード
(実行環境)
成果物
<<device>>
田中さんのマシン:PC
<<executionEnvironment>>
:Windows
<<artifact>>
client.exe
<<artifact>>
ヘルプファイル
Chapter6 まとめ
• システムの物理的側面を表現するには
コンポーネント図と配置図を利用する
• コンポーネント図はソフトウェアコンポーネントの構
成を表現する
• 配置図はハードウェア構成を表現する
練習問題
問題1
ノードアイコンを選択しなさい
①
②
③
④
練習問題
問題2
コンポーネント図に関係ないものを選択しなさい。
① コンポーネント
② 依存関係
③ ノード
④ パッケージ
練習問題
問題3
コンポーネント図のコンポ―ネントを説明した文章で正しいもの
を選択しなさい。
① パッケージの中に書くことができる。
② クラスの中に書くことができる。
③ オブジェクトの中に書くことができる。
④ アクティビティの中に書くことができる。
練習問題
問題4
コンポーネントの提供インタフェースとして正しいものを
選択しなさい。
①
②
③
④
練習問題
問題5
ノードについての説明で不適切なものを選択しなさい。
① ノードはなんらかの処理機能を持つ。
② ノードはプロセスである。
③ ノードは物理的に存在するものである。
④ ノードはなんらかのメモリを持つ。
おしまい