W Schahram Dustdar Fei Li Service Engineering European Research Results SpringerWienNewYork Schahram Dustdar Fei Li Vienna University of Technology Vienna University of Technology Information Systems Institute Information Systems Institute 1040 Wien, Austria 1040 Wien, Austria [email protected] [email protected] This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically those of translation, reprinting, re-use of illustrations, broadcasting, reproduction by photocopying machines or similar means, and storage in data banks. Product Liability: The publisher can give no guarantee for all the information contained in this book. The use of registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. © 2011 Springer-Verlag/Wien Printed in Germany SpringerWienNewYork is a part of Springer Science + Business Media springer.at Typesetting: Camera ready by the authors Printing: Strauss GmbH, Mörlenbach, Germany Printed on acid-free paper SPIN 80014801 With 106 Figures Library of Congress Control Number: 2010935335 ISBN 978-3-7091-0414-9 e-ISBN 978-3-7091-0415-6 DOI 10.1007/978-3-7091-0415-6 SpringerWienNewYork Preface Service-oriented Computing (SOC) is posing increasing challenges to traditional softwareengineeringmethodologiesincludingspecification,modeling,architecture, and verification, just to name a few. On the other hand, the latest advancements in softwareengineeringare continuouslyleveragedin SOCresearch,especiallyin the design and implementation of service-oriented systems. The mutual impacts betweenSOCandsoftwareengineeringhavebeenseeninthelastdecade,andgreat researcheffortshavebeendevotedtothefield.Theseresearcheffortsaregenerally referredtoasServiceEngineering. In Europe, many research projects have been funded to address a large spectrum ofresearchchallengesinserviceengineering.However,inspiteoftheconsiderable effortsandsignificantcontributions,fewhaveattemptedtosummarizetheresearch results systematically. To provide a coherent and consolidated view on the Euro- peancommunityinserviceengineering,theEuropeanCommissionhasestablished acollaborationworkinggrouponServiceEngineering,whichisleadbySchahram Dustdar.Thisbookisajointcontributionofthisworkinggroup. This bookaims at introducingthe state of the art of service engineeringbased on theresearchresultsachievedinEuropeanprojects.Giventhebroadnessofresearch aspectsinSOCandtherichselectionofsoftwareengineeringmethods,acoherent visionofserviceengineeringiscriticaltothereadabilityofthebook.Tothisend,a seriesofusecasesfromthetelecommunicationfield havebeencarefullydesigned and serve as a motivatingcase study for all contributions,which addressdifferent aspectsoftheseusecasesintheirownways.Becauseofthecrosscuttingnatureof theresearchchallenges,classifyingthecontributionsintoseveralthemeswouldonly givereadersan over-simplifiedvisionofthe field. Instead,we employthe S-Cube ConceptualResearchFrameworktoidentifytheresearchdomainsandcross-cutting issuesaddressedbyeachcontribution. Sincetheinitiationofthisbook,somenoticeabletrendsinserviceengineeringhave been observed.In contrastto the varietiesof research problems,two areas in soft- ware engineering emerge to be the main sources of methodologies employed in v vi Preface thisbook:a)Model-drivenEngineeringandb)AdaptiveSoftwareArchitectures.At design-time,Model-drivenEngineeringfacilitatesdifferentphasesofservicedevel- opment. At runtime, with model management systems, models are also exploited forservicecompliancechecking.Intheareaofadaptivesoftwarearchitecture,the keyfeaturesofSOC,suchasloose-coupling,late-binding,servicediscovery,anddy- namic composition,have alreadyensured adaptabilityof service-orientedsystems. Servicesarethemeanstoimplementadaptability,aswellasaresultofpastachieve- mentsinadaptivesoftwarearchitecture. Byextensivelysummarizingthestateoftheartofserviceengineering,thisbookof- fersaviewonhowSOCresearchisinlinewiththelatestdevelopmentofsoftware engineering.OnecanexpectmoreinteractionsbetweenSOCandsoftwareengineer- ingtoenrichserviceengineeringmethodologiesinthefuture. Vienna,August,2010 SchahramDustdar FeiLi Contents 1 DescribingCaseStudiesandClassifyingResearchApproaches ..... 1 AntonioBucchiarone,RamanKazhamiakin,ValentinaMazza,and PierluigiPlebani 2 Model-drivenServiceEngineeringwithSoaML .................. 25 BrianElvesæter,CyrilCarrez,ParastooMohagheghi,Arne-Jørgen Berre,SveinG.JohnsenandArnorSolberg 3 ModellingServiceRequirementsVariability:TheDiVAWay ....... 55 Phil Greenwood, Ruzanna Chitchyan, Dhouha Ayed, Vincent Girard-Reydet,FranckFleurey,VegardDehlenandArnorSolberg 4 Coordination,OrganisationandModel-drivenApproachesfor Dynamic,Flexible,RobustSoftwareandServicesEngineering...... 85 JuanCarlosNieves,JulianPadget,WambertoVasconcelos,Athanasios Staikopoulos,OwenCliffe,FrankDignum,JavierVa´zquez-Salceda, Siobha´nClarke,andChrisReed 5 Model-awareMonitoringofSOAsforCompliance................ 117 Ta’idHolmes,EmmanuelMulo,UweZdun,andSchahramDustdar 6 IntegratingPerfectiveandCorrectiveAdaptationofService-based Applications................................................ 137 AndreasGehlert,AndreasMetzger,DimkaKarastoyanova,Raman Kazhamiakin,KlausPohl,FrankLeymannandMarcoPistore vii viii Contents 7 Combining Domain-driven Design and Mashups for Service Development ............................................... 171 CarlosA.Iglesias,Jose´ I.Ferna´ndez-Villamor,DaviddelPozo,Luca GarulliandBoniGarc´ıa 8 GuidanceinBusinessProcessModelling ........................ 201 AndreasBartho,GerdGro¨ner,TirdadRahmani,YutingZhaoandSrdjan Zivkovic 9 AdaptiveServiceBindingwithLightweightSemanticWebServices . 233 CarlosPedrinaci,DaveLambert,MariaMaleshkova,DongLiu,John Domingue,andRetoKrummenacher 10 Designing and Adapting Service-based Systems: A Service DiscoveryFramework ....................................... 261 GeorgeSpanoudakisandAndreaZisman 11 VRESCo – ViennaRuntime EnvironmentforService-oriented Computing................................................. 299 Waldemar Hummer, Philipp Leitner, Anton Michlmayr, Florian Rosenberg,andSchahramDustdar Glossary ..........................................................325 Index ............................................................. 337 Acronyms A@P Attribute-orientedProgramming AgWS AgentifiedServices AO Aspect-orientedtheencapsulationofcrosscuttingconcerns. AOM Aspect-orientedModeling AOSD Aspect-orientedSoftwareDevelopment API ApplicationProgrammingInterface ASR AutomaticSpeechRecognition BAM BusinessArchitectureModel BI BusinessIntelligence BMM BusinessMotivationModel BPEL BusinessProcessExecutionLanguage BPEL4SWS BusinessProcessExecutionLanguageforSemanticWebServices BPM BusinessProcessManagement BPMN BusinessProcessModelingNotation CD ContextDiagram CEP ComplexEventProcessing CIM Computationalindependentmodel CPO CellPhoneOperator CRM CustomerRelationshipManagement ASM AbstractStateMachines CWA ClosedWorldAssumption DBMS DataBaseManagementSystem DDD DomainDrivenDesign ix x Acronyms DSPL DynamicSoftwareProductLine ECA EventConditionAction EPC Event-drivenProcessChain EPF EclipseProcessFramework EPL EventProcessingLanguage ERP EnterpriseRessourcePlanning ESB EnterpriseServiceBus GReQL GraphRepositoryQueryLanguage IM InstantMessaging IDE IntegratedDevelopmentEnvironment IOPE Inputs,OutputsPreconditionsandEffects(IOPE) IRF IntegratedResearchFramework JDO JavaDataObjects JEE JavaEnterpriseEdition JMX JavaManagementExtensions JSP JavaServerPages LSA LatentSemanticAnalysis M2M Modeltomodel M2T Modeltotext MAS Multi-agentsystem MDA Model-drivenArchitecture MDD Model-drivenDevelopment MDE Model-drivenEngineering MDSD Model-drivenSoftwareDevelopment MDSE Model-drivenserviceengineering MicroWSMO MicroWebServiceModelingOntology MORSE Model-awareRepositoryandServiceEnvironment MPSP MobilePhoneServicePortability MSOAM MainstreamSOAMethodology MVC Model-View-Controller NLP NaturalLanguageProcessing OMG ObjectManagementGroup OOAD Object-orientedAnalysisandDesign