TheRoleofVisualModelingandModelTransformationsinBusiness-driven
Development
JanaKoehlerKseniaRyndina
RainerHauserJussiVanhatalo
JochenK¨usterMichaelWahler
IBMZurichResearchLaboratory,BusinessIntegrationTechnologies
S¨aumerstr.4,CH-8803R¨uschlikon,Switzerland
1Introduction
AnimprovedalignmentoftheITinfrastructureofanenterprisewithitsbusi-nessneedsandrequirementsisatrendthathasdominatedanddriveninno-vationsininformationtechnologyoverthepastcoupleofyears.Termssuch
asWebservices[24],Service-OrientedArchitecture[7],model-driven[23]andagile[18]development,andindustrystandardssuchastheWebServiceDe-scriptionLanguage,WSDL[5],andtheBusinessProcessExecutionLanguage,
Koehleretal.
BPEL[1],orrecentspecificationssuchastheService-ComponentArchitec-ture[2]allrelatetothistrend.
Thenewtechnologiesfocusonimprovingtheagilityoftheenterprisesoft-waredevelopmentprocesstomatchthepaceatwhichthebusinessneedstochangeinordertokeepupwithmarkettrendsandcompetition.AkeytoimprovedsoftwaredevelopmentagilityisthecapabilityofITdepartmentstocreatesolutionsthatdirectlyrealizebusinessgoalsthroughwell-designedbusinessprocesses.
Business-drivendevelopment(BDD)[19]isamethodologyfordevelop-ingITsolutionsthatdirectlysatisfybusinessrequirementsandneeds.BDDrequiresthat“amechanismneedstobedevisedbywhichITeffortsareinter-lockedwithbusinessstrategyandrequirementsthroughanexecutionframe-workthatisstandardized,wellunderstood,andcanbeexecutedrepeatedlyandsuccessfully”[19].Themainphasesofsucha“mechanism”areillustratedinFigure1.
TheModelphasecomprisestheidenti-ficationofbusinessgoalsandrequirementsandthemodelingoftheunderlyingbusinessprocesses.Thebusiness-processmodelsareBusiness
Requirements
anessentialmeanstocreatealinkbetweenthebusinessneedsandtheITimplementa-IT tions.IntheDevelopphase,thebusiness-Requirements
processmodelsarerefinedthroughanum-beroftransformationsuntilanimplementa-tionisobtainedthatcanthenbeintegratedwiththeexistingITinfrastructureintheDe-Fig.1MainBDDphases.ployphase.Theresultingdeployedsolution
ismonitoredtomeasurehowitachievesthe
originallystatedbusinessgoals.Finally,needsforchangesandadaptationoftherunningbusinessprocessescanbederivedandfedbackintotheorigi-nalbusiness-processmodels.IntheBDDprocess,businessrequirementsflowdownwardsfromthebusinessleveltotheITlevel,whileITrequirementsflowupwardsfromtheITleveltothebusinesslevel.Whatsoundssostraight-forwardandeasyintheoryturnsouttobeaverychallengingendeavorinpractice.Inthispaper,wewillfocusonthetwopredominantofthechal-lengesencountered:
(i)Abusiness-processmodelthathasbeendesignedwithbusinessrequire-mentsandgoalsinmindisnotnecessarilyamodelthatdescribesascalable,reliable,andperformantchoreographyofreusableITservices.(ii)Aservicechoreographyderivedinatop-downmannerfromabusiness-processmodelmaynotsoeasilyorevennotatallintegratewithanexistingITinfrastructure.Thefirstchallengeresultsfromalargegapbetweentheworldandperspec-2
Koehleretal.
tiveofabusinessanalystandtherealitiesoftoday’sprogrammingmodelsandsoftware-engineeringapproaches.ThesecondchallengeresultsfromthegapbetweenanideallydesignednewsolutionandtherealitiesoftheexistingITinfrastructureinvolvingsoftware,hardware,andnetworktopology.Thenextsectionwillworkthroughasmallexampletodiscussinwhichformthesechallengesoccurandhowtheycanbeaddressed.
2
FromAnalysisModelstoDesignModelsofBusinessProcesses
Thereseemstobeawidelyacceptedbeliefthatthemodelofabusinessprocessexists,i.e.,thatthereisasinglemodelthatdescribesthebusinessprocessandthatthissinglemodelissuitableforthebusinessexpertaswellastheITex-pertwhoissupposedtoimplementthebusinessprocess.Inourownwork,wecametotheconclusionthatthisassumptionisveryunrealistic.Instead,itisnecessary(asitiscommontodayinobject-orientedprogramming)todistin-guishbetweentheanalysismodelofabusinessprocessanditsdesignmodel,andtodevelopamethodologythatenablestheseamlesstransitionfromtheanalysismodeltothedesignmodel.Toillustratetheproblem,letusconsidertheexampleinFigure2,whichdescribesaverysimplifiedprocessforhandlinginsuranceclaimsasitmaybeinitiallydepictedbyaclaimsspecialist.2TheprocessconsistsofthreesubprocessesSearchInformation,RecordClaim,andSettleClaim.
Fig.2.Analysismodelofasimplifiedclaimhandlingprocessininsurance.
Theintendedmeaningisdescribedbytheclaimsspecialistasfollows:“Theprocessstartswhenanewclaimisrecordedorbyrevisitinganexistingonetosearchforadditionalinformationontheclaim.Newinformationabouttheclaimisrecorded,andthenthesettlingoftheclaimisattempted.Theprocessfinishesiftheclaimwassettled,i.e.,ifeitherabenefitispayedortheclaimisrejectedbecauseitisnotcoveredbytheinsurancepolicyoftheclaimant,forexample.Ifasettlementcannotbeachieved,e.g.,thebenefitofferedbythe
Koehleretal.
insuranceisnotacceptedbytheclaimant,theprocesshastoberesumedbysearchingforadditionalinformation.”
ThegraphicalmodelshowninFigure2depictseachofthesubprocessesbyarectangle,explicitlydenotesstartandendpointsoftheprocess,andshowsthecontrol-flowinsidetheprocessbyconnectingthemodelingelementswithdirectededges.3Multipleincomingoroutgoingedgesdenotealterna-tive,sequentialpathsofexecutionintheprocess,i.e.,thereisnoparallelisminvolvedinthisexample.Thedecisionsthatselectamongthesealternativeexecutionpathsarenotexplicitlyrepresentedinthismodel.Themodelisatypicalanalysismodelofabusinessprocess.Ananalysismodeldescribeswhattheprocessisdoing.Itshowstheinitialpartitioningoftheprocessintosubprocessesandactivitieswiththemainflowofcontroland,optionally,ofdata.ItcompletelyabstractsfromIT-relatedaspects,butcanbeusedforsimulationanddiscussionwithbusinessanalysts.
However,thismodelisnotyetreadyforimplementation.First,wedonotknowwhichdatawilldrivetheprocessandrepresenttheclaiminformation.Secondly,wehavenoinformationontheunderlyingdecisionlogicorbusinessrulesthatguidetheselectionofthealternativeexecutionpaths.Thisinfor-mationisaddedtothemodelinFigure3,whichshowsadata-flowmodelwithexplicitdecisionandmergepoints.Thefigureshowstheinitialdesignmodelfortheclaim-handlingprocess.Ingeneral,adesignmodelcontainsarefinedpartitioningoftheprocessthatreflectsexistingapplicationsystemsandshowsanIT-basedflowofdataandcontrol.Itmustbereadytobemappedtothedesiredtargetprogrammingmodel.Afullyrefineddesignmodelinadditiondescribeshowtheprocessisrealizedusinghardware,software,andpeople.
Fig.3.Initialdesignmodelwithdata-flow,decisionandmergepointsmadeexplicit.
ThetransitionfromFigure2toFigure3isaprocessthatconsistsofman-ualandautomaticsteps,involvingthedomainexpertandanITorBusinessarchitectwhoisabletoworkbetweenthebusinessandITworlds,takinginputfrombothsides:
•
Inafullyautomaticstep,thesequentialandparallelbranchingandmerginginaprocessmodelcanbemadeexplicitbyaddingexplicitcontrolactionstotheprocessmodelsuchasJoin,Fork,Decision,Merge,e.g.,knownfromUMLactivitydiagrams[21].Inourexample,theoriginalcontrol-flowmodelistransformedintoacontrol-actionnormalform,whichexplicitlyaddscon-
Koehleretal.
trolactionstothegraphicalmodelandrestrictsactivitynodestohavingonlyasingleincomingandoutgoingedge.Twodecisionandmergenodesareautomaticallyaddedtothemodel,whereasthenamesofthedecisions,ClaimExists?andSettled?,areaddedbytheuser.
•
Theflowofbusinessinformationismadeexplicitinamanualtop-downanalysisstep,e.g.,itmeansthatoneannotatestheinputandoutputsofthesubprocesseswithdataabstractionssuchasclaim,policy,customerinformation,andtheseinputsandoutputsarepossiblyconnectedtomodelthedata-flowinsidetheprocess.
Inamanualbottom-upstep,datastructuresexistingintheavailableITinfrastructurearerevisited,whichcanrevealareusabledatatypethatcancapturetherequiredbusinessinformationanddrivetheprocess.Similarly,reusableservicesthatexistinthisinfrastructurecanbeidentifiedtoimple-mentpartsoftheprocess.Inourexample,anexistingWebserviceProvideInformationcanbereusedtoimplementtheSearchInformationsubprocess.ThisWebserviceusesamessageoftypeClaimthatisfoundsuitableforrepresentingallnecessaryinformationtodrivetheclaim-handlingprocess.Inafullyautomaticbottom-upstep,reusabledatatypesandservicescanbeimportedintothebusiness-processmodelingtool,wheretheybecomeavailableasmodelingelements.Servicemodelswillusuallybeaddedman-uallytoaprocessmodel,wheretheyareusedtoreplaceorrefineexistingprocessactivities,whereasacontrol-flowcanberefinedfullyautomaticallyintoadata-flowoncethedatatypehasbeenselectedbytheuser.Inourexample,theSearchInformationsubprocessisreplacedbytheProvideIn-formationserviceandtheClaimmessagetypeisassignedtothecontrol-flowofFigure2toyieldthecorrespondingdata-flowmodelinFigure3.
•
•
Thetwoautomaticstepsinourexamplecanbeimplementedasmodeltransformationsthattransformthebusiness-processmodelinFigure2tothemodelshowninFigure3.First,theoriginalcontrol-flowmodelistransformedintoacontrol-actionnormalform.Second,amessagetypeClaimwasselectedbytheuserandthenusedinanautomaticmodeltransformationthatchangesthecontrol-flowintoadata-flowdrivenbyClaim.Oncethedataormessagetypeenteringeachdecisionpointintheprocessisknown,thedecisioncondi-tionscanbeexpressedbyreferringtotheattributesandvaluesofthedataormessagetype.Thespecificationofthedecisionconditionbasedontheprocessdataisafurthermanualrefinementstepofthedesignmodel.
However,wearestillnotdone.Specifictargetplatformsmayfurtherrestrictthecontrol-anddata-flowsofdesignmodelsthatcanbemappedtocode.OursimpleexamplecontainsaforwardedgefromtheClaimExists?decisiontotheRecordClaimactivityandabackwardedgefromtheSettled?decisiontoamergeprecedingtheProvideInformationservice.Thebackwardedgeleadstoacyclicprocessmodel.Unfortunately,alanguagesuchasBPELdoesnotsupportunstructuredcycles,butonlyofferswell-structuredloops
5
Koehleretal.
intheformofwhile-activities[1].Thismeans,anothertransformationmustbeappliedthattransformsmodelswithunstructuredcyclesintomodelswithloops.Figures4and5showtheresultofsuchafullyautomaticcycle-removaltransformation[11,15].
Fig.4.Designmodelwithloop.
Figure4showsanewlycreatedloopactivitythatwasaddedbythemodeltransformationandencapsulatesallthoseactivitiesoftheprocessthatwerereachablebythecycle.Amapactivitywasaddedthatreceivesthearriv-ingClaimmessage,putsitintoadatastorevisualizedbyarepositorysym-bol(whichcanalsorepresentavariableinthetargetprogrammingmodel,e.g.,BPEL),andthentriggerstheloopviaacontrol-flowedge.Oncetheloophasterminated,anothermapactivityreceivesthemodifiedClaimmessageandthecontrol-flowfromthelooptopassthemessageontotheprocessinterface.Figure5showstheloopbodycontents.Inourexample,allactivitieshavebeenplacedinsidealoopandaBypassRegiondecisionhasbeenaddedtoencapsulatetheProvideInformationservice,whichisonlyinvokedinsomeoftheprocessexecutions.Theaccessoftheloopbodytothedataintherepositoryisnotdirectlyvisibleinthegraphicalvisualization,itisvisibleonlyviaadditionaltextualattributes,whichwedonotshowherebecauseofspacerestrictions.
Fig.5.Theloopbodycontainingtherepeatableprocessactivities.
Ourfinalexampledesignmodelisnolongerinarepresentationformatthatwouldbeidealforbusinesspeople.However,onlyfromthismodeloftheprocess,cannowruntimecodebegeneratedautomaticallythatmeetstherequirementsofourintendedtargetprogrammingmodelusingBPEL/WSDL.Withourtransformations,wehavemadeasystematicstep-by-steptransitionfromthebusinessviewtotheITviewoftheprocess,inwhicheachmodelre-sultsfromitspredecessorthroughawell-defined,gradualchange.Thechangeswerenecessarytoreuseexistingservicesanddatastructuresandaddressre-strictionsofthetargetprogrammingmodel.Onecaneasilyimaginethat
6
Koehleretal.
scalabilityandperformancerequirementswillalsosignificantlyinfluencehowtheanalysismodelisrefinedintothecorrespondingdesignmodel,forexamplewhenwehaveachoiceofmorethanonereusableserviceorwhenquality-of-serviceconsiderationsbecomeimportant.Theexamplealsoshowedthatevenasimplescenariorequiresasophisticatedmixturebetweenmanualandauto-matic,bottom-upandtop-downsteps.
Inthenextsection,wewillreviewbusiness-drivendevelopmentfromalargerperspectiveanddiscusswhatmethodologicalandtoolingunderpinningsarerequiredtomakethisnewstyleofsoftwaredevelopmentsuccessful.
3
MethodologiesandToolsforBusiness-DrivenDevel-opment
Figure6positionsbusiness-drivendevelopmentasasoftwaredevelopmentprocessfocusingonbusinessprocessesandfacingatradeoffbetweentheneedtopreservecustomerinvestments,whilemovingtowardsamodernService-OrientedArchitecture.Customer InvestmentsImport & RestructuringBusiness-Driven DevelopmentViews & Normal Form Search & Comparison Quality AssuranceBusiness ProcessAnalysis ModelTransformations:Control-Flow Extraction Data Container Assignment Cycle RemovalState Machine ExtractionRuntimeServiceComponentArchitectureProcessesServicesRulesState MachinesExisting Business ProcessesReference ModelsOther ToolsRelevant IT ModelsXML SchemaBPEL, WSDLImportBusiness ProcessDesign ModelOther RuntimesBPEL ExportService & Process IdentificationFig.6.Business-drivendevelopmentandcontributionsbyourresearchteam.Inthefollowing,wewillusethisfiguretodiscussinterestingresearchprob-lemsandbrieflyreviewselectedcontributionsmadebyourresearchteam.TheworkinZurichstartedin2001drivenbythegeneralquestionofhowsoftwarebasedonWebservicesshouldbedevelopedinthefuture.TheworkwasinfluencedbytrendssuchasModelDrivenArchitecture[8]andrequire-mentsofbusinessintegration.Veryquickly,wefocusedontheproblemofgeneratingBPELfrombusiness-processmodels[14]—animprovedandex-tendedBPELcodegenerationispartofIBMWebSphereBusinessModeler
7
Koehleretal.
today[16].Werealizedquicklythatcyclicprocessmodelsareverynaturalforbusinessanalysts,buttheirtransformationintoBPELisnotatallstraight-forward.Extendingourprocess-model-to-BPELtransformationtoalargerclassofprocessmodelsresultedinanothermodeltransformation,calledcycleremoval[11,15].Ourteamcontinuestofocusonmodeltransformationsinthecontextofbusiness-drivendevelopment,andwepursueourworktodayintwostrands.
Inonestrand,wedevelopmethodologiesthatunderpinbusiness-drivende-velopmentandmakeitusableinconcretecustomerscenarios.Atthecoreofthesemethodologiesisthedistinctionbetweenfourtypesofprocessmodels:theanalysisanddesignmodels,whichwediscussedintheprevioussection,theusageofreferencemodelsthatdescribebestpracticesforanindustry,andlegacyprocessmodels,i.e.,processmodelsthatmanycustomershavebuilt,butthathaveonlybeenusedindirectlyasinputintoasoftwaredevelopmentprocess.Theinvestmentsintotheselegacymodelsmustbepreserved;how-ever,themodelsmustalsobefurtherenhancedintheirqualitytoserveasstartingpointsforthegenerationofhigh-qualitycodeandarchitecturalsolu-tions.Thisoftenrequirestheirimportintoourowntoolsandarestructuringthatquiteoftenrevealssemanticerrorsthatneedtobecorrected.
ReferencemodelscanhelpinproducingbetterTo-Beanalysismodelsandcanalsoservetoguidetherefinementoftheanalysismodelintothedesignmodelifareferencemodelcontainsnotonlyprocessmodelsbutalsoready-to-useservicecomponentsanddatamodelsasitisforexamplethecasefortheIBMInsuranceApplicationArchitecture[12].Thesystematicusageofrefer-encemodelstoimproveanexistingbusinessprocessisachallengingtaskwhenwethinkbeyondtoyexamples.Itrequiresacomparisonofdifferenttypesofmodelsthatcanbefacilitatedforthehumanexpertbyusinganormal-formrepresentationandcondensedprocessviews.Specifictransformationsofprocessmodelssuchascontrol-flowextraction,whichchangesadata-flowmodelintoacontrol-flowmodel,datacontainerassignment,whichchangesacontrol-flowmodelintoadata-flowmodel,andcycleremovalcanbefullyau-tomated.Othertransformationsthatoftenrequirerefinementandrefactoringstepsofthecurrentmodelmustbedonebytheuser,butcanneverthelessbesupportedbytools.
Theneedtointerleavebottom-upandtop-downstepsinthedevelopmentprocessleadsusdirectlytotheproblemofroundtrippingforbusiness-processmodels.ThetheoreticalboundariesforroundtrippingbetweenBPELandanexpressivebusiness-processmodelinglanguage,forexample,areeasytodetermine.GiventheTuringequivalenceofbothlanguages,itisingeneralundecidablewhetheranarbitrary,e.g.,modified,BPELprogramisequivalenttoagivenbusiness-processmodel.However,incompleteformsofreasoningaboutmodelequivalencemakealotofsenseinmanyscenarios.Forex-ample,itmakessensetoreimportamodifiedBPELintoabusiness-processmodelingtoolandresorttoahumanexperttocompareitwiththeoriginal
8
Koehleretal.
business-processmodelfromwhichitwasgenerated.ThiscanmakeiteasiertocommunicatechangesfromtheITlevelbacktothebusinessandtosupportbottom-upstepsinbusiness-drivendevelopmentthatrequiretheextractionofbusiness-processmodelsfromtheITlevel.
Inourmethodologicalwork,wedevelopdetailedmethodologyguidelinesthatshowhowmanualandautomaticstepsinterleave,whentheyaredoneandwhy.Aspecificinterestofusistheinterleavingofbottom-upandtop-downdevelopmentsteps,i.e.,theproblemofhowbusinessrequirementsflowdownandhowITrequirementsflowup.OneofthemostchallengingandimportanttasksthatneedstotakeplaceatthebusinessandtheITlevelisserviceandprocessidentification—findingtherightgranularityofservicesandthinkingaboutreuseveryearlyinthemodelingandsoftwaredevelopmentprocess.Today,thisstillisaquitepoorlyunderstoodstep,ratherthanawell-understoodandteachableskill.
Ourmethodologiesalsoaddressspecificquestionsthatresultfromtheuseofdifferentformsofmodels.Historically,businessprocesseshavemostlybeenrepresentedbyflowdiagrams.Today,thereisatrendtolinkthemwithbusi-nessobjects[20]andbusinessstatemachines[3].Thesemanticrelationshipbetweenthevariousformsofmodelsandtheirroleinbusiness-levelandpro-grammingmodelsareaveryinterestingandwidefieldforresearch.
Inoursecondstrandofresearch,weinvestigatefundamentalquestionsthatoccurinourmethodologiesandtooling,whichareoftennotspecifictobusiness-processmodels.Manyacademicsolutionshavebeendevelopedtodescribemodeltransformationsdeclaratively,e.g.,[17],buttheindustrialre-alityisusuallyplaincode.Tospeedupandimprovethequalityofourowntransformationdevelopment,wedevelopedamodeltransformationframeworkthatprovidesaconvenientAPItobusiness-processmodelsrepresentedinIBMWebSphereBusinessModelerandasetofelementarytransformationsforreuse.
Thetestingofourtransformationsstillisatedioustask,andcreatinginparticularthetestexamplesisahugeeffort.Theefficientgenerationofmodelinstancesthatcanbeinfluencedbymodeltransformationsisanotherproblemofinteresttous[6].Previousapproacheseitherrelyonexponentialmethods[13]orrequirescriptstobewritten[10].
Ourtransformationsoftencontainmanylinesofcodethatvalidatethesourceandtargetmodelsofthetransformations,i.e.,theycheckwhetherthemodeliseligibleforthetransformationandwhetherthetargetmodelthatwasproducedsatisfiesasetofgivendesignconstraints.Themanagementofthesevalidationanddesignconstraintsatthecodelevelcreatesahugesoftwaremaintenanceproblem,whichisevenaggravatedbythefactthatmodelsevolvefurtherwitheachnewversionofasoftwareproductandthattransformationsmustconsidernumerousdependenciesbetweenmodelsatthebusinessandITlevel[4].
Qualityassuranceformodelsisanotherfundamentalquestionthatisalso
9
Koehleretal.
relatedtothemanagementofdesignconstraintsformodels.Thereseemstobeanintuitivefeelingofwhatconstitutesagoodmodelincontrasttoabadmodel,butsofarnoreallypracticalanduser-friendlysolutionstoimprovethequalityofprocessmodelsbyenforcingdesignconstraintsexist.Similarly,scalable(perhapsincomplete)algorithmstodetecttypicaldesignerrorsinprocessmodelsthatwouldleadtopoorruntimecodearenotyetpartofanybusiness-processmodelingtool.
Wearealsointerestedinalgorithmictechniquesthathelptoimprovethevisualizationoflargeprocessmodelsandthesearchcapabilitiesoftoolstofindmodelsinlargecollections[22].Finally,thesemantics,thedefinitionofnormalforms,andthedevelopmentofalgorithmsandtoolsthatallowustocompareprocessmodelswitheachother(betheygiveninthesameorindifferentmodelinglanguages)arealsoonourresearchagenda.
IBM’spolicyofbasingitsproductsontheopen-sourceEclipseplatformmakesitmucheasierforustoprototypeourtransformationsandtoolsaspluginsthatextendtheseproducts,tocooperatewithotherresearchteams,andtotestoutoursolutionsincustomerengagements.Nevertheless,muchworkremainstobedone.Workingwithmodelsinatoolisstillaheavy-weightundertakingtoday.Forexample,manyofourtransformations,whichphysicallyproduceanewmodel,canbethoughtofasviews,withaviewbeingatransformationthatisnotpersisted[9].However,generatingsuchviewsonmodels,maintainingthemandlettingtheuserfreelydecidewhethertheviewshouldbepersistedasanewmodelorupdateanexistingone,leadstomanytechnicalandtheoreticalchallengessuchasmaintainingtheconsistencyamongseveralrelatedmodels.
Apossiblevisionforthefutureofbusiness-drivendevelopmentcouldbeacompletefusionofprocessmodelandcode,insteadofkeepingphysicallydistinctplatform-independentandplatform-specificmodels.Themodelisthecode,inwhichgraphicalandtextualelementsarecombinedandaninitial(perhapsmostly)graphicalmodelisrefineduntilitbecomesexecutable.Re-finementandabstractionstepswillallowausertomovebetweendifferenteditionsofamodelandwillbesupportedbyquality-ensuringmethods.
4Summary
Thepaperpresentsanoverviewontheparadigmofbusiness-drivendevelop-mentthatcentersaroundbusinessprocessesandaimsatatighteralignmentoftheITinfrastructurewithbusinessneedsandrequirements.Wereviewthemainphasesinabusiness-drivendevelopmentcycleandthenfocusonchal-lengesthatarisefromtheneedtotransformbusiness-processmodelsintoexe-cutableserviceswithinaService-OrientedArchitecture.Wediscussamethod-ologythatdistinguishesbetweentheanalysismodelofabusinessprocessanditscorrespondingdesignmodelanddescribebottom-upandtop-downmodeltransformationsthatwedevelopedtofillgapsinthebusiness-drivendevel-10
Koehleretal.
opmentcycle.Severalopenoronlypartiallysolvedresearchproblemsareidentifiedandpositionedwithinthebusiness-drivendevelopmentparadigm.
References
[1]T.Andrewsetal.Businessprocessexecutionlanguageforwebservices.http://www.ibm.com/developerworks/webservices/library/ws-bpel,2002.[2]BEASystems,IBM,IONA,Oracle,SAPAG,SiebelSystems,andSybase.Servicecomponentarchitecture.http://www.ibm.com/developerworks/library/specification/ws-sca,2005.[3]D.Chappell.Introducingmicrosoftwindowsworkflowfoundation.MSDNLibrary,2005.[4]S.-K.Chen,H.Lei,M.Wahler,H.Chang,K.Bhaskaran,andJ.Frank.AmodeldrivenXMLtransformationframeworkforbusinessperformancemanagement.InProceedingsoftheIEEEConferenceone-BusinessEngineering,pages71–78.IEEEPress,2005.[5]E.Christensen,F.Curbera,G.Meredith,andS.Weerawarana.ThewebservicesdescriptionlanguageWSDL.http://www.ibm.com/software/solutions/webservices/resources.html,2001.[6]K.Ehrig,J.K¨uster,G.Taentzer,andJ.Winkelmann.AutomaticallyGeneratingInstancesofMetaModelsbasedonaGraphGrammarApproach.TechnicalReport2005–09,TechnicalUniversityofBerlin,Dept.ofComputerScience,November2005.[7]T.Erl.Service-OrientedArchitecture:Concept,Technology,andDesign.PrenticeHall,2005.[8]D.Frankel.Model-DrivenArchitecture:ApplyingMDAtoEnterpriseComputing.Wiley,2003.[9]T.Gardner,C.Griffin,J.Koehler,andR.Hauser.AreviewofOMGMOF2.0Query/Views/Transformationssubmissionsandrecommendationstowardsthefinalstandard.MetaModellingforMDAWorkshop,York,England.AlsoavailableasanOMGpositionpaperathttp://www.omg.org/docs/ad/03-08-02.pdf,2003.[10]M.Gogolla,J.Bohling,andM.Richters.ValidatingUMLandOCLmodels
inUSEbyautomaticsnapshotgeneration.SoftwareandSystemsModeling,4(4):386–398,2005.[11]R.HauserandJ.Koehler.Compilingprocessgraphsintoexecutablecode.In
Proceedingsofthe3rdInternationalConferenceonGenerativeProgrammingandComponentEngineering(GPCE-04),volume3286ofLectureNotesinServicesandSoftware,pages317–336.Springer,2004.
11
Koehleretal.
[12]IBMInsuranceApplicationArchitecture.
financialservices/iaa.[13]D.Jacksonetal.
http://alloy.mit.edu.
TheAlloy
http://www.ibm.com/industries/
andanalyzer.
modellinglanguage
[14]J.Koehler,R.Hauser,S.Kapoor,F.Wu,andS.Kumaran.Amodel-driven
transformationmethod.InProceedingsofthe7thConferenceonEnterpriseDistributedObjectComputing(EDOC-03),pages186–197.IEEEPress,2003.[15]J.Koehler,R.Hauser,S.Sendall,andM.Wahler.Declarativetechniquesfor
model-drivenbusinessprocessintegration.IBMSystemsJournal,44(1):47–65,2005.[16]R.Kong.TransformWebSphereBusinessIntegrationModelerprocess
modelstoBPEL.IBMdeveloperWorksarticle,http://http://www.ibm.com/
kong.html,developerworks/websphere/library/techarticles/0504
IBM,2005.[17]J.M.K¨uster.Definitionandvalidationofmodeltransformations.Softwareand
SystemsModeling,2006.inpress.[18]R.Martin.AgileSoftwareDevelopment:Principles,Patterns,andPractices.
PrenticeHall,2002.[19]T.Mitra.Business-drivendevelopment.IBMdeveloperWorksarticle,
http://www.ibm.com/developerworks/webservices/library/ws-bdd,IBM,2005.[20]P.NandiandS.Kumaran.Adaptivebusinessobjects:Anewcomponentmodel
forbusinessintegration.InProceedingsofthe7thInternationalConferenceonEnterpriseInformationSystems,pages179–188,2005.[21]ObjectManagementGroup(OMG).TheUnifiedModelingLanguage2.0,2005.[22]B.Srivastava,J.Vanhatalo,andJ.Koehler.Managingthelifecycleofplans.
InProceedingsofthe17thInnovativeApplicationsofArtificialIntelligenceConference,pages1569–1575.AAAIPress,2005.[23]M.V¨olterandT.Stahl.Model-DrivenSoftwareDevelopment:Technology,
Engineering,Management.Wiley,2006.[24]O.Zimmermann,M.Tomlinson,andS.Peuser.PerspectivesonWebServices
-ApplyingSOAP,WSDLandUDDItoreal-worldprojects.Springer,2003.
12
因篇幅问题不能全部显示,请点此查看更多更全内容