• No se han encontrado resultados

A Pattern Based Approach to Model Software Performance

N/A
N/A
Protected

Academic year: 2023

Share "A Pattern Based Approach to Model Software Performance"

Copied!
6
0
0

Texto completo

(1)

A Pattern-Based Approach to Model Software Performance

Jos ´e Merseguer

Dpto. de Inform ´atica e Ingenier´ıa de Sistemas, University of Zaragoza, Spain

[email protected]

Javier Campos

Dpto. de Inform ´atica e Ingenier´ıa de Sistemas, University of Zaragoza, Spain

[email protected]

Eduardo Mena

Dpto. de Inform ´atica e Ingenier´ıa de Sistemas, University of Zaragoza, Spain

[email protected] ABSTRACT

.B >CD  )A#E * D*. > F& ".GH I#&% J I% G(?%   (#6-% *D

 W%](* C!^%W!X"!_8`C Da' RbCK% !P)A C!/

eJ [ )3%  WfI(*  (LRY * !5% E *Y )Q8Og7h 

% # # ?%'i&% ,% Q%P(* *%6h 5   [ )3%6)A C!6L ^#

(0"!,PlXmn op8

Keywords

1. INTRODUCTION

^ '!K Q w% 6RX'%Z$ QxJy0z'{w|B} ~,€ J‚y'ƒ&„3J…{4ƒ&~y"†'JxxDH @ 

‡

kQˆlXm"‰ opD

‡‡

cfŠl‹Zop8PcC *)A3  G)Œ&%"M?A (*Rs"!2%&!

ŽZoN&% YE *)A]%3>*1, L "% 

 Y. >Q&% E5!M?6 *#E!h.GXRh]# K9OeH‘’ 

n‹?Ž ‘3  c#&%  `Bg0H“Y8

#&%Z'%*!R()”&% WEdA Y0 !1 DI *'%  (5 0 (

# #E *% 6RGJ$%4 ;.66X>C ".GP€ Jx•R–…Aƒ} {w{7J~J…xAl—op8HD

.4%Z^010)AQ5! *68˜fNM?™ ".%*! %1DK010)Ah% 

@  6X1d!#6 Z1?"!š.GX 3 ,#E [ )3% h<#E"!šC1

6 8^g7WA%h *)A)A ^#'%JR,  Y!M?6 *#E] 50] 

#E @ )3%Y VX4010)A *6X1=.G 3 J13&%"M?;ELR)=

# 6)AC!S8˜cC  -.4%Z2#E [ )3% Pu&6R!›lXm‹ o=`  "!

cM?'%6Y%## ?% J,jR$% %2 %"M?`E:# #E *"!œ.GX

‡

!()ˆ.G66aE />?1L 3 *)]  E U8;C D&.B]# *#E W%

 K  -.% =(* Y.G66NEW%  6] 3"% #/ [  &%6J

b  X)A K%/.6R6%W#EJ [ )3%  A"b )A 8Qgt '!J

8L /# D"%66"!PeNŸ

‡

eG "DSK%6 h  "!5.GX

64 - *)+ !M?6 #E"!$)A C!68

 `6R%(* %(*5# #E *"!j¡l

#  %*8aeIŸ

‡

eh# #E *BJ)A    a6R%(*&% (*B.GX

)3%=( ?%6W%&!`. >6 *%*!^!Ju& X *Da *'% (j¢# % 

.GX\#EJ [ )3%  £ ¤8g7^l—opD_ 

‡

kQ¥lXm"‰ oN '%ZR \"!

%*!M? "%Z [ ; Y   V qkQrt '%  *Pl§"oE"%   aX

  eJ [ )3%  AŸ;"b  X)ACO [  ‡

 (Aea%Z 8

¤

(2)

X1 8qkQr2.G66NE]J"!Q.GX\#E @ )3%  W%  '%ZR  D

