Discrete Event Dynamic Systems

, Volume 29, Issue 3, pp 297–365 | Cite as

A controller synthesis framework for automated service composition

  • Francis AtamporeEmail author
  • Juergen Dingel
  • Karen Rudie


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.


Automatic service composition Supervisory control theory Controller synthesis Web services Discrete event systems Labelled transition systems 



We are grateful to the anonymous reviewers of the original version of this paper. Their comments significantly improved our approach.


  1. 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–257Google Scholar
  2. 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. [Online; accessed 10 Mar 2017]
  3. 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. [Online; accessed 10 Mar 2017]
  4. Atampore F (2017) Towards provably correct services: automated service composition via supervisory control synthesis. Ph.D. thesis, School of Computing, Queen’s University, OntarioGoogle Scholar
  5. 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.
  6. Auer A, Dingel J, Rudie K (2014) Concurrency control generation for dynamic threads using discrete-event systems. Sci Comput Program 82:22–43CrossRefGoogle Scholar
  7. 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–528Google Scholar
  8. Bartalos P, Bieliková M (2011) Automatic dynamic web service composition: a survey and problem formalization. Comput Inform 30(4):793–827Google Scholar
  9. 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. PortugalGoogle Scholar
  10. 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–15Google Scholar
  11. 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–376Google Scholar
  12. Berardi D, Cheikh F, Giuseppe GD, Patrizi F (2008) Automatic service composition via simulation. Int J Found Comput Sci 19(2):429–451MathSciNetCrossRefGoogle Scholar
  13. 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–361MathSciNetCrossRefGoogle Scholar
  14. Brand D, Zafiropulo P (1983) On communicating finite-state machines. J ACM 30(2):323–342. MathSciNetCrossRefzbMATHGoogle Scholar
  15. 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–80Google Scholar
  16. Cassandras C, Lafortune S (2008) Introduction to discrete-event systems, 2nd edn. Springer, USCrossRefGoogle Scholar
  17. Christensen E, Curbera F, Meredith G, Weerawarana S (2001) Web services description language (WSDL), Version 1.1. [Online; accessed 6-Jan-2017]
  18. Crasso M, Rodríguez JM, Zunino A, Campo M (2010) Revising WSDL documents: why and how. Internet Comput IEEE 14(5):48–56CrossRefGoogle Scholar
  19. Diekmann R, Weidemann D (2013) Event enforcement in the context of the supervisory control theory, Miȩdzyzdroje, PolandGoogle Scholar
  20. Domain WUW (2017) XML schema. [Online; Accessed 20 Aug 2017]
  21. 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–157Google Scholar
  22. Erl T (2004) Service-oriented architecture: a field guide to integrating XML and web services. Prentice Hall, New JerseyGoogle Scholar
  23. 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–2218Google Scholar
  24. 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–6Google Scholar
  25. 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–899Google Scholar
  26. 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, (to appear in print)
  27. 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–35Google Scholar
  28. Gudgin M, Hadley M, Mendelsohn N, Moreau J, Nielsen HF, Karmarkar A, Lafon Y (2007) Simple object access protocol, Version 1.1. [Online; accessed 20 Aug 2017]
  29. 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. CrossRefGoogle Scholar
  30. 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
  31. 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–147Google Scholar
  32. 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–2024CrossRefGoogle Scholar
  33. 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–250Google Scholar
  34. 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–112Google Scholar
  35. 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–62Google Scholar
  36. 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–247MathSciNetCrossRefGoogle Scholar
  37. Marconi A, Pistore M, Traverso P (2008) Automated composition of web services: the ASTRO approach. IEEE Data Eng Bull Issues 31(3):23–26Google Scholar
  38. 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–496Google Scholar
  39. Milner R (1989) Communication and concurrency. Prentice Hall International, Upper Saddle RiverzbMATHGoogle Scholar
  40. 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–199Google Scholar
  41. 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–8Google Scholar
  42. 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–89Google Scholar
  43. 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–404CrossRefGoogle Scholar
  44. 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–28Google Scholar
  45. Papazoglou MP, Traverso P, Dustdar D, Leymann F (2007) Service-oriented computing: state of the art and research challenges. IEEE Comput 40(11):38–45CrossRefGoogle Scholar
  46. 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–138CrossRefGoogle Scholar
  47. 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–61Google Scholar
  48. 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–1259Google Scholar
  49. 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–301Google Scholar
  50. Portchelvi V, Venkatesan VP (2015) A goal-directed orchestration approach for agile service composition. Int J Inf Technol Comput Sci (IJITCS) 7(3):60–67Google Scholar
  51. 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–392Google Scholar
  52. Ramadge PJ, Wonham WM (1987) Supervisory control of a class of discrete event processes. SIAM J Control Optim (SICON) 25(1):206–230. MathSciNetCrossRefzbMATHGoogle Scholar
  53. 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–410Google Scholar
  54. Rodríguez G, Soria A, Campo M (2016) Artificial intelligence in service-oriented software design. Eng Appl Artif Intell 53:86–104. CrossRefGoogle Scholar
  55. 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–88Google Scholar
  56. 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–94Google Scholar
  57. 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 2003CrossRefGoogle Scholar
  58. 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–57Google Scholar
  59. 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, (to appear in print)
  60. 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–129MathSciNetCrossRefGoogle Scholar
  61. Wang Y, Nazeem A (2011) Artifact-centric business process synthesis framework using discrete event systems theory. Tech. rep., HP LaboratoriesGoogle Scholar
  62. 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–263Google Scholar
  63. 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–266Google Scholar
  64. Wang P, Ding Z, Jiang C, Zhou M (2014) Automated web service composition supporting conditional branch structures. Enterprise Inf Syst 8(1):121–146. CrossRefGoogle Scholar
  65. Wonham WM, Cai K (2019) Supervisory control of discrete-event systems. Springer International Publishing, pp XX–489Google Scholar
  66. Wonham WM, Ramadge PJ (1987) On the supremal controllable sublanguage of a given language. SIAM J Control Optim 25(3):637–659MathSciNetCrossRefGoogle Scholar
  67. 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 USAGoogle Scholar
  68. 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, (to appear in print)
  69. Zafiropulo P, West C, Rudin H, Cowan D, Brand D (1980) Towards analyzing and synthesizing protocols. IEEE Trans Commun 28(4):651–661CrossRefGoogle Scholar
  70. 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. CrossRefGoogle Scholar
  71. Zhou C, Kumar R (2007) Control of nondeterministic discrete-event systems for simulation equivalence. IEEE Trans Autom Sci Eng 4(3):340–349CrossRefGoogle Scholar
  72. 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–31CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2019

Authors and Affiliations

  1. 1.School of ComputingQueen’s UniversityKingstonCanada
  2. 2.Department of Electrical and Computer EngineeringQueen’s UniversityKingstonCanada

Personalised recommendations