Skip to main content

Automated Synthesis of Application-Layer Connectors from Automata-Based Specifications

  • Conference paper
  • First Online:
Language and Automata Theory and Applications (LATA 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8977))

Abstract

The heterogeneity characterizing the systems populating the Ubiquitous Computing environment prevents their seamless interoperability. Heterogeneous protocols may be willing to cooperate in order to reach some common goal even though they meet dynamically and do not have a priori knowledge of each other. Despite numerous efforts have been done in the literature, the automated and run-time interoperability is still an open challenge for such environment. We consider interoperability as the ability for two Networked Systems (NSs) to communicate and correctly coordinate to achieve their goal(s).

In this paper, we report the main outcomes of our past and recent research on automatically achieving protocol interoperability via connector synthesis. We consider application-layer connectors by referring to two conceptually distinct notions of connector: coordinator and mediator. The former is used when the NSs to be connected are already able to communicate but they need to be specifically coordinated in order to reach their goal(s). The latter goes a step forward representing a solution for both achieving correct coordination and enabling communication between highly heterogeneous NSs.

In the past, most of the works in the literature described efforts to the automatic synthesis of coordinators while, in recent years the focus moved also to the automatic synthesis of mediators. By considering our past experience on the automatic synthesis of coordinators and mediators as a baseline, we conclude by overviewing a formal method for the automated synthesis of mediators that allows to relax some assumptions state-of-the-art approaches rely on, and characterize the necessary and sufficient interoperability conditions that ensure the mediator existence and correctness.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ITU Telecommunication Standardisation sector, ITU-T reccomendation Z.120. Message Sequence Charts (MSC 1996). Geneva

    Google Scholar 

  2. Aalbersberg, I.J., Hoogeboom, H.J.: Characterizations of the decidability of some problems for regular trace languages. Mathematical Systems Theory 22(1), 1–19 (1989)

    Article  MATH  MathSciNet  Google Scholar 

  3. Aalbersberg, I.J., Welzl, E.: Trace languages defined by regular string languages. ITA 20(2), 103–119 (1986)

    MATH  MathSciNet  Google Scholar 

  4. de Alfaro, L., Henzinger, T.A.: Interface automata. In: ESEC/FSE (2001)

    Google Scholar 

  5. Arnold, A.: Finite Transition Systems. International Series in Computer Science, Prentice Hall International (UK) (1989)

    Google Scholar 

  6. Autili, M., Inverardi, P., Navarra, A., Tivoli, M.: Synthesis: A tool for automatically assembling correct and distributed component-based systems. In: 29th International Conference on Software Engineering (ICSE 2007), Minneapolis, MN, USA, pp. 784–787. IEEE Computer Society (2007). http://doi.ieeecomputersociety.org/10.1109/ICSE.2007.84

  7. Autili, M., Mostarda, L., Navarra, A., Tivoli, M.: Synthesis of decentralized and concurrent adaptors for correctly assembling distributed component-based systems. Journal of Systems and Software 81(12), 2210–2236 (2008)

    Article  Google Scholar 

  8. Autili, Marco, Chilton, Chris, Inverardi, Paola, Kwiatkowska, Marta, Tivoli, Massimo: Towards a Connector Algebra. In: Margaria, Tiziana, Steffen, Bernhard (eds.) ISoLA 2010, Part II. LNCS, vol. 6416, pp. 278–292. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  9. Bennaceur, Amel, Issarny, Valérie, Spalazzese, Romina, Tyagi, Shashank: Achieving Interoperability through Semantics-Based Technologies: The Instant Messaging Case. In: Cudré-Mauroux, Philippe, Heflin, Jeff, Sirin, Evren, Tudorache, Tania, Euzenat, Jérôme, Hauswirth, Manfred, Parreira, Josiane Xavier, Hendler, Jim, Schreiber, Guus, Bernstein, Abraham, Blomqvist, Eva (eds.) ISWC 2012, Part II. LNCS, vol. 7650, pp. 17–33. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  10. Bennaceur, Amel, Johansson, Richard, Moschitti, Alessandro, Spalazzese, Romina, Sykes, Daniel, Saadi, Rachid, Issarny, Valérie: Inferring Affordances Using Learning Techniques. In: Moschitti, Alessandro, Scandariato, Riccardo (eds.) EternalS 2011. CCIS, vol. 255, pp. 79–87. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  11. Berstel, J., Boasson, L.: Transductions and context-free languages, pp. 1–278. Teubner (1979)

    Google Scholar 

  12. Bertolino, Antonia, Calabrò, Antonello, Di Giandomenico, Felicita, Nostro, Nicola, Inverardi, Paola, Spalazzese, Romina: On-the-Fly Dependable Mediation between Heterogeneous Networked Systems. In: Escalona, Mar\’ıa José, Cordeiro, José, Shishkov, Boris (eds.) ICSOFT 2011. CCIS, vol. 303, pp. 20–37. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  13. Bertolino, Antonia, Inverardi, Paola, Issarny, Valérie, Sabetta, Antonino, Spalazzese, Romina: On-the-Fly Interoperability through Automated Mediator Synthesis and Monitoring. In: Margaria, Tiziana, Steffen, Bernhard (eds.) ISoLA 2010, Part II. LNCS, vol. 6416, pp. 251–262. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  14. Bertolino, A., Inverardi, P., Pelliccione, P., Tivoli, M.: Automatic synthesis of behavior protocols for composable web-services. In: Proc. of ESEC/FSE (2009)

    Google Scholar 

  15. Brandin, B., Wonham, W.: Supervisory control of timed discrete-event systems. IEEE Transactions on Automatic Control 39(2) (1994)

    Google Scholar 

  16. Bruni, R., Lanese, I., Montanari, U.: A basic algebra of stateless connectors. Theor. Comput. Sci. 366(1), 98–120 (2006)

    Article  MATH  MathSciNet  Google Scholar 

  17. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture, Volume 1: A System of Patterns. Wiley, Chichester (1996)

    Google Scholar 

  18. Calvert, K.L., Lam, S.S.: Formal methods for protocol conversion. IEEE Journal on Selected Areas in Communications 8(1), 127–142 (1990)

    Article  Google Scholar 

  19. Canal, C., Poizat, P., Salaün, G.: Model-based adaptation of behavioral mismatching components. IEEE Trans. Software Eng. 34(4), 546–563 (2008)

    Article  Google Scholar 

  20. Chen, Taolue, Chilton, Chris, Jonsson, Bengt, Kwiatkowska, Marta: A Compositional Specification Theory for Component Behaviours. In: Seidl, Helmut (ed.) Programming Languages and Systems. LNCS, vol. 7211, pp. 148–168. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  21. Dallmeier, V., Knopp, N., Mallon, C., Fraser, G., Hack, S., Zeller, A.: Automatically generating test cases for specification mining. IEEE TSE 38(2) (2012)

    Google Scholar 

  22. Di Marco, A., Inverardi, P., Spalazzese, R.: Synthesizing self-adaptive connectors meeting functional and performance concerns. In: Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2013, pp. 133–142. IEEE Press, Piscataway (2013). http://dl.acm.org/citation.cfm?id=2487336.2487358

  23. Diekert, V., Muscholl, A.: Trace theory. In: Encyclopedia of Parallel Computing, pp. 2071–2079 (2011)

    Google Scholar 

  24. Diekert, V., Rozenberg, G.: The Book of Traces. World Scientific (1995)

    Google Scholar 

  25. Dumas, Marlon, Spork, Murray, Wang, Kenneth: Adapt or Perish: Algebra and Visual Notation for Service Interface Adaptation. In: Dustdar, Schahram, Fiadeiro, José Luiz, Sheth, Amit P. (eds.) BPM 2006. LNCS, vol. 4102, pp. 65–80. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  26. Ernst, M.D., Cockrell, J., Griswold, W.G., Notkin, D.: Dynamically discovering likely program invariants to support program evolution. IEEE Trans. Software Eng. 27(2) (2001)

    Google Scholar 

  27. Feiler, P., Gabriel, R.P., Goodenough, J., Lingerand, R., Longstaff, T., Kazman, R., Klein, M., Northrop, L., Schmidt, D., Sullivan, K., Wallnau, K.: Ultra-Large-Scale Systems: The Software Challenge of the Future (2006)

    Google Scholar 

  28. Blair, G.S., Paolucci, M., Grace, P., Georgantas, N.: Interoperability in complex distributed systems. In: Bernardo, M., Issarny, V. (eds.) SFM 2011. LNCS, vol. 6659, pp. 1–26. Springer, Heidelberg (2011). http://dx.doi.org/10.1007/978-3-642-21455-4

    Chapter  Google Scholar 

  29. Inverardi, Paola, Issarny, Valérie, Spalazzese, Romina: A Theory of Mediators for Eternal Connectors. In: Margaria, Tiziana, Steffen, Bernhard (eds.) ISoLA 2010, Part II. LNCS, vol. 6416, pp. 236–250. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  30. Inverardi, P., Tivoli, M.: Automatic synthesis of modular connectors via composition of protocol mediation patterns. In: Proceedings of ICSE 2013 (2013)

    Google Scholar 

  31. Issarny, Valérie, Bennaceur, Amel, Bromberg, Yérom-David: Middleware-Layer Connector Synthesis: Beyond State of the Art in Middleware Interoperability. In: Bernardo, Marco, Issarny, Valérie (eds.) SFM 2011. LNCS, vol. 6659, pp. 217–255. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  32. Jiang, F., Fan, Y., Zhang, X.: Rule-based automatic generation of mediator patterns for service composition mismatches. In: Proceedings of the 2008 The 3rd International Conference on Grid and Pervasive Computing - Workshops, pp. 3–8. IEEE Computer Society, Washington, DC (2008). http://portal.acm.org/citation.cfm?id=1381299.1381352

  33. Keller, R.M.: Formal verification of parallel programs. Commun. ACM 19(7), 371–384 (1976)

    Article  MATH  Google Scholar 

  34. Lam, S.S.: Correction to “protocol conversion”. IEEE Trans. Software Eng. 14(9), 1376 (1988)

    Article  Google Scholar 

  35. Li, X., Fan, Y., Wang, J., Wang, L., Jiang, F.: A pattern-based approach to development of service mediators for protocol mediation. In: Proceedings of WICSA 2008, pp. 137–146. IEEE Computer Society (2008)

    Google Scholar 

  36. Lo, D., Mariani, L., Santoro, M.: Learning extended fsa from software: An empirical assessment. J. Syst. Softw. 85(9) (2012)

    Google Scholar 

  37. Lorenzoli, D., Mariani, L., Pezzè, M.: Automatic generation of software behavioral models. In: Proc. of ICSE 2008 (2008)

    Google Scholar 

  38. Margaria, T.: The semantic web services challenge: Tackling complexity at the orchestration level. In: ICECCS 2008 (2008)

    Google Scholar 

  39. Milner, R.: Communication and Concurrency. Prentice Hall, New York (1989)

    MATH  Google Scholar 

  40. Passerone, R., de Alfaro, L., Henzinger, T.A., Sangiovanni-Vincentelli, A.L.: Convertibility verification and converter synthesis: two faces of the same coin. In: Proceedings of the 2002 IEEE/ACM International Conference on Computer-Aided Design, ICCAD 2002, pp. 132–139 (2002)

    Google Scholar 

  41. Pelliccione, P., Tivoli, M., Bucchiarone, A., Polini, A.: An architectural approach to the correct and automatic assembly of evolving component-based systems. Journal of Systems and Software 81(12), 2237–2251 (2008)

    Article  Google Scholar 

  42. Perrin, D.: Partial commutations. In: Proceedings of 16th International Colloquium on Automata, Languages and Programming, ICALP 1989, Stresa, Italy, July 11–15, pp. 637–651 (1989)

    Google Scholar 

  43. Raffelt, H., Steffen, B., Berg, T., Margaria, T.: Learnlib: a framework for extrapolating behavioral models. Int. J. Softw. Tools Technol. Transf. 11(5) (2009)

    Google Scholar 

  44. Ramadge, P., Wonham, W.: Supervisory control of a class of discrete event processes. Siam J. Control and Optimization 25(1) (1987)

    Google Scholar 

  45. Spalazzese, R.: A Theory of Mediating Connectors to achieve Interoperability. Ph.D. thesis, University of L’Aquila, April 2011

    Google Scholar 

  46. Spalazzese, R., Inverardi, P.: Components interoperability through mediating connector pattern. In: WCSI 2010, arxiv.org/abs/1010.2337; EPTCS 37, pp. 27–41 (2010)

    Google Scholar 

  47. Spalazzese, Romina, Inverardi, Paola: Mediating Connector Patterns for Components Interoperability. In: Babar, Muhammad Ali, Gorton, Ian (eds.) ECSA 2010. LNCS, vol. 6285, pp. 335–343. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  48. Spalazzese, R., Inverardi, P., Issarny, V.: Towards a formalization of mediating connectors for on the fly interoperability. In: Proceedings of the Joint Working IEEE/IFIP Conference on Software Architecture and European Conference on Software Architecture (WICSA/ECSA 2009), pp. 345–348 (2009)

    Google Scholar 

  49. Spitznagel, B., Garlan, D.: A compositional formalization of connector wrappers. In: ICSE, pp. 374–384 (2003)

    Google Scholar 

  50. Tivoli, Massimo, Fradet, Pascal, Girault, Alain, Gößler, Gregor: Adaptor Synthesis for Real-Time Components. In: Grumberg, Orna, Huth, Michael (eds.) TACAS 2007. LNCS, vol. 4424, pp. 185–200. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  51. Tivoli, M., Inverardi, P.: Failure-free coordinators synthesis for component-based architectures. Science of Computer Programming 71(3), 181–212 (2008)

    Article  MATH  MathSciNet  Google Scholar 

  52. Vacul\’ın, Roman, Neruda, Roman, Sycara, Katia: An Agent for Asymmetric Process Mediation in Open Environments. In: Kowalczyk, Ryszard, Huhns, Michael N., Klusch, Matthias, Maamar, Zakaria, Vo, Quoc Bao (eds.) Service-Oriented Computing: Agents, Semantics, and Engineering. LNCS, vol. 5006, pp. 104–117. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  53. Vaculín, R., Sycara, K.: Towards automatic mediation of OWL-S process models. In: IEEE International Conference on Web Services, pp. 1032–1039 (2007)

    Google Scholar 

  54. Wiederhold, G., Genesereth, M.: The conceptual basis for mediation services. IEEE Expert: Intelligent Systems and Their Applications 12(5), 38–47 (1997)

    Article  Google Scholar 

  55. Yellin, D.M., Strom, R.E.: Protocol specifications and component adaptors. ACM Trans. Program. Lang. Syst. 19 (1997)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Massimo Tivoli .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Autili, M., Inverardi, P., Mignosi, F., Spalazzese, R., Tivoli, M. (2015). Automated Synthesis of Application-Layer Connectors from Automata-Based Specifications. In: Dediu, AH., Formenti, E., Martín-Vide, C., Truthe, B. (eds) Language and Automata Theory and Applications. LATA 2015. Lecture Notes in Computer Science(), vol 8977. Springer, Cham. https://doi.org/10.1007/978-3-319-15579-1_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-15579-1_1

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-15578-4

  • Online ISBN: 978-3-319-15579-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics