Development Tools for Rule-Based Coordination Programming in LINC

  • Maxime Louvel
  • François Pacull
  • Eric Rutten
  • Adja Ndeye Sylla
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10319)


During the last decades a lot of coordination models and languages have been proposed in the literature. These approaches have proven that they can greatly improve the development of distributed applications that are now common. However, to be used by many developers, there is still a gap regarding the available tools.

This paper details a set of tools that have been built to develop applications in LINC, a coordination environment rooted in Linda tuple spaces and Gamma chemical machine approaches. These tools allow developers to design better coordination rules, to monitor and update a running distributed application. The tools proposed here include design and debugging tools.


Coordination environment Development tools Distributed systems 



This work is funded by the H2020 TOPAs (grant 676760).


  1. 1.
    Arbab, F.: What do you mean, coordination. Bull. Dutch Assoc. Theor. Comput. Sci. NVTI 1122, 1–18 (1998)Google Scholar
  2. 2.
    Arbab, F.: Reo: a channel-based coordination model for component composition. Math. Struct. Comput. Sci. 14(3), 329–366 (2004)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Banătre, J.-P., Fradet, P., Métayer, D.: Gamma and the chemical reaction model: fifteen years after. In: Calude, C.S., PĂun, G., Rozenberg, G., Salomaa, A. (eds.) WMC 2000. LNCS, vol. 2235, pp. 17–44. Springer, Heidelberg (2001). doi: 10.1007/3-540-45523-X_2 CrossRefGoogle Scholar
  4. 4.
    Bernstein, P.A., Hadzilacos, V., Goodman, N.: Concurrency Control and Recovery in Database Systems, vol. 370. Addison-Wesley, New York (1987)Google Scholar
  5. 5.
    Cabri, G., Leonardi, L., Zambonelli, F.: Mars: a programmable coordination architecture for mobile agents. IEEE Internet Comput. 4(4), 26–35 (2000)CrossRefGoogle Scholar
  6. 6.
    Cano, J., Delaval, G., Rutten, E.: Coordination of ECA rules by verification and control. In: Kühn, E., Pugliese, R. (eds.) COORDINATION 2014. LNCS, vol. 8459, pp. 33–48. Springer, Heidelberg (2014). doi: 10.1007/978-3-662-43376-8_3 CrossRefGoogle Scholar
  7. 7.
    Carriero, N., Gelernter, D.: Linda in context. Commun. ACM 32, 444–458 (1989)CrossRefGoogle Scholar
  8. 8.
    Collins, J., Bagrodia, R.: Mobile application development with MELON. In: Guo, S., Lloret, J., Manzoni, P., Ruehrup, S. (eds.) ADHOC-NOW 2014. LNCS, vol. 8487, pp. 265–278. Springer, Cham (2014). doi: 10.1007/978-3-319-07425-2_20 Google Scholar
  9. 9.
    Cooper, T., Wogrin, N.: Rule-based Programming with OPS5, vol. 988. Morgan Kaufmann, San Fransisco (1988)Google Scholar
  10. 10.
    Costa, P., Mottola, L., Murphy, A.L., Picco, G.P.: Teenylime: transiently shared tuple space middleware for wireless sensor networks. In: Proceedings of the International Workshop on Middleware for Sensor Networks, pp. 43–48. ACM (2006)Google Scholar
  11. 11.
    Delaval, G., Marchand, H., Rutten, E.: Contracts for modular discrete controller synthesis. SIGPLAN Not. 45(4), 57–66 (2010)CrossRefGoogle Scholar
  12. 12.
    Dokter, K., Jongmans, S.-S., Arbab, F., Bliudze, S.: Combine and conquer: relating BIP and Reo. J. Logical Algebr. Methods Program. 86(Ice), 3–20 (2016)MathSciNetMATHGoogle Scholar
  13. 13.
    Ducreux, L.F., Guyon-Gardeux, C., Louvel, M., Pacull, F., Thior, S.R., Vergara-Gallego, M.I.: Rapid prototyping of complete systems, the case study of a smart parking. In: 2015 International Symposium on Rapid System Prototyping (RSP), vol. 2016, February, pp. 133–139, Amsterdam (2015)Google Scholar
  14. 14.
    Boutin, V., et al.: Energy optimisation using analytics and coordination, the example of lifts. In 19th IEEE Conference on Emerging Technologies and Factory Automation (2014)Google Scholar
  15. 15.
    Fernandez, H., Tedeschi, C., Priol, T.: Rule-driven service coordination middleware for scientific applications. Future Gener. Comput. Syst. 35, 1–13 (2014)CrossRefGoogle Scholar
  16. 16.
    Garnock-Jones, T., Felleisen, M.: Coordinated concurrent programming in syndicate. In: Thiemann, P. (ed.) ESOP 2016. LNCS, vol. 9632, pp. 310–336. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49498-1_13 CrossRefGoogle Scholar
  17. 17.
    Gelernter, D.: Generative communication in linda. ACM Trans. Program. Lang. Syst. (TOPLAS) 7(1), 80–112 (1985)CrossRefMATHGoogle Scholar
  18. 18.
    Gueye, S.M.K., Palma, N., Rutten, E.: Component-based autonomic managers for coordination control. In: Nicola, R., Julien, C. (eds.) COORDINATION 2013. LNCS, vol. 7890, pp. 75–89. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-38493-6_6 CrossRefGoogle Scholar
  19. 19.
    Julien, C., Roman, G.-C.: Egospaces: facilitating rapid development of context-aware mobile applications. IEEE Trans. Softw. Eng. 32(5), 281–298 (2006)CrossRefGoogle Scholar
  20. 20.
    Kühn, E.: Reusable coordination components: reliable development of cooperative information systems. Int. Jo. Cooper. Inf. Syst. 25(4), 1740001 (2017)CrossRefGoogle Scholar
  21. 21.
    Kühn, E., Craß, S., Joskowicz, G., Marek, A., Scheller, T.: Peer-based programming model for coordination patterns. In: Nicola, R., Julien, C. (eds.) COORDINATION 2013. LNCS, vol. 7890, pp. 121–135. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-38493-6_9 CrossRefGoogle Scholar
  22. 22.
    Kuhn, E., Riemer, J., Mordinyi, R., Lechner, L.: Integration of XVSM spaces with the web to meet the challenging interaction demands in pervasive scenarios. Ubiquit. Comput. Commun. J. CPE, 20–31 (2008). SI (Special issue of Coordination in Pervasive Environments)Google Scholar
  23. 23.
    Louvel, M., Pacull, F.: LINC: a compact yet powerful coordination environment. In: Kühn, E., Pugliese, R. (eds.) COORDINATION 2014. LNCS, vol. 8459, pp. 83–98. Springer, Heidelberg (2014). doi: 10.1007/978-3-662-43376-8_6 CrossRefGoogle Scholar
  24. 24.
    Louvel, M., Pacull, F., Vergara-Gallego, M.I.: Coordination scheme editor for building management systems. In: IECON 2016 42nd Annual Conference of the IEEE, pp. 7052–7057. IEEE (2016)Google Scholar
  25. 25.
    Mamei, M., Zambonelli, F.: Programming pervasive and mobile computing applications: the TOTA approach. ACM Trans. Softw. Eng. Methodol. 18(4), 15 (2009)CrossRefGoogle Scholar
  26. 26.
    Molesini, A., Omicini, A., Viroli, M., Zambonelli, F.: Engineering pervasive multiagent systems in SAPERE. In: Cossentino, M., Fallah Seghrouchni, A., Winikoff, M. (eds.) EMAS 2013. LNCS, vol. 8245, pp. 196–214. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-45343-4_11 CrossRefGoogle Scholar
  27. 27.
    Murphy, A.L., Picco, G.P., Roman, G.-C.: Lime: a coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Eng. Methodol. 15(3), 279–328 (2006)CrossRefGoogle Scholar
  28. 28.
    Omicini, A., Viroli, M.: Coordination models and languages: from parallel computing to self-organisation. Knowl. Eng. Rev. 26(01), 53–59 (2011)CrossRefGoogle Scholar
  29. 29.
    Omicini, A., Zambonelli, F.: TuCSon: a coordination model for mobile information agents. In: Proceedings of the 1st Workshop on Innovative Internet Information Systems, vol. 138 (1998)Google Scholar
  30. 30.
    Omicini, A., Zambonelli, F.: Coordination for internet application development. Auton. Agents Multiagent Syst. 2(3), 251–269 (1999)CrossRefGoogle Scholar
  31. 31.
    Papadopoulos, G.A., Arbab, F.: Coordination models and languages. Adv. Comput. 46, 329–400 (1998)CrossRefGoogle Scholar
  32. 32.
    Pianini, D., Montagna, S., Viroli, M.: Chemical-oriented simulation of computational systems with alchemist. J. Simul. 7(3), 202–215 (2013)CrossRefGoogle Scholar
  33. 33.
    Schmidt, K.: LoLA a low level analyser. In: Nielsen, M., Simpson, D. (eds.) ICATPN 2000. LNCS, vol. 1825, pp. 465–474. Springer, Heidelberg (2000). doi: 10.1007/3-540-44988-4_27 CrossRefGoogle Scholar
  34. 34.
    Sylla, A.N., Louvel, M., Pacull, F.: Coordination rules generation from coloured petri net models. In: PNSE@ Petri Nets, pp. 325–326 (2015)Google Scholar
  35. 35.
    Sylla, A.N., Louvel, M., Rutten, E.: Combining transactional and behavioural reliability in adaptive middleware. In: Proceedings of the 15th International Workshop on Adaptive and Reflective Middleware, p. 5. ACM (2016)Google Scholar
  36. 36.
    Vergara-Gallego, M.I., Mokrenko, O., Louvel, M., Lesecq, S., Pacull, F.: Implementation of an energy management control strategy for WSNs using the LINC middleware. In: Proceedings of the 2016 International Conference on Embedded Wireless Systems and Networks, pp. 53–58 (2016)Google Scholar
  37. 37.
    Viroli, M., Casadei, M., Montagna, S., Zambonelli, F.: Spatial coordination of pervasive services through chemical-inspired tuple spaces. CM Trans. Auton. Adapt. Syst. 6(2), 14:1–14:24 (2011)Google Scholar
  38. 38.
    Viroli, M., Omicini, A.: Respect nets: towards an analysis methodology for respect specifications. Electron. Notes Theor. Comput. Sci. 180(2), 123–144 (2007)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2017

Authors and Affiliations

  • Maxime Louvel
    • 1
  • François Pacull
    • 2
  • Eric Rutten
    • 3
  • Adja Ndeye Sylla
    • 1
  1. 1.Univ Grenoble Alpes, CEA, LetiGrenobleFrance
  2. 2.Bag-EraSaint-MartinFrance
  3. 3.Univ. Grenoble Alpes, INRIA, CNRS, Grenoble INP, LIGGrenobleFrance

Personalised recommendations