.B=.G6R6I ] =# *#E *% 6H0'%Z"!tœlXmn op8L9O  J# #E *%6

 $% '% ])AW%#EYR5qkQr2&%"M?KE50'% !` @ 

%6XpR)Au 6R!\l‰ opD  @ .GXh!Xv_CG M?8

'%Z * D $   JR ,.GX$Y(*R!G(*M?, 1LeIŸ ‡ eD 

#EJ [ )3%  L%   '% "!PqkQr:!R%( '%)A/ [ ]L010)Q8$g

'!; 3 *'%hC )A"% 6S6XO @ )+ /qkQr^%   '% "!

!R%('% )AW [ = L )A# 6L010)QDa.,# *)A L$$

qkQrd!R%('% )A8]  @ *DS K)A C!6RY  B]010)ª)W0

g7W N.4%1 D H%## ?% JA *)W aƒ&~0}"–„A}{w•@x'„©}…E€Bzy~'„A}*‚X®

•@{w¯8

lXm"§ZoE /!R(L%&!]R)A#6)A N 4010)A8NC D*.O% G#X

)3%Z61tCJ0"!Pt 30 !1\  G#&%Z /&%Z]u/.66B @ 

;>C&!L  a @7.4% 8

50Q  /5# %#E,, (*%Rs"!³% $ @ *66 Z.G8´c ™§

 d%' M*teNŸ

‡

# *#E "!œ 1deIŸ ‡ e¶ t)A C!6G#E [ )3% `%&!2 [  * %6

Q *Q—8

2. PROP PATTERNS

— o% dº7€ JxJ†~'•ƒ&{w•py…xLy0zA†y„=®



§4.BB<# 6R% R

2.1 Basics on design patterns

% G# *#E "!,tl

Â^ÃOÄ ÅÅÆCÇÈ2ÈVÄ&É\Æ

Â^ÊÈ_ÅÆÈSÅ

Â^˵Ì&Å"Í@ÎÄ ÅÍ@ÌEÈ

, 6RM*;#  6)Q8

Â^ÏLÐÐÑ[Í[Ò*ÄÓaÍ[Ñ[Í@Å'Ô

%# #6R!S8

šÕSÅÇ ÖÒ*Å"ÖUÇ Æ

×

  ( ‡ kQ: '%  EØJ8

Â^ÃOÄ ÇZÅ"Í@Ò?Í@ÐÄ ÈSÅ"Ù

šÚKÌEÑ[Ñ@ÄÓNÌ&ÇZÄ Å"Í@Ì&ÈÙ

Á4 ".i Y#&% # % G *66R%E '% *8

šÚKÌEÈÙÆÛSÖVÆÈÒ*ÆÙ

Â^ÊÉ\ÐaÑ-Æ É5ÆÈ_ÅÄÅ"Í@ÌEÈ

ÁVJ Rb  a EG !W.G A)A# 6

)A R(K#&%ZU8

šÕSÄEÉ\ÐÑ@ÆAÒ*ÌSÜVÆ

Á C! @'% (*)A  % N66R0'% 4 Z.^1? *

)AR( GR)A#6)A B#&% J,h4ÝÝ¡ YcC)3%66X'%6>E8

Â^ÞQÈVÌßAȵÖÙÆÙ

ÁO<%)A#6R  W# % ` [  &!`\"% 6

010)A8

Â^à3ÆÑ@ÄÅÆÜ+ÐÄ ÅÅÆÇ ÈÙ

* 8

‡

#&%Z 8

‡

§*Øa J.œJR  I.GR66&E;%! !!]  46R%(*&% (*G.GX= G%)A

6 ".GR(8

2.2 Adding performance features to design pat- terns

6R%(*&% (*K% # *#E "!S8

.G66VE/% '% "!_8

 K)A"%   (3  NW%   '%  *Yh ]!R%( '%)ADE/J

 Rb  G A '% RQ)´% !, O!'% 6RO  *  !$ A!J

<C !W G = )Q89OH%A<%)A#6*D*G%*!JB)3%1] 

^¸(*Qm*D'% >?\ - *)âlXm"nZoDaA% '%  *]tE 6R!\ w% *8

c )AA  4)Œ#C/L6 *%*!P  43#&% '% )A/P 

(3)

{1K}

{100K}

{100K}

{100K}

{1K}

{0.9}

{1K}

{1K}

{1K}

{1K}

{1K}

{1K}

{1K}

{1K..100K}

refine_catalog(refinement_plus) select_sw_service(info)

c1:Catalog create_catalog(info_plus)

observe_GUI_catalog(c1)

select_sw(name)

[info_need] more_information(refinement2, ci)

{1K}

{prob} {1K..100K}

[satisfied]

create_salesman(info_sale) [not satisfied]

1..n show_catalog_GUI(c1)

create_browser(c1) get_catalog(info_plus)

refine_catalog(refinement)

electronic_commerce

info_sale_plus request(info_sale)

delete_browser select_sw(name)

c i+1

Salesman BrowserAgent

SwManager Alfred

æ

