described in Acme ADL from goal oriented requirements models expressed in i*. The process includes activities that defines trans- formation rules to derive such ...
$XWRPDWLF*HQHUDWLRQRI$UFKLWHFWXUDO0RGHOV)URP *RDOV0RGHOV
0RQLTXH6RDUHV-RmR3LPHQWHO-DHOVRQ&DVWUR&DUOD6LOYD&OHLFH7DOLWKD*DEULHOD*XHGHV'LHJR'HUPHYDO &HQWURGH,QIRUPiWLFD 8QLYHUVLGDGH)HGHUDOGH3HUQDPEXFR8)3( 5HFLIH%UD]LO ^PFVMKFSMEFFWOOVFWQVJJVGGPFP`#FLQXISHEU $EVWUDFW—The STREAM (Strategy for Transition Between ReRIWKHYHUWLFDOWUDQVIRUPDWLRQUXOHVLQ4976HFWLRQSUHVHQWV quirements and Architectural Models) process presents an apDQ DSSOLFDWLRQ H[DPSOH 6HFWLRQ SUHVHQWV WKH UHODWHG ZRUNV proach that allows the generation of early architectural design DQG 6HFWLRQ GLVFXVV WKH UHVXOWV RI WKLV ZRUN DQG IXWXUH UH describedin Acme ADLfrom goal oriented requirements models VHDUFK
expressed in L .The process includes activities that defines transformation rules to derive such architectural models.In order to minimize the effort to apply the processand decrease the possibility of making mistakes it is vital that some degree of automationis provided.This paper explains in detail thetransformation rulesproposed and their corresponding formalization in a model transformation language. 5HTXLUHPHQWV (QJLQHHULQJ 7UDQVIRUPDWLRQ5XOHV$XWRPDWLRQ
,
6RIWZDUH
$UFKLWHFWXUH
,1752'8&7,21
7KH 675($0 6WUDWHJ\ IRU 7UDQVLWLRQ EHWZHHQ 5HTXLUH PHQWV 0RGHOV DQG $UFKLWHFWXUDO 0RGHOV LV D V\VWHPDWLF DS SURDFK WRLQWHJUDWHUHTXLUHPHQWV HQJLQHHULQJ DQG DUFKLWHFWXUDO GHVLJQ DFWLYLWLHV EDVHG RQ PRGHO WUDQVIRUPDWLRQV WR JHQHUDWH DUFKLWHFWXUDOPRGHOVIURPUHTXLUHPHQWVPRGHOV>@7KHVRXUFH ODQJXDJHLVi*L6WDU >@DQGWKHWDUJHWODQJXDJHLV$FPH>@
,,
%$&.*5281'
7KLV VHFWLRQ SUHVHQWV DQ RYHUYLHZ RQ i* $FPH DQGWK H 675($0SURFHVVZKLFKDUHXVHGLQRXUDSSURDFK A. iStar 7KHi*ODQJXDJHLVDJRDORULHQWHGPRGHOLQJODQJXDJHDEOH WRUHSUHVHQWIHDWXUHVRIERWKWKHRUJDQL]DWLRQDQGRIWKHV\VWHP WREHDFTXLUHGGHYHORSHGE\IRUWKHRUJDQL]DWLRQ6WDNHKROGHUV DQGV\VWHPVDUHUHSUHVHQWHGDVDFWRUVZKLFKDUHDFWLYHHQWLWLHV DEOH WRSH UIRUP WDVNV UHDFK JRDOV DQG SURYLGH UHVRXUFHV ,Q RUGHUWRDFKLHYHWKHLURZQJRDOVDFWRUVKDYHGHSHQGHQFLHVZLWK HDFKRWKHU>@ i*LVFRPSULVHGRIWZRPRGHOVD6'6WUDWHJLF'HSHQGHQ F\ PRGHOGHVFULEHVGHSHQGHQF\UHODWLRQVKLSVDPRQJDFWRUVLQ WKH RUJDQL]DWLRQ D65 6WUDWHJLF 5DWLRQDOH PRGHO H[SODLQV KRZDFWRUVDFKLHYHWKHLUJRDOVDQGGHSHQGHQFLHV
2XU SURSRVDO LV LQ OLQH ZLWK WKH FXUUHQW 0'' 0RGHO 'ULYHQ 'HYHORSPHQW SDUDGLJP DV ZH VXSSRUW WKH WUDQVIRU PDWLRQRIPRGHOVRIKLJKHUOHYHOVRIDEVWUDFWLRQWRPRUHFRQ FUHWH PRGHOV 7KH 0'' DGYDQWDJHV DUH JUHDWHU SURGXFWLYLW\ DQGWKHUHIRUHDORZHUGHYHORSPHQWWLPHLQFUHDVHGSRUWDELOLW\ LQFUHDVHGLQWHURSHUDELOLW\DQGORZHUPDLQWHQDQFHFRVWVGXHWR WKHLPSURYHGFRQVLVWHQF\DQGPDLQWDLQDELOLW\RIWKHFRGH>@
,QDGHSHQGHQF\DdependerDFWRUUHOLHVRQDdependeeDF WRUWRDFKLHYHVRPHWKLQJWKHdependum $dependumFDQEHD JRDOZKLFKUHSUHVHQWVWKHLQWHQWLRQDOGHVLUHRIDQDFWRUWREH IXOILOOHG D VRIWJRDO WR EH VDWLVILHG ZKLFK LV D JRDO ZLWK WKH DFFHSWDQFHFULWHULRQQRWVRFOHDUDUHVRXUFHWREHSUR YLGHGRU DWDVN WR EHSHU IRUPHG )LJXUHSUHVHQWV DQH[FHUSWRIWKH i* PHWDPRGHO GHILQHGIRU WKH L6WDU7RROWRRO>@
&XUUHQWO\WKHWUDQVIRUPDWLRQUXOHVGHILQHGLQWKH675($0 DSSURDFK DUH LQIRUPDOO\ GHVFULEHG DQG DUH PDQXDOO\ DSSOLHG +HQFH WKHLU XVH LV WLPH FRQVXPLQJ DQG HIIRUWIXO DV ZHOO DV HUURUSURQH ,QRUGHUWRRYHUFRPHWKHVHVKRUWFRPLQJVZHSUR SRVHWR XVHDQLPSHUDWLYH WUDQVIRUPDWLRQODQJXDJH4972>@ WRSURSHUO\GHVFULEHWKHPDQGWRSURYLGHWRROVXSSRUW
B. Acme $FPHLVDQ$ '/$UFKLWHFWXUDO'HVFULSWLRQ/DQJXDJH GH VLJQHGWRGHVFULEHWKHFRPSRQHQWVDQGFRQQHFWRUV& & YLHZ RI WKH V\VWHP DUFKLWHFWXUH >@ ,W UHOLHV RQ VL[ PDLQ W\SHV RI HQWLWLHVIRUDUFKLWHFWXUDOUHSUHVHQWDWLRQComponentsConnectorsSystemsPortsRolesDQG Representations )LJXUH SUH VHQWVWKH$FPHPHWDPRGHOEDVHGRQWKH$FPH6WXGLRWRRO>@
7KH DLP RI WKLVSDSHU LV WR DXWRPDWH WKH YHUWLFDO WUDQVIRU PDWLRQUXOHVSURSRVHGLQWKH675($0)RUWKLVLWZDVQHFHV VDU\WR'HILQHWKHVHUXOHVLQDSURSHUWUDQVIRUPDWLRQODQJXDJH 0DNH WKHVH UXOHV FRPSDWLEOH ZLWK WKH ,6WDU7RRO DQG $FPH6WXGLRWRROVDQGLOOXVWUDWHWKHXVHRIWKHPUXOHV 7KHUHPDLQGHURIWKLVSDSHULVRUJDQL]HGDVIROORZV6HFWLRQ GHVFULEHVWKHEDFNJURXQGUHTXLUHGIRUDEHWWHUXQGHUVWDQGLQJ RIWKLVZRUN6HFWLRQSUHVHQWVWKHGHVFULSWLRQDQGDXWRPDWLRQ
444
&RPSRQHQWVUHSUHVHQWWKHSULPDU\FRPSXWDWLRQDOHOHPHQWV DQG GDWD VWRUHV RI D V\VWHP &RQQHFWRUV FKDUDFWHUL]H LQWHUDF WLRQV DPRQJ FRPSRQHQWV 6\VWHPV GHQRWH FRQILJXUDWLRQV RI FRPSRQHQWV DQG FRQQHFWRUV (DFK SRUW LGHQWLILHV D SRLQW RI LQWHUDFWLRQEHWZHHQWKHFRPSRQHQWDQGLWVHQYLURQPHQW5ROHV define the connector’s interfaces. 5HSUHVHQWDWLRQVXSSRUWVKLHU DUFKLFDOGHVFULSWLRQVRIDUFKLWHFWXUHV>@
SDWWHUQVFDQEHDSSOLHGWRDOORZDSSURSULDWHUHILQHPHQWVRI WKH FKRVHQFDQGLGDWH DUFKLWHFWXUDOVROXWLRQLQ DFWLYLW\>@
ContributionLink source
* 0..1
DecompositionTask source target
0..1
0..1
target
,QWKH9HUWLFDO7UDQVIRUPDWLRQ5XOHV975V WKH i*DFWRUV DQG GHSHQGHQFLHV DUH PDSSHG WR $FPH HOHPHQWV 7KXV DQi* DFWRU LV PDSSHG WR DQ $FPH FRPSRQHQW $Q i* GHSHQGHQF\ EHFRPHV DQ $FPH FRQQHFWRU 7KH depender DQG dependee DFWRUV LQ D GHSHQGHQF\ FDQ EH PDSSHG WR WKH UROHV RI D FRQ QHFWRU,QSDUWLFXODUZHFDQGLVWLQJXLVKEHWZHHQUHTXLUHGSRUWV PDSSHG IURP depender DFWRUV DQG SURYLGHG SRUWV PDSSHG IURP dependee DFWRUV 7KXV D FRQQHFWRU DOORZV FRPPXQLFD WLRQ EHWZHHQ WKHVH SRUWV $ FRPSRQHQW SURYLGHV VHUYLFHV WR DQRWKHU FRPSRQHQW XVLQJ SURYLGHG SRUWV DQG LW UHTXLUHV VHU YLFHVIURPDQRWKHUFRPSRQHQWXVLQJUHTXLUHGSRUWV
*
Element
0..1
source
MeansEnd
0..1
0..1
* *
target elements
* meansEnd decompositionTasks contributionLinks
Actor
NodeObject
associations
7KHIRXUW\SHVRIGHSHQGHQFLHVJRDOVRIWJRDOWDVNDQGUH VRXUFH ZLOO GHILQH VSHFLILF GHVLJQ GHFLVLRQV LQ FRQQHFWRUV SRUWV DQG UROHV WKDW DUH FDSWXUHG DV $FPH Attachments $Q REMHFW GHSHQGHQF\ LV PDSSHG WR D %RROHDQ SURSHUW\ $ WDVN GHSHQGHQF\LVPDSSHGGLUHFWO\WRDSRUWSURYLGHG7KHUHVRXUFH GHSHQGHQF\LVPDSSHGWRDUHWXUQW\SHRIDSURSHUW\SURYLGHG SRUW$VRIWJRDOGHSHQGHQF\LVPDSSHGWRDSURSHUW\ZLWKHQX PHUDWHGW\SH
target
source 0..1
Model
ActorAssociation
Link
links
elements
*
0..1
actors
target
source
0..1
0..1
*
* Dependency Link
)LJXUH([FHUSWRIWKHi*PHWDPRGHO Property
*
properties
attachment
System
-name -value -type
7KHVH WUDQVIRUPDWLRQ UXOHV ZHUH GHILQHG LQ D VHPL IRUPDO ZD\LQ>@DQGQRZWKH\QHHGWREH SUHFLVHO\VSHFLILHGXVLQJ D VXLWDEOH PRGHO WUDQVIRUPDWLRQ ODQJXDJH VXFK DV 4XH U\9LHZ7UDQVIRUPDWLRQ2SHUDWLRQDO–4972>@,QGRLQJVR ZHFDQYDOLGDWHWKHP DVZHOODV SURYLGHVXSSRUWWRSDUWLDOO\ DXWRPDWHWKHSURFHVVKHQFHHQDEOLQJWKH675($0 SURFHVVWR EHFRPHDIXOOIOHGJHG0''DSSURDFK
-name
1..*
1..*
,,,
acmeElements
*
-name
Component
Connector
2..*
Port
Role
6LQFHWKHYHUWLFDOWUDQVIRUPDWLRQVGRQRWFRQVLGHUWKHLQWHU QDO HOHPHQWV RI WKH DFWRUV ZH ILUVW FUHDWH DQ LQWHUPHGLDU\ 6' PRGHOIURPWKH PRGXODUi*65PRGHO:HSURFHHGWRDSSO\WKH 975V VHH 7DEOH , 7KH ILUVW UXOH 975 PDSV i* DFWRUV WR $FPHFRPSRQHQWVZKLOH975 WUDQVIRUPV i*GHSHQGHQFLHVWR $FPHFRQQHFWRUV 7KH975FRQYHUWVWKHdependerDFWRURQWR D UHTXLUHG SRUW RI WKH $FPH FRQQHFWRU 7KH 975 WUDQVODWHV WKHdependeeDFWRURQWR D SURYLGHGSRUWRIWKH $FPHFRQQHFWRU
1..*
roles
ports
*
1
secondPort
1
firstPort
Binding
* Attachment
*
role
port 1..*
)LJXUH$FPHPHWDPRGHO
$8720$7,212)7+(9(57,&$/75$16)250$7,21 58/(6
,Q WKH 675($0 SURFHVV WKH XVHU EHJLQV E\ XVLQJ i* WR PRGHOWKHSUREOHPDWKDQG 6RPH KHXULVWLFVFDQ JXLGHWKHVH OHFWLRQ RI VXEVHWV RI FDQGLGDWH HOHPHQWV WR EH UHIDFWRUHG 2QFHWKH\DUHVHOHFWHGWKH+75VFDQEHDSSOLHG WRLPSURYHWKH PRGXODUL]DWLRQRIWKHi*PRGHO>@
representations
properties
AcmeElement
bindings
Representation
acmeElements
*
C. STREAM 7KH675($0SURFHVVLQFOXGHVWKHIROORZLQJDFWLYLWLHV 3UHSDUH UHTXLUHPHQWV PRGHOV *HQHUDWH DUFKLWHFWXUDO VROX WLRQV 6HOHFW DUFKLWHFWXUDO VROXWLRQ DQG 5HILQH DUFKLWHF WXUH ,Q DFWLYLWLHV DQG KRUL]RQWDO DQG YHUWLFDO UXOHV DUH SURSRVHG UHVSHFWLYHO\ +RUL]RQWDO UXOHV DUH DSSOLHG WR WKH i* UHTXLUHPHQWV PRGHOV WR LQFUHDVH LWV PRGXODULW\ DQG SUHSDUH WKHP IRUHDUO\DUFKLWHFWXUDOWUDQVIRUPDWLRQ7KHUHDUHIRXUKRU L]RQWDOWUDQVIRUPDWLRQUXOHV+75V >@9HUWLFDOUXOHVDUHXVHG WR GHULYH DUFKLWHFWXUDO PRGHOV LQ $FPH IURP PRGXODUL]HG i* PRGHOV1RQ)XQFWLRQDO5HTXLUHPHQWVDUHXVHGWRVHOHFWLQLWLDO FDQGLGDWH DUFKLWHFWXUH LQ WKH DFWLYLW\ &HUWDLQ DUFKLWHFWXUDO
445
:H UHOLHG RQ WKH (FOLSVH EDVHG WRRO IRU i* PRGHOLQJ WKH L6WDU7RRO>@WR FUHDWH WKHi* PRGHO7KLVPRGHOLVWKHLQSXWIRU WKH ILUVW 675($0 DFWLYLW\ 7KLV WRRO JHQHUDWHV D ;0, RI WKH PRGXODUL]HG i* 6' PRGHO ZKLFK FDQ EH UHDG E\ WKH 4972 (FOLSVHSOXJLQ>@WRVHUYHDVLQSXWIRUWKH975VH[HFXWLRQ 7KH 975V GHVFULEHG LQ 4972 DUH EDVHG RQ WKH PHWDPRGHOVSUHVHQWHGLQ6HFWLRQWKH\DUHUHIHUHQFHGGXULQJ WKH H[HFXWLRQ RI WKH WUDQVIRUPDWLRQ 7KH PRGHOV FUHDWHG ZLWK WKH975VH[HFXWLRQ DUHUHSUHVHQWHGDV;0,ILOHV ,Q RXU ZRUN ZH ZHUH DEOH WR DXWRPDWH KRUL]RQWDOV +75+75 DQG YHUWLFDOVWUDQVIRUPDWLRQUXOHV>@ +RZ HYHUGXHWRVSDFHOLPLWDWLRQLQWKLVSDSHU ZHRQO\ GLVFXVVKRZ
ZH GHDOWZ LWK WKH YHUWLFDOV UXOHV 7DEOH LOOXVWUDWHV WKH HOH PHQWV SUHVHQW LQ WKH VRXUFH PRGHO DQG WKHLU FRUUHVSRQGLQJ HOHPHQWVSUHVHQWLQWKHWDUJHWPRGHO 7$%/(, 9(57,&$/75$16)250$7,2158/(6 Source (L ) Target (Acme)
/DVW EXW QRW OHDVW WKH 975 PDSV DOO dependee DFWRUV WR SURYLGHG SRUWV LQ WKH FRUUHVSRQGLQJ FRPSRQHQWV REWDLQHG E\ WKRVHDFWRUV)RUWKLVZHOLVWDOOdependeeDFWRUVLQWKHPRGHO (YHU\SRUWJHQHUDWHGKDVDQDPHDQGDSURSHUW\7KHSRUWQDPH LVJLYHQDWUDQGRP7KHSRUWSURSHUW\QDPHLVProvidedWKH SRUWW\SHLVVHWWRbooleanDQGWKHSRUWYDOXHLVVHWWRtrue
VTR1
VTR2
VTR3
VTR4
7KH ;0, RXWSXW ILOH ZLOO FRQWDLQ “SRUWV” WDJV ZLWKLQ WKH acmeElementWDJRIFRPSRQHQWW\SH0RUHRYHUVLQFHWKH\DUH UHTXLUHG SRUWV WKHUH ZLOO EH RQH SURSHUW\ ZLWK DQ DWWULEXWH QDPHGRequiredZKRVHYDOXHLVVHWWR true
7R PDS i*DFWRUVWR $FPH FRPSRQHQWV ZHQHHGWRREWDLQ WKH QXPEHURIDFWRUVSUHVHQWLQ WKH PRGXODUL]HG i* 6' PRGHO DUWLIDFW6RZHFUHDWHWKHVDPHDPRXQWRI $FPHFRPSRQHQWV JLYLQJWRWKLVFRPSRQHQWVWKHVDPHQDPHVRIWKHi*DFWRUV7KH ;0,ILOHREWDLQHGDVRXWSXWRIWKLVWUDQVIRUPDWLRQZLOOFRQWDLQ WKHFRPSRQHQWVUHSUHVHQWHGE\WDJV)LJXUH while(actorsAmount > 0) { result.acmeElements += object Component{ name := self.actors.name->at(actorsAmount); } actorsAmount := actorsAmount - 1; }
while(dependencyAmount > 0) { if(self.actors.name->includes(self.links.source>at(dependencyAmount).name) and self.actors.name>at(actorsAmount).=(self.links.source>at(dependencyAmount).name)) then { ports += object Port{ name := "port"+countPort.toString(); properties := object Property { name := "Required"; value := "true" }; }; } endif; dependencyAmount := dependencyAmount - 1; countPort := countPort + 1; }; )LJXUH([FHUSWRIWKH4972FRGHIRU975
)LJXUH([FHUSWRIWKH4972FRGHIRU975 ,QWKH 975HDFKi*GHSHQGHQF\FUHDWHVWZR;0,WDJVRQH FDSWXULQJWKHdependerWRWKHdependumFRQQHFWLRQDQGDQRWK HURQHFDSWXUHVWKHdependum WRWKHdependee
,QRUGHUWRPDSWKHVHGHSHQGHQFLHVLQ$FPHFRQQHFWRUVLW LV QHFHVVDU\ WR UHFRYHU WKH WZR GHSHQGHQFLHV WDJV REVHUYLQJ WKDWKDYHWKHVDPH dependum,WLVQHFHVVDU\ QRWFRQVLGHUWKH DFWRUZKLFKSOD\VWKHUROHRIdependerLQVRPHGHSHQGHQF\DQG dependee LQ DQRWKHU 2QFH WKLV LV SHUIRUPHG WKHUH DUH RQO\ dependums OHIW )RU HDFK dependum RQH $FPH FRQQHFWRU LV FUHDWHG 7KH FRQQHFWRU FUHDWHG UHFHLYHV WKH QDPH RI WKH dependumRIWKHGHSHQGHQF\OLQN7ZRUROHVDUHFUHDWHGZLWKLQ WKH FRQQHFWRU RQH QDPHG dependerRole DQG DQRWKHU QDPHG dependeeRole7KH;0,RXWSXWILOHZLOOFRQWDLQWKHFRQQHFWRUV UHSUHVHQWHGE\WDJVVHH)LJXUH )LJXUH&RQQHFWRULQ;0,
7KH 975 FRQYHUWV D depender DFWRU LQWR D UHTXLUHG SRUW SUHVHQWLQWKHFRPSRQHQWREWDLQHGIURPWKDWDFWRUVHH)LJXUH )LUVW ZH FUHDWH RQH $FPH SRUW IRU HDFK DFWRU depender (DFKSRUWFUHDWHGKDVDQDPHDQGDSURSHUW\7KHSRUWQDPHLV JLYHQDWUDQGRPMXVWWRFRQWUROWKHP7KHSURSHUW\PXVWKDYHD QDPH DQGDY DOXH VR WR WKH SURSHUW\ QDPH LV DVVLJQHG 5H TXLUHGDVZHDUHFUHDWLQJDUHTXLUHGSRUWDQGWKHYDOXHLVtrue
446
)LJXUH3URYLGHGSRUWFRPSRQHQWDQGSURSHUWLHVLQ;0,
$IWHUFUHDWLRQRIWKHEDVLFV$FPHHOHPHQWVLWLV QHFHVVDU\ WRFUHDWHWKHAttachmentREMHFWHOHPHQWUHVSRQVLEOHIRUDVVRFL DWLQJWKHFRQQHFWRUVWRWKHUHTXLUHGDQGSURYLGHGSRUWVSUHVHQW LQWKHFRPSRQHQWV7KHUHIRUHDQDWWDFKPHQWLVFUHDWHGIRUHDFK SRUWRIDFRPSRQHQW(DFKAttachmentKDVDFRPSRQHQWDVDQ DWWULEXWHDSRUWDFRQQHFWRUDQGDUROH 1H[WVHFWLRQSUHVHQWVDQH[DPSOHWRLOOXVWUDWHRXUDSSURDFK ,9
5811,1*(;$03/(
0\&RXUVHVLVDVFKHGXOLQJV\VWHPWKDWSURYLGHVDVRSWLPDO DVSRVVLEOHDSODQIRUVFKHGXOLQJFRXUVHV,WDOORZVXQLYHUVLWLHV WRSHUIRUPWDVNVVXFKDVFKHFNLQJDQGOLVWLQJDYDLODEOHOHFWXUH URRPVWHDFKHUVVWXGHQWVHQUROOHGLQDQ\FRXUVH,WZDVRQHRI WKH SURMHFW SURSRVDOV IRU WKH ,&6( 6WXGHQW &RQWHVW RQ 6RIWZDUH(QJLQHHULQJ>@ 7KH PRGXODUL]HG L 6'P RGHO IRU WKH 0\&RXUVHV V\VWHP )LJXUH ZDV XVHG DV LQSXW PRGHO IRU WKH H[HFXWLRQ RI WKH 975V7KHVHUXOHVKDYHWKHREMHFWLYHWRWUDQVIRUPDPRGXODU L]HGL 6'PRGHOLQWRDQ$FPHLQLWLDODUFKLWHFWXUDOPRGHO $IWHUWKHDXWRPDWHGDSSOLFDWLRQRIWKH975VD;0,PRGHO UHSUHVHQWLQJ WKH RXWSXW PRGHO DQG FRPSDWLEOH ZLWK WKH $FPH PHWDPRGHO ZLOO EH JHQHUDWHG )LJXUH VKRZV WKH JUDSKLFDO UHSUHVHQWDWLRQRIWKDW;0,PRGHOIRUWKH0\&RXUVHVV\VWHP
&XUUHQWO\WKHRXWSXWRIRXUSURFHVVLVDQ;0,ILOHZLWKWKH LQLWLDO $FPH DUFKLWHFWXUDO PRGHO %XW WKH $FPH6WXGLR WRRO UHDGLQJILOHVGHVFULEHGLQ$FPHWH[WXDOODQJXDJH$VDFRQVH TXHQFH WKH FXUUHQW DUFKLWHFWXUDO PRGHO FDQQRW EH JUDSKLFDOO\ GLVSOD\HG + HQFH RXU SODQ LV WR SURYLGH QHZ WUDQVIRUPDWLRQ UXOHV WR JHQHUDWH WKH WH[WXDO UHSUHVHQWDWLRQV &DVH VWXGLHV DUH VWLOOUHTXLUHGWRYDOLGDWHRXUDSSURDFK 5()(5(1&(6 >@ >@
)LJXUH0RGXODUL]HGi*6'PRGHO0\&RXUVHV
>@
>@ >@
>@
)LJXUH$FPH0RGHOIURP0\&RXUVHV
9
5(/$7(':25. >@
2XUZRUNLVXQLTXHLQVXSSRUWLQJWKH675($0DSSURDFK 0D5L6$0'' >@ SUHVHQWV D VWUDWHJ\ EDVHG RQ PRGHOV WKDW LQWHJUDWH DVSHFWRULHQWHG UHTXLUHPHQWV DUFKLWHFWXUH DQG GHWDLOHG GHVLJQ XVLQJ $29JUDSK $VSHFWXDO$&0( DQG D6LGH0/ ODQJXDJHV UHVSHFWLYHO\ ,W GHILQHV UHSUHVHQWDWLYH PRGHOVDQGDQXPEHURIWUDQVIRUPDWLRQVEHWZHHQWKHPRGHOVRI HDFKODQJXDJH7KHWUDQVIRUPDWLRQODQJXDJHXVHGZDV$7/ 6LOYD HW DO >@ VSHFLI\ WKURXJK D PRGHOGULYHQ DSSURDFK WKH WUDQVIRUPDWLRQV QHFHVVDU\ IRU DUFKLWHFWXUDO PRGHOV GH VFULEHG LQ 80/ IURP DUFKLWHFWXUDO RUJDQL]DWLRQDO PRGHOV GH VFULEHGLQL 7KHWUDQVIRUPDWLRQODQJXDJHXVHGZDV$7/ 9,
>@
&216,'(5$7,216$1')8785(:25.6
>@
>@
>@
>@
>@
,WWKLVSDSHUZHDGYRFDWHGWKHXVHRI PRGHOWUDQVIRUPDWLRQ WRJHQHUDWHDUFKLWHFWXUDOPRGHOVIURPUHTXLUHPHQWVPRGHOV:H UHYLHZHG WKH 675($0 SURFHVV ZKLFK GHILQHV DQG DSSOLHV PDQXDOO\ DVHWRIPRGHOWUDQVIRUPDWLRQUXOHVWRREWDLQ$FPH DUFKLWHFWXUDOPRGHOVIURPL UHTXLUHPHQWVPRGHOV ,QRUGHUWR GHFUHDVHWLPHDQGHIIRUWUHTXLUHGWRSHUIRUPWKH 675($0 SURFHVV DQG PLQLPL]H WKH HUURUV LQWURGXFHG E\ WKH PDQXDO H[HFXWLRQ RI WKH WUDQVIRUPDWLRQ UXOHV ZH SURSRVHG WR XVH WKH 4972 ODQJXDJH WR DXWRPDWL]H WKH H[HFXWLRQ RI WKHVH UXOHV 2XUIRFXVZDVRQWKHDXWRPDWLRQRIWKH975VUHVSRQVL EOH WR JHQHUDWH DQ LQLWLDO $FPH DUFKLWHFWXUDO PRGHO 0HWDPRGHOV RIWKHL DQG$FPHODQJXDJHVZHUHSURYLGHG7KH LQSXW PRGHOV RI WKH 975V DUH FRPSDWLEOH ZLWK WKH L6WDU7RRO DQG WKHRXWSXW PRGHOV DUH FRPSDWLEOH ZLWK $FPH PHWDPRGHO VXSSRUWHGE\WKH$FPH6WXGLRWRRO
447
>@
>@
>@
$&0( $FPH $FPH 7KH $FPH6WXGLR $YDLODEOH LQ KWWSZZZFVFPXHGXaDFPH$FPH6WXGLR!$FFHVVHGLQ0D\ *$5/$1 D., MONROE, R., Wile, D. Acme: An Architecture Description Interchange Language. In: Proceedings of the 1997 conference of the Centre for Advanced Studies on Collaborative research (CASCONތ97).Toronto, Canada /8&(1$0&$6752-6,/9$&$/(1&$5)6$1726( 3,0(17(/ - $ 0RGHO 7UDQVIRUPDWLRQ $SSURDFK WR 'HULYH $UFKLWHFWXUDO0RGHOVIURP*RDO2ULHQWHG5HTXLUHPHQWV0RGHOV,QWK ,:66$ 27 0 :RUNVKRSV /HFWXUH 1RWHV LQ &RPSXWHU 6FLHQFH 9ROXPH (&/,36( 00 0RGHO 7R 0RGHO 00 $YDLODEOH LQ KWWSHFOLSVHRUJPP!$FFHVVHGLQ0D\ &$6752-/8&(1$06,/9$&$/(1&$5)6$1726( 3,0(17(/ -& KDQJLQJ $WWLWXGHV 7RZDUGV WKH *HQHUDWLRQ RI $UFKLWHFWXUDO0RGHOV-RXUQDORI6\VWHPVDQG6RIWZDUH 0$/7$ $ 62$5(6 0 6$1726 (3$ (6 - $/(1&$5 ) &$6752 -L6WDU7RRO 0RGHOLQJ UHTXLUHPHQWVXVLQJWKH i* IUDPHZRUN ,6WDU$XJXVW 20*2EMHFW0DQDJHPHQW*URXS0'$3URGXFWLYLW\6WXG\-XQ\ $YDLODEOH LQ KWWSZZZRPJRUJPGDPGDBILOHV0'$B&RPSDULVRQ 70&BILQDOSGI!$FFHVVHGLQ0D\ 20* 497 0HWD 2EMHFW )DFLOLW\ 02) 4XHU\9LHZ7UDQVIRUPDWLRQ 6SHFLILFDWLRQ -DQXDU\ $YDLODEOH LQ KWWSZZZRPJRUJVSHF497!$FFHVVHGLQ0D\ /8&(1$06,/9$&6$1726($/(1&$5)&$6752- $SSO\LQJ7UDQVIRUPDWLRQ5XOHVWR,PSURYHi*0RGHOV6(.( 6&25(7KH6WXGHQW&RQWHVWRQ6RIWZDUH(QJLQHHULQJ 6&25( $YDLODEOHLQKWWSVFRUHFRQWHVWRUJ!$FFHVVHGLQ 0D\