Bringing Middleware to Everyday Programmers with Ballerina

  • Sanjiva Weerawarana
  • Chathura Ekanayake
  • Srinath PereraEmail author
  • Frank Leymann
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11080)


Ballerina is a new language for solving integration problems. It is based on insights and best practices derived from languages like BPEL, BPMN, Go, and Java, but also cloud infrastructure systems like Kubernetes. Integration problems were traditionally addressed by dedicated middleware systems such as enterprise service buses, workflow systems and message brokers. However, such systems lack agility required by current integration scenarios, especially for cloud based deployments. This paper discusses how Ballerina solves this problem by bringing integration features into a general purpose programming language.


Flow languages Middleware Integration technology 


  1. 1.
    Leymann, F., Roller, D.: Production Workflow: Concepts and Techniques. Prentice Hall PTR, Upper Saddle River (2000)zbMATHGoogle Scholar
  2. 2.
    Workflow patterns. Accessed 10 Jun 2018
  3. 3.
    Erl, T.: Service-Oriented Architecture: Concepts, Technology, and Design. Pearson Education India, Noida (2005)Google Scholar
  4. 4.
    Duggan, D.: Enterprise Software Architecture and Design: Entities, Services, and Resources, vol. 10. Wiley, Hoboken (2012)CrossRefGoogle Scholar
  5. 5.
    Schmidt, M.-T., Hutchison, B., Lambros, P., Phippen, R.: The enterprise service bus: making service-oriented architecture real. IBM Syst. J. 44(4), 781–797 (2005)CrossRefGoogle Scholar
  6. 6.
    WSO2 Enterprise Service Bus. Accessed 30 May 2018
  7. 7.
    Apache camel. Accessed 30 May 2018
  8. 8.
    Sundararajan, P., et al.: Software development using visual interfaces. US Patent 7,793,258, 7 September 2010Google Scholar
  9. 9.
    Hils, D.D.: Visual languages and computing survey: data flow visual programming languages. J. Vis. Lang. Comput. 3(1), 69–101 (1992)CrossRefGoogle Scholar
  10. 10.
    Mule anypoint studio. Accessed 30 May 2018
  11. 11.
    Dell boomi platform. Accessed 30 May 2018
  12. 12.
    API management. Accessed 30 May 2018
  13. 13.
    O.UML, Unified Modeling Language. Object Management Group (2001)Google Scholar
  14. 14.
    Ballerina language specification, v0.970, working draft. Accessed 30 May 2018
  15. 15.
    Koch, N., Kraus, A.: The expressive power of UML-based web engineering. In: Second International Workshop on Web-oriented Software Technology (IWWOST 2002), vol. 16. CYTED (2002)Google Scholar
  16. 16.
    Ermagan, V., Krüger, I.H.: A UML2 profile for service modeling. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 360–374. Springer, Heidelberg (2007). Scholar
  17. 17.
    Sarma, M., Kundu, D., Mall, R.: Automatic test case generation from UML sequence diagram. In: 2007 International Conference on Advanced Computing and Communications, ADCOM 2007, pp. 60–67. IEEE (2007)Google Scholar
  18. 18.
    Alhroob, A., Dahal, K., Hossain, A.: Transforming UML sequence diagram to high level petri net. In: 2010 2nd International Conference on Software Technology and Engineering (ICSTE), vol. 1, pp. V1–260. IEEE (2010)Google Scholar
  19. 19.
    Görlach, K., Leymann, F., Claus, V.: Unified execution of service compositions. In: Proceedings of the 6th IEEE International (2013)Google Scholar
  20. 20.
    Leymann, F.: Supporting business transactions via partial backward recovery in workflow management systems. In: Lausen, G. (ed.) Datenbanksysteme in Büro, Technik und Wissenschaft, pp. 51–70. Springer, Heidelberg (1995). Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Sanjiva Weerawarana
    • 1
  • Chathura Ekanayake
    • 1
  • Srinath Perera
    • 1
    Email author
  • Frank Leymann
    • 2
  1. 1.WSO2ColomboSri Lanka
  2. 2.IAAS, University of StuttgartStuttgartGermany

Personalised recommendations