Í-çEÖVÇZÆ^è&é/ÏLÈÈVÌ&ÅÄÅÆÜjÙÆÛUÖUÆÈVÒ*ÆhÜÍ@Äç&ÇZÄEɚê

 $ëì-íî"ïí

×

 't% Käôõ,\,öZñï óî"ï'÷óøíù

(&%Z'!&ØJ8

×

c¹ØU [ I"% JW#&% # % I)W 0E

Kc¹¡.G66VE%   '% !$.GX, M? 46 ?%*!_D # 

%  6XR  a(*&%Z'!O% !$ )A A#E @ )+ /%  * 8

JRE G.4%13L.GR'$%  '%ZR  G%Z!  *8I9;BX4 

# W ` '%^ $% '% "!2c¹À% &!t L)A"%   (h

/% '%Z * ;%Z(*M?Q\lmn op8

#EJ [ )3%   @"% Á

Â^ÃOÆCÇZúÌ&ÇÉ\Ä&ÈÒÆQç&Ì&Ä Ñ[Ù

6s"%  *S8

ÂPû¡Ì&Ç üSÑ@Ì&Ä Ü™ÜUÆCýaÈÍ@Å"Í@Ì&ÈÙ

— oE *(*J H.GA; &%  )A 

 ,"% '% 6R (^#C!šµl— oO * '% A7. 1^Q!(*

)3%32%66  ; )Q85c Da 1t *6-!PE *)ALeNŸ

‡

eµ#&%Z

8A9 ])A *)A "DE.BA% =  6X15 *"!\% E * *

.G 'j%Zh%## *#R% Q [ $%\  ,  @7.4%Z`J *6 (1_Á

O.GXQ XY Z.G`#E @ )3%   [% DUG ;.GR66aE

 Y C0; a [Y. >C8

 L.4%12 \Q%5eIŸ

‡

!M?6 *#DU ($KJ Rb  O(*M?5dlXm"nZopDV W% '%Z"!

('% )A [ K A *66R%E '%Z (5 *C08Q9 A)A *)AC"DU *6X1

%2¢# £$ H]010)ª&% YE5)A C!6R6"!_8\¢7# £$

"%!1= KEO"!3RAYeNŸ ‡ eP# 8cC *$‰8mO<# 6R%

‡ e2# 8

3. THE PROP PROCESS

‡ e›# á @ )  ".

 Q '%tA#E [ )3%A&!K 4 A010)½ %  J1

(4)

Do:add_info4 WAIT

get_catalog(info_plus)

request(info_sale)

{1K}

^salesman.reply(info_sale_plus) Do:get_info

{1sg}

{1sg}

(b) (a)

{0.5sg..50sg}

{100K}

{1K..100K}

{1K}

^browser.reply(catalog) ^catalog.create_catalog(info_plus)

Do: create_catalog

^browser.create_browser(ci) more_information(refinement2,ci)

{1K}

{1K}

{1K}

{1 min}

Do: create_browser

^user.observe_GUI_catalog(ci) show_catalog_GUI(ci)

<<more_services>>

WAIT Do:create_GUI(c)

Do:add_info2

^browser.refine_catalog(refinement_plus) {100K}

{1K}

{1K}

{1K}

[not ^user.satisfied]refine_catalog(refinement) {0.9}

{0.1} {1K}

[^user.satisfied]select_sw(name)

{1K}

Do:add_info3

{1sg}

select_sw_service(info) ^SwManager.get_catalog(info_plus)

^browser.select_sw(name)

{1sg}

Do:add_info1

{100K}

{1K}

{1sg}

{1sg}

æ

Í@çEÖUÇ Æ



éSÄEÉ\ÐaÑ-ÆÙ]Ì&úOÄ ÈÈVÌ&ÅÄ ÅÆÜiÕ ,Ù*ê

(3)

Performance Model PROP results (take decisions)

Software Requeriments

UML annotated diagrams

(1) (2)

æ

Í@ç&ÖVÇZÆ _é  UÆhÃà=Ã+ÐÇZÌUÒÆÙ"Ù*ê

M*% 6R %  *S8

# *)A CK *6*8t9O] '%  *SDI.B,# *#E *LqkQri%   '% "!

`#'%()3% `)A C!6;Q% JRM?"!SD;%P @ )3%6O)A C!6;.G6R6YE

'% R"!š - *)”X"8œg2 ,6R% 0$0#UDB$ @ )3%6G)A C!6.G6R6

J Rb  8

J [G W )QÁ

 0  ,.GXheIŸ ‡ e2#&%Z 8

§ 84qYIeNŸ

‡

 (W @ )3% 6U)A C!6w8

