• 検索結果がありません。

JPetStore における評価

ドキュメント内 Java EE (ページ 39-43)

第 5 章 評価および考察 31

5.1.2 JPetStore における評価

services層-domain層である.xが記されているセルは層状構造に違反する依存関 係であることを示す.

この結果から,servicesパッケージを意味的に等価なservices’に交換しwebパッ ケージがservices’パッケージを利用するコストはバージョン2.0よりバージョン3.0 の方が小さいと推定する.domainパッケージを意味的に等価なパッケージdomain’

に交換した場合,webパッケージがdomain’パッケージを使用するためにかかる コストはバージョン2.0よりバージョン3.0の方が小さく,servicesパッケージが

domain’パッケージを利用するコストはバージョン2.0よりバージョン3.0の方が

大きいと推定する.

平成19年度修士論文

早稲田大学大学院 理工学研究科 情報・ネットワーク専攻 深澤研究室

"!#$ %"&'(!! (*)+, (*-&./!01!'

2$3!"!'4,56

2$3!"!'4,76

7

8 9 8 8

図 5.6: JPetStoreにおけるpresentationパッケージのCRSSヒストグラム

! "#%$! &'(%)%)*+,

-,. )/)%/%0 1

-,. )/)%/%0!21

3%4 5!3 +3%4

図 5.7: JPetStoreにおけるserviceパッケージのCRSSヒストグラム

"!#$ %&'& $!()+*-,. (+/'!!$

0&1 !&!$234

5

0&1 !&!$264

6

7 587 7

図 5.8: JPetStoreにおけるpersistenceパッケージのCRSSヒストグラム

! "# $# %&'()*',+-./ 0 1!

243 ! 1!15*6 7

243 ! 1!15 7 8

8 91: *9 8 88;981:

図 5.9: JPetStoreにおけるdomainパッケージのCRSSヒストグラム

平成19年度修士論文

早稲田大学大学院 理工学研究科 情報・ネットワーク専攻 深澤研究室

JPetstoreのパッケージサイズは全てのバージョンにおいて10以下であった.こ

こではパッケージサイズを10として考える.また,パッケージ内のクラスは互い に依存しているものと仮定する.すなわち,パッケージ内のクラス1つのCRSSは 10となる.

presentationパッケージのは24個のクラスからなるため,presentationパッケー ジには3個のパッケージが存在する(パッケージサイズが10のパッケージが2個,

パッケージサイズが4のパッケージが1個).仮定に従えば,少なくともCRSSが 6∼10の範囲内のクラスが20個存在し,CRSSが1∼5の範囲内のクラスが4個存 在することになり,presentationパッケージで得られたCRSSヒストグラムに分布 にしたがうことができる.したがってpresentationパッケージでは,循環依存が発 生しないパッケージ構造を構築することできる..

serviceパッケージはバージョン3.0で2個,バージョン4.0で3個のクラスが存 在するため,serviceパッケージには1個のパッケージが存在する.仮定に従えば,

少なくともCRSSが1∼5の範囲内のクラスが2個または3個存在するため,service パッケージで得られたCRSSヒストグラムに分布にしたがうことができる.した

がってserviceパッケージ内では,循環依存が発生しないパッケージ構造を構築す

ることできる.

persistenceパッケージはバージョン3.0で16個のクラスが存在するため2個の パッケージが存在し(パッケージサイズが10のパッケージが1個,パッケージサイ ズが6のパッケージが1個),バージョン4.0で14個のクラスが存在するため2個 のパッケージが存在する(パッケージサイズが10のパッケージが1個,パッケージ サイズが4のパッケージが1個).仮定が成り立つとすれば,少なくともバージョ ン3.0ではCRSS6が∼10の範囲内のクラスが16個存在し,バージョン4.0では少 なくともCRSSが1∼5の範囲内のクラスが4個,CRSSが6∼10の範囲内のクラス が10個存在する.したがって,得られたCRSSヒストグラムからpersistenceパッ ケージでは,循環依存が発生しないパッケージ構造を構築することできる.

domainパッケージのクラスバージョン3.0で10個,バージョン4.0で9個のクラ スが存在するため,domainパッケージには1個のパッケージが存在する.仮定が 成り立つとすれば,少なくともCRSSが6∼10の範囲内のクラスが10個または9個 存在するため,得られたCRSSの分布を満たすことができる.したがって,domain パッケージ内では,循環依存が発生しないパッケージ構造を構築することできる.

以上から,JPetStoreはバージョン3.0,4.0の各層において,循環依存が発生し ないパッケージ構造を構築することできる.xPetstore同様,パッケージ構造のク リティカルパスの長さはCRSSヒストグラムから判断することはできない.

JPetStoreの各層交換可能性

各層の交換可能性はCBL値から分析する.JPetStoreのバージョン3.0,4.0の presentation,service,persistence,domainのCBL値の結果を図5.10,図5.11に 示す.

x 0.113 0.15 0.183

domain

x x

-persistence

x x

x 0.0208 service

x x

x x

presentation

domain persistence service

presentation

図 5.10: JPetStore3.0各層のCBL値

x 0.119 0.259 0.0463

domain

x x

0.238

-persistence

x x

x 0.0833 service

x x

x x

presentation

domain persistence service

presentation

図 5.11: JPetStore4.0各層のCBL値 バージョン3.0から4.0へ変更する際,CBLが増加した層間はpresentation-service,

service-domain,persistence-domainである.CBLが減少した層間は persistence-domainである.service-persistence層間の依存関係はバージョン4.0で導入された ため,バージョン3.0と比較することはできない.xが記されているセルは層状構 造に違反する依存関係であることを示し,-は依存関係は認められているが存在し ていないことを表す.

ドキュメント内 Java EE (ページ 39-43)

関連したドキュメント