物理的側面を表現する図
description
Transcript of 物理的側面を表現する図
物理的側面を表現する図
石原研 古賀浩之
6-1 物理的側面を表現する図
▌コンポーネント図▌システムを開発運用する上で必要なソフトウェアコンポーネントの構成を表現
▌配置図▌実行時におけるシステム構成を表現
6-2 コンポーネント図
▌コンポーネント図は、 ソースコード バイナリファイル 実行ファイル 等のソフトウェアコンポーネントの依存性を表現▌メリット▌コンポーネントごとに開発チームを作って並行作業しやすくなる▌重要なブロックの観点から考察することで開発チームが設計を理解しやすくなり、新しい設計を作成するのに役立つ
コンポーネント図の表記▌UML1.x
▌UML2.x
main.exe 会員 .tbl
main.exe 会員 .tbl
ステレオタイプの付いたコンポ( 略
▌UML1.x
▌UML2.x
<<executable>>main.exe
<<table>>会員 .tbl
<<executable>>main.exe
<<table>>会員 .tbl
ステレオタイプによる表現
▌UML2.x
<<component>>コンポーネント
名
コンポーネント名
おなじ=
<<subsystem>>サブシステム
コンポーネント名
ちがう≠
コンポーネントの型とインスタンス
▌UML1.x
main.exe main.exe
型 インスタンス
コンポーネントの依存関係
コンポーネント間の関係は依存関係で表現▌コンパイルの依存関係▌実行ファイルの依存関係
ソースファイルの依存関係
memberRegistrationForm.html
blackList.java
member.java
memberList.java
「ブラックリスト」クラスのコンポーネント
「会員登録画面」クラスのコンポーネント
「会員」クラスのコンポーネント
「会員リスト」クラスのコンポーネント
実行ファイルの依存関係
<<executable>>client.exe
<<file>>ヘルプファイ
ル
<<executable>>main.exe
<<table>>会員 .tbl
インタフェース
▌UML1.x ▌UML2.x
会員 DB
<<executable>>member.exe
updateMembers<<component>>: Order (注
文)
<<component>>: Product( 製
品 )
インタフェース
要求インタフェース
(required interface) 提供インタフェース
(provided interface)
アセンブリコネクタ
▌要求インタフェースと提供インタフェースで接続されているコネクタ
<<component>>: Order (注
文)
受注
注文可能商品
おなじ=
<<component>>: Order (注
文)<<provided interfaces>>
受注
<<required interfaces>>注文可能商品
提供インタフェース
要求インタフェース
6-3 配置図
▌ノードやコンポーネントでシステムの物理的側面を表す▌配置図に表現するのは実行時に存在するもののみ▌ソースファイルは表現しない
ノード
▌計算を実行するリソースを表す▌メモリや処理機能を持つものを指す▌ノードにも型とインスタンスがある
PC
ノード
ノード名
ノードインスタンス
▌実際に配置されるノード
経理部: PC 受付: PC 営業部: PC
経理部 PC 受付 PC 営業部 PC
名前 ノード型名
名前もノード型名も省略できる ノード型名が無い場合は“:”も付けない
▌UML2.x ではハードウェアだけでなく、ソフトウェアも表現できる▌装置の表現⇒ <<device>>▌実行環境の表現⇒ <<executionEnvironment>>
<<executionEnvironment>>:J2EEServer
<<devicet>>:AppServer
ノード(実行環境)
ノード(装置)
配置図のコンポーネント
▌配置図ではコンポーネントの型とインスタンスの両方を使用できる▌UML1.x
<<executable>>member.exe
:会員DB
<<executable>>:client.exe
<<file>>: ヘルプファイ
ル
サーバ1号機: Server 田中さんのマシン: PC
updateMembers
コンポーネント
インスタンス
ノードコンポーネント型
成果物
▌UML2.x ではコンポーネントの代わりに成果物を配置する
▌成果物の表記
<<artifact>>member.exe
member.exe
成果物を使った表現
<<executable>>member.exe
:会員 DB
<<executable>>:client.exe
<<file>>: ヘルプファイ
ル
<<device>>サーバ1号機: Server
<<device>>田中さんのマシン: PC
updateMembers
<<executionEnvironment>>:UnixOS
<<executionEnvironment>>:Windows
成果物
ノード(装置)
ノード(実行時間)
Chapter6 まとめ
▌設計段階においては、システムの物理的側面も設計する必要があるため、コンポーネントと配置図を利用する。▌コンポーネント図は、ソフトウェアコンポーネントの構成を表現する。ソフトウェアコンポーネントとは、開発環境や運用環境に配置する再利用部品のこと。▌配置図はハードウェア構成を表現する。ノードは通常コンピュータを表現する。▌ノードに UML1.x ではコンポーネントを、 UML2.xでは成果物を置くことで、物理的なファイルの配置を表現することができる。
練習問題
▌問題1▌ノードアイコンを選択しなさい
①
②
③
④
練習問題
▌問題 2▌コンポーネント図に関係ないものを選択しなさい。
① コンポーネント
② 依存関係
③ ノード
④ パッケージ
練習問題
▌問題 3▌コンポーネント図のコンポ―ネントを説明した文章で正しいものを選択しなさい。
① パッケージの中に書くことができる。
② クラスの中に書くことができる。
③ オブジェクトの中に書くことができる。
④ アクティビティの中に書くことができる。
練習問題
▌問題 4▌コンポーネントの提供インタフェースとして正しいものを選択しなさい。
①
②
③
④
練習問題
▌問題 5▌ノードについての説明で不適切なものを選択しなさい。
① ノードはなんらかの処理機能を持つ。
② ノードはプロセスである。
③ ノードは物理的に存在するものである。
④ ノードはなんらかのメモリを持つ。