‡ e¶ ^ *6M?Q

[ )3%6S)A C!6w8

3.1 Modelling system requirements

hqkQr³%  '%Z"!j!R% ('%)ADB @ *) Q  -.4%Zh"b  X

)ACDC.Gh%W010)©;E (=)A C!66"!S8

)

!R% ('%)A]% !P%JRMCX=!R%('% )A8h9/ K0'%(*3qkQrjR)=

# 6)AC'%Z *Q!R%('% )A;% /%"M? *R!"!S8

0&!C1P L"b  X)A = Y,010)·d '!J= tR!CX -1

.G J= , =eIŸ ‡

 '­Z L<#E`% !d h010) '&%Z'%08¡ *

!R% ('%)A;% &!$/c¹G% OXG.4% G# *#E "!,PlXm"nZop8

3.2 PROP translation rules

9a I#E * "D*.4 %"M?4)A C!66"!]010)¡.GXAqkQr, '%Z

 *SDS'% >CR(3R  $% *  O K6R *%*!``]bC W!-% ('% )

 a010)+&% GE, '% R"!S8

 "!

×

% %6X1C3J Rb   Q L!M?6 *#E!tqkQr:!-% ('% )A8`TB

.G66&E4<# 6R%"!=W 4<CH *U8g7IH HR   *]&% 

 H [ )3% 6)A C!6 "% =E *'% !K @ )¡ #'%()3% )A C!6

(5)

Í@ç&ÖVÇZÆUé/Ï$ÙÔUÈÒ VÇZÌEÈVÌEÖVÙAÒ*Ì_ÉPɚêÓIÆCÅ'ß]ÆCÆÈ2Å VÆhÅ'ß]ÌtÃOÆCÅÇ Í4ÈVÆCÅ=Ò*ÌEÉ\ÐNÌEÈVÆÈSÅÙ=Ì&ÓÅÄ Í[ÈVÆÜjú7ÇZÌ_É Å VÆ\Õ ,Ù=Í@È Í@çVê ê

¸X0"DH.,)] 0] *'%œ%`0 '&%0heJ4 = @ A%'d010

)”6R%D4^†y„Yƒy…EJ… {K…_J{wx8

‡

CMCR  6X1 DI h%   '% "!

6G# *#E "!,PlXm"nZop8

cC &!SDS ]"b  A!-% ('% )A.GR66IE]=(*-!W , '% R

.GXK I%)AB %)AIK7. !Xv_  )A#E *  JDH

×

ëî"ïîñ;W¸(B—?ØJ8N I.4%1

|H}•@{xJ„=}… {w•w†xh% !j…Ey*®p|H}•[{/xJ„A}…{w•p†xD.$# *#E h%`01

'   = )A#E *X *

×

×

9;%`<% )A# 6*DS¸(*=—$ ".G ".¡*íJï ëîZï0î

 UD_.GX\ p.4% )3% DS01 ' *sOW )A#E * 

eJ  J8NeN "!(K=4%)A4.4%1K 4 )A# 6G N @ 

010)¥.G66VE *'% !S8

@ )3%  &!8

3.3 PROP techniques to solve the formal model

#6R!$ = *'%Q#E @ )3%  ( ?%6G [ O010)Q8

% % Q  !6X1 (=)3%Z )3%ZR%6_ *6V @ O *)A# (W#E

@ )3%  5&!Q  K 0"8¥9O)A *(P )QD;b   (2

.B >CG#&%Z'%*!()

×

°Y'ØOl’ZoD0 '&%0/eS J

×

ceN°Y'ØOlXmJoD

% &!,0 '&% 0# O%6('% 

×

ceS9;'ØYlZop8H¸ O%66S  a)QD

%*!"b &%ZO [ G Y)A C!66R(W )A C!6R% 4010)ADC O#C

#E @ )3%`M%6&%ZR :. *6R!j)3%>?Q) !A6L 2 

