Studies in Computational Intelligence 499 Stanisław Ambroszkiewicz Jerzy Brzeziński Wojciech Cellary Adam Grzech Krzysztof Zieliński (Eds.) Advanced SOA Tools and Applications Studies in Computational Intelligence Volume 499 Series Editor J. Kacprzyk, Warsaw, Poland For furthervolumes: http://www.springer.com/series/7092 Stanisław Ambroszkiewicz Jerzy Brzezin´ski Wojciech Cellary • Adam Grzech Krzysztof Zielin´ski • Editors Advanced SOA Tools and Applications 123 Editors Stanisław Ambroszkiewicz Adam Grzech Instituteof Computer Science Division ofTeleinformatics PolishAcademy ofSciences Instituteof Informatics Warsaw Wrocław University ofTechnology Poland Wrocław Poland Jerzy Brzezin´ski Instituteof ComputingScience Krzysztof Zielin´ski Poznan´ Universityof Technology Department of Computer Science Poznan´ AGH Universityof Science Poland and Technology Cracow Wojciech Cellary Poland Department of InformationTechnology Poznan´ Universityof Economics Poznan´ Poland ISSN 1860-949X ISSN 1860-9503 (electronic) ISBN 978-3-642-38956-6 ISBN 978-3-642-38957-3 (eBook) DOI 10.1007/978-3-642-38957-3 SpringerHeidelbergNewYorkDordrechtLondon LibraryofCongressControlNumber:2013947346 (cid:2)Springer-VerlagBerlinHeidelberg2014 Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpartof the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,broadcasting,reproductiononmicrofilmsorinanyotherphysicalway,andtransmissionor informationstorageandretrieval,electronicadaptation,computersoftware,orbysimilarordissimilar methodology now known or hereafter developed. Exempted from this legal reservation are brief excerpts in connection with reviews or scholarly analysis or material supplied specifically for the purposeofbeingenteredandexecutedonacomputersystem,forexclusiveusebythepurchaserofthe work. Duplication of this publication or parts thereof is permitted only under the provisions of theCopyright Law of the Publisher’s location, in its current version, and permission for use must always be obtained from Springer. Permissions for use may be obtained through RightsLink at the CopyrightClearanceCenter.ViolationsareliabletoprosecutionundertherespectiveCopyrightLaw. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publicationdoesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexempt fromtherelevantprotectivelawsandregulationsandthereforefreeforgeneraluse. While the advice and information in this book are believed to be true and accurate at the date of publication,neithertheauthorsnortheeditorsnorthepublishercanacceptanylegalresponsibilityfor anyerrorsoromissionsthatmaybemade.Thepublishermakesnowarranty,expressorimplied,with respecttothematerialcontainedherein. Printedonacid-freepaper SpringerispartofSpringerScience+BusinessMedia(www.springer.com) Preface Themainpurposeofthisbookistopresentadvancedsoftwaredevelopmenttools for construction, deployment, and governance of SOA applications. Novel tech- nical concepts and paradigms, formulated during the research stage and during development of such tools, are presented and illustrated by practical usage examples.Hence, the book shouldbe ofinterest notonly totheoreticiansbutalso toengineerswhocopewithreal-lifeproblems.Additionally,eachchaptercontains an overview of related work, enabling comparison of the proposed concepts with exiting solutions in various areas of the SOA development process. This should make the book interesting for students and scientists who investigate similar issues. Thebookconsistsofanintroductionandfivechaptersaddressingthefollowing topics: • Specification and Deployment of Business SOA Applications within a Configurable Framework Provided as a Service. This chapter introduces the main components and features of an integrated framework supporting business processes in a distributed ICT environment based on the Service-Oriented Architecture (SOA) paradigm. The framework’s features are divided into areas that span the whole life cycle of business-oriented ICT applications. The fra- mework provides applications and tools for business requirement analysis and comparison,selectionandcompositionofservices,efficientcommunicationand provisioning of computational resources, allocation of distributed, virtualized environments,aswellasmonitoringandmanagementofresourceutilizationand quality of service indicators. • Platform for Development of Electronic Markets of Sophisticated Business Services. A general architecture of a platform which enables development of electronic markets of sophisticated business services is proposed. The platform consistsofthefollowingelements:(i)ServiceBroker,(ii)ServiceRegistry,(iii) Quote Agents, (iv) Interface Repository, (v) Service servers, (vi) Planner and Task Manager, (vii) User interface, and (vii) Transaction Coordinator. • Applying the Service-Oriented Architecture at the Inter-Organizational LevelandforAutomationofAdministrativeProcedures.Thischapterintro- duces a multilevel SOA architecture, describing its core principles, technical layers,andindividuallevels(knownastheTeamLevelandtheInterorganizational v vi Preface Level).Anapproachtoautomationofadministrativeproceduresisalsopresented alongwithrelevantmodels.Thetraditionalapproachtomodelingandexecutionof administrative procedures is contrasted with dynamic composition. The applic- ability of the proposed concepts is studied in the context of a real-world SOA applicationfromtheconstructiondomain. • Dependability Infrastructure for SOA Applications. The basic services whichcompriseadependabilityinfrastructurearepresented(thisincludesgroup communication, replication, and recovery). Management aspects of SOA dependability infrastructures, including self-configuration and knowledge repository, are investigated. Security problems are also addressed and support forsecuritypolicydeploymentintheformoftheORCAframeworkisproposed. The applicability of all these concepts is analyzed in the context of the Healthcare Integration Platform and the Medical Event and Data Registration Platform. • Implementation, Deployment, and Governance of Adaptive SOA Systems. The goal of this chapter is to propose a pragmatic methodology for adding and managingadaptabilityinmultiplelayersoftheS3stack,andtopresenttheAS3 Studiopackage,whichisacompletesuiteoftoolssupportingextensionsofSOA systems with adaptability features. The adaptability aspects presented in this chapterareplacedinabroadercontextinordertoaddressawiderangeofSOA applications composed of software services (also known as Virtual Services) and hardware components (called Real-World Services). Contents 1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Stanisław Ambroszkiewicz, Jerzy Brzezin´ski, Wojciech Cellary, Adam Grzech and Krzysztof Zielin´ski 2 Specifications and Deployment of SOA Business Applications Within a Configurable Framework Provided as a Service . . . . . . . 7 Adam Grzech, Krzysztof Juszczyszyn, Grzegorz Kołaczek, Jan Kwiatkowski, Janusz Sobecki, Paweł S´wia¸tek and Adam Wasilewski 3 A Platform for Development of Electronic Markets of Sophisticated Business Services. . . . . . . . . . . . . . . . . . . . . . . . . 73 Stanisław Ambroszkiewicz, Anna Ambroszkiewicz, Waldemar Bartyna, Mirosław Baran´ski, Marek Faderewski, Piotr Kulma, Dariusz Mikułowski, Marek Pilski, Andrzej Ryz_ko, Marcin Ste¸pniak, Grzegorz Terlikowski and Iosif Vojteshenko 4 Application of the Service-Oriented Architecture at the Inter-Organizational Level . . . . . . . . . . . . . . . . . . . . . . . . . 125 Willy Picard, Zbigniew Paszkiewicz, Sergiusz Strykowski, Rafał Wojciechowski and Wojciech Cellary 5 Dependability Infrastructure for SOA Applications. . . . . . . . . . . . 203 Jerzy Brzezin´ski, Dariusz Dwornikowski, Anna Kobusin´ska, Jacek Kobusin´ski, Michał Sajkowski, Cezary Sobaniec, Michał Szychowiak, Dariusz Wawrzyniak and Paweł T. Wojciechowski 6 Implementation, Deployment and Governance of SOA Adaptive Systems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 R. Brzoza-Woch, Ł. Czekierda, J. Długopolski, P. Nawrocki, M. Psiuk, T. Szydło, W. Zaborowski, K. Zielin´ski and D. Z_muda vii Chapter 1 Introduction StanisławAmbroszkiewicz,JerzyBrzezin´ski,WojciechCellary, AdamGrzechandKrzysztofZielin´ski Abstract Themainpurposeofthisbookistopresentadvancedsoftwaretoolsfor development,deploymentandgovernanceofServiceOrientedArchitecture(SOA, forshort)applications.Noveltechnicalconceptsandparadigms,formulatedduring the research stage and during the development of such tools, are presented and illustrated by examples of practical use. Hence, the book should be of interest not onlytotheoreticiansbutalsotopractitionersandengineerswhocopewithreal-life problems.Additionally,eachchaptercontainsanoverviewofrelatedwork,enabling acomparisonoftheproposedconceptswithexitingsolutionsinvariousareasofthe SOAdevelopmentprocess.Thisshouldmakethebookinterestingforstudentsand scientistswhoinvestigatesimilarissues. B S.Ambroszkiewicz( ) InstituteofComputerScience,PolishAcademyofSciences,ul.JanaKazimierza5,01-248 Warsaw,Poland e-mail:[email protected] J.Brzezin´ski InstituteofComputingScience,PoznanUniversityofTechnology,pl.M.Skłodowskiej-Curie, 60-965Poznan,Poland e-mail:[email protected] W.Cellary DepartmentofInformationTechnology,FacultyofInformaticsande-EconomyPoznan UniversityofEconomics,Ul.Mansfelda4,60-854Poznan,Poland e-mail:[email protected] A.Grzech DivisionofTeleinformatics,FacultyofComputerScienceandManagement,Instituteof Informatics,WrocławUniversityofTechnology,ul.Łukasiewicza5,50-371Wrocław,Poland e-mail:[email protected] K.Zielin´ski DepartmentofComputerScience,AGHUniversityofScienceandTechnology,Al.Mickiewicza 30,30-059Cracow,Poland e-mail:[email protected] S.Ambroszkiewiczetal.(eds.),AdvancedSOAToolsandApplications, 1 StudiesinComputationalIntelligence499,DOI:10.1007/978-3-642-38957-3_1, ©Springer-VerlagBerlinHeidelberg2014 2 S.Ambroszkiewiczetal. The main purpose of this book is to present advanced software tools for devel- opment, deployment and governance of Service Oriented Architecture (SOA, for short)applications.Noveltechnicalconceptsandparadigms,formulatedduringthe research stage and during the development of such tools, are presented and illus- tratedbyexamplesofpracticaluse.Hence,thebookshouldbeofinterestnotonly totheoreticiansbutalsotopractitionersandengineerswhocopewithreal-lifeprob- lems. Additionally, each chapter contains an overview of related work, enabling a comparisonoftheproposedconceptswithexitingsolutionsinvariousareasofthe SOAdevelopmentprocess.Thisshouldmakethebookinterestingforstudentsand scientistswhoinvestigatesimilarissues. Thebookconsistsoffivechapters.Eachchapterisself-containedandcanberead separatelybutthechosenorderguidesthereaderfromabstract,high-levelconcepts totechnicalandimplementation-orienteddiscussions. InChap.1theconceptofdevelopmentandmanagementofSOA-basedapplica- tionswithinaconfigurableserviceplatformispresented.Allcomponentsofthemod- ularandreconfigurableplatformareimplementedasservices,enablingexploitation oftheSOAparadigmforconfigurationandmanagementpurposes.Theframeworkis dividedintofeatureswhichcovertheentirelifecycleofbusiness-orientedICT(Infor- mationandCommunicationTechnology)applicationdevelopment.Applicationsare responsibleforbusinessrequirementanalysisandcomparison,selectionandcompo- sitionofservices,efficientcommunicationandcomputationalresourceprovisioning aswellasallocationinadistributed,virtualizedenvironment.Topicssuchasopti- malresourceutilization,monitoringandmanagementarealsoaddressed.Theunique features of the platform include: business process compatibility, easy reconfigura- tionofcompositionschemes,visualsupportforrequirementsandservicedefinition, QoS (Quality of Service) assessment (including communication services) and ser- viceexecutioncontrol.Moreover,thischaptershowshowtodevelopeffectivetools forSOAmanagementandhowtheSOAparadigmmaybeappliedtoachievebetter interoperabilityandflexibility. The presented framework covers service request processing, from arrival of a request all the way to completion and evaluation of the requested task. The plat- form’s building blocks (modules) assure service request processing, composition of services (taking into account their functional and non-functional requirements), efficientprovisioningofcommunicationandcomputationalresources,executionof servicesinavirtualdistributedenvironmentandtheevaluationofthequalityofcom- posite services. All of the aforementioned modules can be applied as independent dataprocessingunitsorasaggregationsofsuchunits,supportingspecificareasof the requirements and service-matching processes for any given business scenario supportedbySOA-basedorlegacyinformationsystems.Allapplicationswithinthe platform are designed and implemented as open, modular, scalable, and heteroge- neouscomponents(services),integratedinaccordancewithSOAprinciples.Suchan approachallowsforintegrationofselectedapplicationstosupportvariousdecision- makingprocesses. The main contribution of this chapter is a novel approach to service selection, composition and execution. First, the basics of the business process description in 1 Introduction 3 thecontextofservicesareexplainedandanoriginalnotationisproposedtosupport service-oriented process description and SLA (Service Level Agreement) genera- tion.Subsequently,flexibleandadaptivecompositionandprovisioningofcomposite services within the original architecture is presented, allowing the use of various communication and computational services by domain-oriented services. A scal- able service execution environment, including an original service-based execution engine,isdiscussed.ServicevalidationwithinthelayeredmodelofSOAgovernance isaddressed,alongwithamethodforcompositeservicesecurityassessment.Finally, an approach to automatic generation of user interfaces for semantically-described compositeservicesisconsidered. Adifferentapproachtoautomationofsophisticatedbusinessprocessesispresented inChap.2.Itisbased ontheidea thatautomation can beperformediftheprocess of using a single business service is automated first. Four basic phases of using a businessserviceareidentifiedinthiscontext:(1)theclientsendsaquerytotheser- viceproviderandobtainsaquote;(2)anorderisplacedandacontractmade;(3)the serviceexecutesinaccordancewiththecontract;(4)paymentiseffected(thismay occasionallyprecedestep3).Thesephasesareinterrelated,sothatifthefirstphase (query-quote)canberealizedinanuniversalway,thenthewholeprocesscanbeauto- mated.Forthispurposearepresentationoftheserviceenvironment(XSDschemata ofdocumentsprocessedbyservices)isproposedasasemanticmodel(grounding) foradescriptionlanguagewhichcanbeappliedinthefirstphase,matchingservice performancewithclientrequirements. Theauthorsalsoproposeasetofextensionsforthebusinessservicearchitecture related to Web services and the Semantic Web. Within this architecture there are two methods of communication. The first method, used in the query-quote phase, consistsofexchangingmessagescontainingformulasinadescriptionlanguage.The secondmodeofcommunicationinvolvesdocumentprocessingusingWSDLandis appliedduringtheorder-contract,execution,andpaymentphases.Theconceptofa businessserviceandtheautomationofthequery-quotephaseenableautomationof thewholesophisticatedbusinessprocesses,involvingmanyservices. Theproposedtechnologyisspecifiedintheformofprotocols.Thecorrespond- ingprototype(acommunicationplatformfordevelopingelectronicmarkets,called SOA-enT) is generic and may be applied to any application domain if appropriate XSDschemata(relatedtotheproblemdomain)areintroducedintothesystem. Thepresentedtechnologyisofparticularuseinelectronicmarkets,duetothefact thatsuchmarketsextensivelyrelyonautomationofsophisticatedbusinessprocesses comprisingmanyservices.Automationshouldinvolvenotonlyservicepublication anddiscoverybutalsoautomaticplanning,arrangementandexecutionofcomplex andtime-consumingbusinessprocesses.Althoughmuchworkhasbeendoneonthis frontsince2000,theproblemofautomaticservicecompositionremainsachallenge. It should be noted that while electronic markets for consumer products are rel- atively well developed, the corresponding service markets are often restricted and focus on simple services provided on a mass scale. The main problem here is that offers and commissions are to be specified in a plain language, implying that the descriptionsofservicesrelatedtotheseoffersareimpreciseandnotformalenough