Abstract
Nowadays, Web services allow interoperability among distributed software applications deployed on different platforms and architectures which in effect plays a major role in electronic businesses. Web services allow organizations to carry out certain business activities automatically and in a distributed fashion. However, in some circumstances, a single service is not able to perform a certain task and it becomes imperative to compose two or more services in order to complete it. Thus, a key research challenge in this field is the problem of automatic service composition. Several approaches exist that tackle the problem of automatic service composition, however, the task of generating provably correct Web service compositions still remains a challenging and complex task. In this paper, we develop a formal framework for modeling Web service compositions based on Supervisory Control Theory (SCT) of discrete-event systems. We model services that exchange messages and exhibit nondeterministic behaviours. The objective is to synthesize a supervisor which interacts with a given set of Web services through messages to guarantee that a given specification is satisfied. A key novelty of this work is the application of control theory to service-oriented computing and the incorporation of run-time input into the supervisor generation process. First, we describe a novel supervisory control framework for automated composition of Web services. The framework employs Labelled Transition Systems equipped with guards and data variables to model Web services and provides a technique to synthesize a controller. We model the interactions of services asynchronously and we use the guards and data variables to allow us to express certain preconditions which are then propagated from the system requirements through the overall composite service. Second, we develop a set of algorithms to generate a controller satisfying a given functional requirement also specified as a Labelled Transition System equipped with guards and data variables. Besides the standard disabling and enabling of events, the generated controller in our framework has the ability to enforce certain events based on run-time information to drive the system towards its goal. In addition, the controller is able to impose restrictions on the kind of data that can be sent or received by services. This includes the automatic generation of stronger guards or preconditions which impose restrictions on which path to take during execution. Lastly, we state a theorem capturing the existence of a controller and provide a proof to demonstrate the correctness of the proposed approach.
Similar content being viewed by others
References
Abdullah A, Xining l (2013) An efficient I/O based clustering HTN in web service composition. In: International conference on computing, management and telecommunications (ComManTel), Ho Chi Minh City, pp 252–257
Alves A, Arkin A, Askary S, Barreto C, Bloch B, Curbera F, Ford M, Goland Y, Guizar A, Kartha N, Kevin CL, Khalaf R, König D, Marin M, Mehta V, Thatte S, Rijn D, Yendluri P, Yiu A (2007) Web services business process execution language version 2.0, OASIS Standard. http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html. [Online; accessed 10 Mar 2017]
Andrews T, Curbera F, Dholakia H, Goland Y, Klein J, Leymann F, Liu K, Roller D, Smith D, Thatte S, Trickovic I, Weerawarana S (2003) Business process execution language for web services version 1.1. http://msdn.microsoft.com/en-us/library/ee251594(v=bts.10).aspx#feedback. [Online; accessed 10 Mar 2017]
Atampore F (2017) Towards provably correct services: automated service composition via supervisory control synthesis. Ph.D. thesis, School of Computing, Queen’s University, Ontario
Atampore F, Dingel J, Rudie K (2016) A controller synthesis framework for automated service composition. Tech. Rep. 2016-630, School of Computing, Queen’s University, Kingston, Ontario, Canada. http://sites.cs.queensu.ca/tr/
Auer A, Dingel J, Rudie K (2014) Concurrency control generation for dynamic threads using discrete-event systems. Sci Comput Program 82:22–43
Balbiani P, Cheikh F, Feuillade G (2008) Composition of interactive web services based on controller synthesis. In: IEEE Congress on services - Part I. IEEE Computer Society, pp 521–528
Bartalos P, Bieliková M (2011) Automatic dynamic web service composition: a survey and problem formalization. Comput Inform 30(4):793–827
Berardi D, Calvanese D, De Giacomo G, Hull R, Lenzerini M, Mecella M (2005a) Modeling data & processes for service specifications in Colombo. In: Proceedings of the open interop workshop on enterprise modeling and ontologies for interoperability (EMOI-INTEROP’05) co-located with CAiSE’05 conference. Portugal
Berardi D, Calvanese D, De Giacomo G, Hull R, Mecella M (2005b) Automatic composition of web services in Colombo. In: Proceedings of the thirteenth Italian symposium on advanced database systems, (SEBD). Brixen-Bressanone (near Bozen-Bolzano), Italy, pp 8–15
Berardi D, Calvanese D, De Giacomo G, Hull R, Mecella M (2005c) Automatic service composition based on behavioural descriptions. Int J Coop Informa Syst 14(4):333–376
Berardi D, Cheikh F, Giuseppe GD, Patrizi F (2008) Automatic service composition via simulation. Int J Found Comput Sci 19(2):429–451
Bertoli P, Pistore M, Traverso P (2010) Automated composition of web services via planning in asynchronous domains. Artif Intell: Int J 174(3–4):316–361
Brand D, Zafiropulo P (1983) On communicating finite-state machines. J ACM 30(2):323–342. https://doi.org/10.1145/322374.322380
Bucchiarone A, de Sanctis M, Pistore M (2014) Domain objects for dynamic and incremental service composition. In: Service-oriented and cloud computing - third European conference, ESOCC, Manchester, pp 62–80
Cassandras C, Lafortune S (2008) Introduction to discrete-event systems, 2nd edn. Springer, US
Christensen E, Curbera F, Meredith G, Weerawarana S (2001) Web services description language (WSDL), Version 1.1. http://www.w3.org/TR/wsdl. [Online; accessed 6-Jan-2017]
Crasso M, Rodríguez JM, Zunino A, Campo M (2010) Revising WSDL documents: why and how. Internet Comput IEEE 14(5):48–56
Diekmann R, Weidemann D (2013) Event enforcement in the context of the supervisory control theory, Miȩdzyzdroje, Poland
Domain WUW (2017) XML schema. https://www.w3.org/XML/Schema. [Online; Accessed 20 Aug 2017]
Dragert C, Dingel J, Rudie K (2008) Generation of concurrency control code using discrete-event systems theory. In: Proceedings of the 16th ACM international symposium on foundations of software engineering (SIGSOFT), vol FSE-16. ACM, New York, pp 146–157
Erl T (2004) Service-oriented architecture: a field guide to integrating XML and web services. Prentice Hall, New Jersey
Fabian M, Lennartson B (1996) On non-deterministic supervisory control. In: Proceedings of the 35th IEEE conference on decision and control, vol 2. IEEE, Kobe, pp 2213–2218
Fayyad M, Kamel A, Salah A (2015) ACUAI framework for automatic composition of web services using gaming AI. In: Fifth international conference on digital information and communication technology and its applications (DICTAP). Lebanese University, Lebanon, pp 1–6
Ferrein A, Schiffer S, Lakemeyer G (2009) Embedding fuzzy controllers in golog. In: IEEE International conference on fuzzy systems, FUZZ-IEEE’09. IEEE, Jeju Island, pp 894–899
Fu X, Bultan T, Suc JJ (2004) Analysis of interacting BPEL web services. In: Proceedings of the 13th international conference on world wide web, (WWW ’04). ACM, New York, pp 621–630, DOI https://doi.org/10.1145/988672.988756, (to appear in print)
Gall TL, Jeannet B, Marchand H (2005) Supervisory control of infinite symbolic systems using abstract interpretation. In: Proceedings of the 44th IEEE conference on decision and control and european control conference (CDC-ECC ’05). IEEE Control Systems Society, Melia Sevilla, pp 30–35
Gudgin M, Hadley M, Mendelsohn N, Moreau J, Nielsen HF, Karmarkar A, Lafon Y (2007) Simple object access protocol, Version 1.1. http://www.w3.org/TR/soap/. [Online; accessed 20 Aug 2017]
Hatzi O, Nikolaidou M, Vrakas D, Bassiliades N, Anagnostopoulos D, Vlahavas I (2015) Semantically aware web service composition through AI planning. Int J Artif Intell Tools 24(01):1450,015. https://doi.org/10.1142/S0218213014500158. http://www.worldscientific.com/doi/abs/10.1142/S0218213014500158
Hoffmann J, Bertoli P, Helmert M, Pistore M (2014) Message-based web service composition, integrity constraints, and planning under uncertainty: a new connection. Computing Research Repository, arXiv:1401.3470
Honda K, Tokoro M (1991) An object calculus for asynchronous communication. In: Proceedings of the European conference on object-oriented programming (ECOOP), LNCS 512. Springer, Geneva, pp 133–147
Jingjing H, Wei Z, Pesic M, Xing Z, Dongfeng Z (2014) Web service composition automation based on timed automata. Appl Math Inf Sci: Int J 8 (4):2017–2024
Kazhamiakin R, Marconi A, Pistore M, Raik H (2013) Data-flow requirements for dynamic service composition. In: Proceedings of the IEEE 20th international conference on web services. IEEE, Santa Clara, pp 243–250
Khoumsi A (2013) A simple formal method to synthesize an orchestrator in web service composition. In: American control conference (ACC). USA, Washington, DC, pp 107–112
Klusch M, Gerber A (2005) Semantic web service composition planning with OWLS-XPlan. In: Proceedings of the 1st international association for the advancement of artificial intelligence (AAAI) fall symposium on agents and the semantic web, Technical Report FS-05-01. AAAI Press, Arlington, pp 55–62
Kumar R, Garg V, Marcus SI (1993) Predicates and predicate transformers for supervisory control of discrete event dynamical systems. IEEE Trans Autom Control 38(2):232–247
Marconi A, Pistore M, Traverso P (2008) Automated composition of web services: the ASTRO approach. IEEE Data Eng Bull Issues 31(3):23–26
McIlraith SA, Son TC (2002) Adapting golog for composition of semantic web services. In: Fensel D, Giunchiglia F, McGuinness DL, Williams MA (eds) Proceedings of the eights international conference on principles and knowledge representation and reasoning (KR-02). Morgan Kaufmann, Toulouse, pp 482–496
Milner R (1989) Communication and concurrency. Prentice Hall International, Upper Saddle River
Miremadi S, Åkesson K, Lennartson B (2008) Extraction and representation of a supervisor using guards in extended finite automata. In: Proceedings of the 9th international workshop on discrete event systems, (WODES 08). IEEE, Gothenburg, pp 193–199
Na-Lumpoon P, Fauvet MC, Lbath A (2014) Toward a framework for automated service composition and execution. In: 8th International conference on software, knowledge, information management and applications (SKIMA). Kathmandu, Nepal, pp 1–8
Nath K, Dhar S, Basishtha S (2014) Web 1.0 to web 3.0 - evolution of the web and its various challenges. In: International conference on optimization, reliabilty, and information technology (ICROIT). IEEE, Faridabad, pp 86–89
Nau D, Au T, Ilghami O, Kuter U, Murdock JW, Wu D, Yaman F (2003) SHOP2: an HTN planning system. J Artif Intell Res 20(1):379–404
Niewiadomski A, Penczek W, Skaruz J (2014) A hybrid approach to web service composition problem in the planICS framework. In: Irfan A, Muhammad Y, Xavier F, Carme Q (eds) Mobile web information systems, lecture notes in computer science, vol 8640. Springer International Publishing, pp 17–28
Papazoglou MP, Traverso P, Dustdar D, Leymann F (2007) Service-oriented computing: state of the art and research challenges. IEEE Comput 40(11):38–45
Pathak J, Basu S, Lutz RR, Honavar V (2008) MOSCOE: an approach for composing web services through iterative reformulation of functional specifications. Int J Artif Intell Tools 17(1):109–138
Peer J (2005) A POP-based replanning agent for automatic web service composition. In: Proceedings of the second european conference on the semantic web: research and applications, ESWC’05. Springer, Berlin, pp 47–61
Pistore M, Marconi A, Bertoli P, Traverso P (2005a) Automated composition of web services by planning at the knowledge level. In: Proceedings of the nineteenth international joint conference on artificial intelligence. Professional Book Center, Edinburgh, pp 1252–1259
Pistore M, Traverso P, Bertoli P, Marconi A (2005b) Automated synthesis of composite BPEL4WS web services. In: Proceedings of the IEEE international conference on web services (ICWS’05). IEEE Computer Society, Orlando, pp 293–301
Portchelvi V, Venkatesan VP (2015) A goal-directed orchestration approach for agile service composition. Int J Inf Technol Comput Sci (IJITCS) 7(3):60–67
Raik H, Bucchiarone H, Khurshid N, Marconi A, Pistore M (2012) ASTRO-CAptEvo: dynamic context-aware adaptation for service-based systems. In: Proceedings of the IEEE Eighth World congress on services, SERVICES ’12. IEEE Computer Society, Washington, DC, pp 385–392
Ramadge PJ, Wonham WM (1987) Supervisory control of a class of discrete event processes. SIAM J Control Optim (SICON) 25(1):206–230. https://doi.org/10.1137/0325013
Rao J, Dimitrov D, Hofmann P, Sadeh NM (2006) A mixed initiative approach to semantic web service discovery and composition: SAP’s guided procedures framework. In: IEEE International conference on web services (ICWS’06). IEEE Computer Society, Chicago, pp 401–410
Rodríguez G, Soria A, Campo M (2016) Artificial intelligence in service-oriented software design. Eng Appl Artif Intell 53:86–104. http://www.sciencedirect.com/science/article/pii/S0952197616300677
Rodriguez-Mier P, Mucientes M, Lama M (2011) Automatic web service composition with a heuristic-based search algorithm. In: IEEE International conference on web services (ICWS). USA, Washington DC, pp 81–88
Silva FO, Rosa PF (2006) The quest for the web services stack: a fast trip. In: Proceedings of the 6th international conference on web engineering, ICWE ’06. ACM, New York, pp 93–94
Sirin E, Parsia B, Wu D, Hendler J, Nau D (2004) HTN planning for web service composition using SHOP2. Web Sem: Sci Services Agents World Wide Web 1(4):377–396. International Semantic Web Conference 2003
Skogan D, Grønmo R, Solheim I (2004) Web service composition in UML. In: Proceedings of the eighth IEEE international enterprise distributed object computing conference, EDOC ’04. IEEE Computer Society, Washington, DC, pp 47–57
Sohrabi S, McIlraith SA (2009) Optimizing web service composition while enforcing regulations. In: Proceedings of the 8th international semantic web conference, ISWC ’09. Springer, Berlin, pp 601–617, DOI https://doi.org/10.1007/978-3-642-04930-9_38, (to appear in print)
Teixeira M, Malik R, Cury J, de Queiroz M (2015) Supervisory control of DES with extended finite-state machines and variable abstraction. IEEE Trans Autom Control 60(1):118–129
Wang Y, Nazeem A (2011) Artifact-centric business process synthesis framework using discrete event systems theory. Tech. rep., HP Laboratories
Wang Y, Lafortune S, Kelly T, Kudlur M, Mahlke S (2009) The theory of deadlock avoidance via discrete control. In: Proceedings of the 36th annual SIGPLAN-SIGACT symposium on principles of programming languages (POPL’09), New York, pp 252–263
Wang Y, Cho H, Liao H, Nazeem A, Kelly T, Lafortune S, Mahlke S, Reveliotis S (2010) Supervisory control of software execution for failure avoidance: experience from the Gadara project. In: Raisch J, Giua A, Lafortune S, Moor T (eds) Proceedings of the international workshop on discrete event systems (WODES’10), vol 43. International Federation of Automatic Control, Technische Universität, Berlin, pp 259–266
Wang P, Ding Z, Jiang C, Zhou M (2014) Automated web service composition supporting conditional branch structures. Enterprise Inf Syst 8(1):121–146. https://doi.org/10.1080/17517575.2011.584132
Wonham WM, Cai K (2019) Supervisory control of discrete-event systems. Springer International Publishing, pp XX–489
Wonham WM, Ramadge PJ (1987) On the supremal controllable sublanguage of a given language. SIAM J Control Optim 25(3):637–659
Wu Z, Ranabahu A, Gomadam K, Sheth AP, Miller JA (2007) Automatic composition of semantic web services using process and data mediation. Technical report, Kno.e.sis Center, Wright State University, Dayton, Ohio USA
Yang J, Zhou X, Wang J, Zhu X (2014) A novel method for web service composition based on extended BDI. In: IEEE 11th International conference on networking, sensing and control, (ICNSC’14). IEEE, Miami, pp 310–315, DOI https://doi.org/10.1109/ICNSC.2014.6819644, (to appear in print)
Zafiropulo P, West C, Rudin H, Cowan D, Brand D (1980) Towards analyzing and synthesizing protocols. IEEE Trans Commun 28(4):651–661
Zhong N, Chen J, Ma J, Yao Y, Liu J, Huang R, Li W, Huang Z, Gao Y, Cao J (2014) WaaS-wisdom as a service. Intell Syst IEEE PP(99):1–1. https://doi.org/10.1109/MIS.2014.19
Zhou C, Kumar R (2007) Control of nondeterministic discrete-event systems for simulation equivalence. IEEE Trans Autom Sci Eng 4(3):340–349
Zou G, Lu Q, Chen Y, Huang R, Xu Y, Xiang Y (2014) QoS-aware dynamic composition of web services using numerical temporal planning. IEEE Trans Serv Comput 7(1):18–31
Acknowledgments
We are grateful to the anonymous reviewers of the original version of this paper. Their comments significantly improved our approach.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Atampore, F., Dingel, J. & Rudie, K. A controller synthesis framework for automated service composition. Discrete Event Dyn Syst 29, 297–365 (2019). https://doi.org/10.1007/s10626-019-00282-0
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10626-019-00282-0