^"%6;%## 6"%   8^¦P3.  6R!2 (*(0LceI°O]'% = %



°Y)A C!6/E"%= 15 6R !3% P<# 6XK#)AXRM*W [ 

 )A C!66R(=  N01J * s"%Z *Q)A'&%  )

×

%$x¯ …E†'²C~0y… •¼"®

•[… –A{w~0}… x•[{w•py …SØB  @ Y1L% #ER%66X1Q%!"b &%ZO @ G 

[ AE ^$M%6R! %ZR d Y6 (*"%6;# #E= OL010)

×

*8

×

#E @ )3%M%6&%Z *EØJ8

€~'•[J…t€ †'y „Yƒyx•[{w•py …P}…&}*‚¯ x'•@x{7†'² … •  Jx [ ceI°O;%G *

)3%=M%6 %  *P)AJ C!8Wg\ */# / CJ<"DV *C0J

6X [K6R%*!; /!u& h  N h¢7 *)A#E   £

×

  7. >'Ø

 V eJS"D% !3R4)A C! 6R% GMC.i V Y)A C!6E4

VE *&!U"%/EI *)A#"!; [ V N0"%*!C1C70'%ZH#EJ [ )3%  

&%Z4'%>?# uG  a Y)A C! 6R%ZGM.™ IeU8

 =!(*\  %,010)QDSR5.G '\)3% C1`# % '% )A%ZA 

>C ".GL%'% 61 8HcCM?'% 6E%6X % M?H [ B *O#&%Z'%)A

# '%  *2v_ "8^¦:Xš%*! !XR &% 64 *)A#'%  šCM?0)AC"D

 J;B%/6R%Z(*;)WEI V% # # Z<)3%  =J Rb  a @ 0 

MC.Ga   I)A C!6w8a9;# # Z<)3% IM%6 U [ aH#EJ [ )3%  

#&%Z'%)AJ% ]5( J'%6a)A KARC6X1`!M?"!, %h 

<%J *8g7Q Y * <C"DS%A#'%()3% K *)A# *)A $E

&% &!6R!jC1š 5!(* JQ  ]%^010)â *$ 5!u&

 *A E w%X [ 6 )A C!6D* % I)3%1WE4M*1K *)A#6RJ<] <% 6X1

(6)

% &% 61 .G % G)3%136"%*!3 ] O  N%## "<)3%  *L N00

E   ! (5J Rb  'ØJDH 3)A#6RXu "!d)A C!6DB [ 3.G Jd<C

 *0J­% '%1^'%! vœ)W0]EA'% >?^  `%   =P

4. CONCLUSIONS

%66"!3eIŸ ‡

)A C!6

×

J Rb  

×

9;t)A#E '%  /%)A     H. >\)] 0EWRCM?0"!\` W @

*Á

ÂÂ

E# #E *"!_8

Â

  \0 '&% 0RQeG 

×

3% C12  =#E [ )3% 

 "!L [ )3% 6R)LØJ8

Â

  6R!œE` ('%Z"!œi%\ *6%&!š 12.  6R!œ'%>*

5. REFERENCES

lmJoKk\8 9I0)A  /kQ%Z%SD#"]8ETB%6E D&%&!$"]8EB  *8

«;J~[zy ~J„=}…E†'%\y"€?‚x/y0z%`‚{w•ƒ&~0y"†JJxxJy~ & ¯ x{7J„Wx8Sk,g0

l§"o "]8 TB JSD&g'8('?%  * *SDE% !)'8ŸO)W % (U8 ‡ k*"

qYXu&"!,k, C!6 (3rU% (&% (*/#EXu&%  *SD!'* Wm‘*‘*‘C8

M? tm*8‰8

l ‡

C0JYUJ 6R (1

l

0]Jx•R–…,«G}{w{7J~'… x.:2G‚RJ„AJ… {wxKy0zOþGJxJ}?±‚R

l

<'… {7J~'…E} {w•py…E}‚A@Iy„Yƒ {7J~Y«;J~[zy~J„=}…E†'K}…E€

0]7ƒJ…&€?}?±•w‚•@{w¯6&¯„Oƒyx•[C„WD

#&%(m"n*§B&mm"‰C8_g0fIfHfœ4cC7eNDE9O#6Nm‘*‘*C8

l

"]8 ‡

D -UxE@I}x0~'•[J… D

l D

l’Zo H=89H/% C"8(<'…{w~y"€†{w•py…5{y*@Iy„Yƒ&C{7J~ & ¯ x{7J„

«OJ~@zy~'„A}…&†'C24 }‚ } {w•py… 8Ek, "O'%.47¨O6R6wDUm"‘*‘*§C8

l‘ZoKea87H (W%&!$ŸK8e *61 8 qY (WqkQr5 =!M?

0 J %0KeUG)A C!68g$'8ETI'%*!61,% !

°]8¹%"MCRD "!X D&«4~0y"†J€•[… –xKy0z{@² 5IH•zJ{7J… {@²

D

… … }‚

-#J¶«;J~[zy ~J„=}…E†'C2…C–•[…EJ~J•[… –LK,y~NM x0²y'ƒ&D&# %(*O—?B ‹8

TH0 *6wD!'*6X1\m‘*‘*‘C8

¬KJ{wxEP &2I«H¬*QRSTSTSVUW|Hy~WM x0²yJƒ\|I•@{@²C•[…`{@²  RX x{

<'… {7J~'…E}{w•py …E}*‚A@Iy …"z"J~J…E†'Wy… D ƒ?ƒE‚•p†}{w•wy…\}…E€Y+U² y~'¯

y0z;«OJ{w~'•N¬/J{wxDE9O% C D¹)3% >EDF'* K§nn*n8&V

%# #E% "8

%# #6R%  *8_«~y"†'€ •[…C–x]y0z{@² <=2>2>24D Ž*Ž

×

— ØJÁ —mVBC’*nCD

9O#6am"‘’*‘C8

lXmZ§"oKfG8 eIX '%A% !)"]8&c% )3% '%8!0K} {}E%\}…&}"– J„3J…{Ezy ~

%\y?±•w‚R@Iy„Oƒ&C{w•[…C–8H6 .J49O%*!)AROeN  6 JDSm‘*‘’8

lXm"‰Zo '8 Ÿ; )]&%  (*SDk\8&TH6-% &%CD ¦¡8 eN)A6R% wD&fG8 ¸"!J>ED

•[…C–L}…E€

0]Jx•R–… 8 ea R¨%66wDVm‘*‘Cm*8

lXm— o]k\8EcCR6M%=% !$'8E%)A#E 8&e @ )3%  M%6 %  *Q

¹fI¹c3.GXQ F&;% &!$01J * s"%Z * ÁI°O7!M?

<'… {7J~'…E}{w•py …E}*‚[K,y~WM x0²yJƒ^y …$0•[xJ†~J{7[24J…{1& ¯ x{7J„WxD

#&%(;‰*‘’\B —m"‰CDU%(*6R% wD_g'%6X1 D9O ( 0m‘*‘*’C8Eg0fIf

B *  *6w8

lXmZ"o]O8EcC)A$% !QrI8("]8¦:6R6R%)A8&e [ )3%

 (R (WM*% 6&%  h  a   "!,010)A.GX

ceIf

Â

@Iy…"z"J~J…E†'Wy…)%\y"€?‚[‚•[…C–*+_†'²C…•  JxK}…E€Y+Ey"y*‚xNzy~

@Iy„Yƒ&C{7J~Y«;J~[zy ~J„=}…E†'C2 }*‚}{w•py…D # %(Km‰?`B&mZZ—DUc "8

kQ%6 D&¸'%*D9'* =m"‘*‘*ŽC8 ŸK8&kQ% *D O%6w8 !8 rU

°Y ;QB *)A# OcR *D78I *6w8Um"§ —?CD

c#(*8I6R%(8

lXm"‹Zo]O8 qK8EcC)AS8«OJ~@zy~'„A} …E†'C2…C–•[…E'J~'•[… –,y0zC&Ey0z'{w|B} ~

& ¯ x'{7J„]x8E KcCVcG`c @7.4% KfN (R (8

9™.GR! %&!$%## ?% J$ =C('% (A#E [ )3% 

&Ey0zJ{w|H}~«;J~[zy ~J„=}…E†'P\K5ÿ1&C«EQ_bUZDUm"‘‘*’8

Referencias

Documento similar

Before generating the rules we use the deduction and annotation mechanisms on the initial M2M pattern specification in order to transform N-patterns into negative post-conditions of

In this paper, we extend the approach for handling attribute conditions expressed in some suitable logic, adapt the operational mechanisms based on graph transformation to

Esta Tesis Doctoral se fundamenta en tres ´ areas diferentes de la inform´ atica: (1) la Ingenier´ıa de Software Dirigida por Modelos (MDSE por sus siglas en ingl´ es), (2) los

We propose to model the software system in a pragmatic way using as a design technique the well-known design patterns; from these models, the corresponding formal per- formance

Concerning related work, we are unable to compare our tool due to the fact that, as far as we know, there exist four SPE tools [3, 2, 10, 15] based on UML and none of them

Performance Analysis of Internet based Software Retrieval Systems using Petri Nets .. Jos

Moreover, the performance analyst, that has expertise in Petri net modelling and analysis, can use the GreatSPN tool to compute domain specific metrics using the GSPN models,

The first advantage of the router-assistant approach is  the  very  low  development  cost  required  to  integrate  a  router  with  a  given  host-based