Building Mashups for the Enterprise with SABRE

  • Ziyan Maraikar
  • Alexander Lazovik
  • Farhad Arbab
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5364)


The explosive popularity of mashups has given rise to a plethora of web-based tools for rapidly building mashups with minimal programming effort. In turn, this has spurred interest in using these tools to empower end-users to build situational applications for business. Situational applications based on Reo (SABRE) is a service composition platform that addresses service heterogeneity as a first-class concern by adopting a mashup’s data-centric approach. Built atop the Reo coordination language, SABRE provides tools to combine, filter and transform web services and data sources like RSS and ATOM feeds. Whereas other mashup platforms intermingle data transformation logic and I/O concerns, we aim to clearly separate them by formalising coordination logic within a mashup. Reo’s well-defined compositional semantics opens up the possibility of constructing a mashup’s core logic from a library of prebuilt connectors. Input/output in SABRE is handled by service stubs generated by combining a syntactic service specification such as WSDL with a constraint automaton specifying service behaviour. These stubs insulate services from misbehaving clients while protecting clients against services that do not conform to their contracts. We believe these are compelling features as mashups graduate from curiosities on the Web to situational applications for the enterprise.


Service Composition Service Coordination Service Behaviour Situational Application FIFO Channel 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Altinel, M., Brown, P., Cline, S., Kartha, R., Louie, E., Markl, V., Mau, L., Ng, Y., Simmen, D., Singh, A.: Damia - a data mashup fabric for intranet applications. In: VLDB, pp. 1370–1373 (2007)Google Scholar
  2. 2.
    Arbab, F.: Reo: a Channel-based Coordination Model for Component Composition. Mathematical Structures in Computer Science 14, 329–366 (2004)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Arbab, F., Koehler, C., Maraikar, Z., Moon, Y., Proença, J.: Modeling, testing and executing Reo connectors with the Eclipse Coordination Tools. In: Proceedings of FACS, SCP (to appear, 2008)Google Scholar
  4. 4.
    Arbab, F., Kokash, N., Sun, M.: Towards using Reo for compliance-aware Business Process Modelling. In: Proceedings of ISOLA (to appear, 2008)Google Scholar
  5. 5.
    Arbab, F., Meng, S.: Synthesis of connectors from scenario-based interaction specifications. In: Chaudron, M.R.V., Szyperski, C., Reussner, R. (eds.) CBSE 2008. LNCS, vol. 5282, pp. 114–129. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  6. 6.
    Baier, C., Sirjani, M., Arbab, F., Rutten, J.: Modeling component connectors in Reo by Constraint Automata. Sci. Comput. Program 61(2), 75–113 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Clarke, D., Costa, D., Arbab, F.: Connector colouring I: Synchronisation and context dependency. Electr. Notes Theor. Comput. Sci. 154(1), 101–119 (2006)CrossRefzbMATHGoogle Scholar
  8. 8.
    Clarke, D., Proença, J., Lazovik, A., Arbab, F.: Deconstructing Reo. In: Proceedings of FOCLASA. ENTCS (to appear, 2008)Google Scholar
  9. 9.
    Curbera, F., Goland, Y., Klein, J., Leymann, F.: Business process execution language for web services. Technical report, IBM (2002),
  10. 10.
    Fielding, R.: Architectural styles and the design of network-based software architectures. PhD thesis, Chair-Richard N. Taylor (2000)Google Scholar
  11. 11.
    Jhingran, A.: Enterprise information mashups: Integrating information, simply. In: VLDB, pp. 3–4 (2006)Google Scholar
  12. 12.
    Kavantzas, N., Burdett, D., Ritzinger, G.: Web services choreography description language (WS-CDL) version 1.0. Working draft, W3C (2004),
  13. 13.
    Koehler, C., Costa, D., Proenca, J., Arbab, F.: Reconfiguration of Reo connectors triggered by dataflow. In: Proceedings of GT-VMT. Electronic Communications of the EASST, vol. 10 (2008)Google Scholar
  14. 14.
    Lazovik, A., Arbab, F.: Using Reo for service coordination. In: Krämer, B.J., Lin, K.-J., Narasimhan, P. (eds.) ICSOC 2007. LNCS, vol. 4749, pp. 398–403. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  15. 15.
    Lohmann, N., Massuthe, P., Wolf, K.: Behavioral constraints for services (chapter Behavioral Constraints for Services). In: Alonso, G., Dadam, P., Rosemann, M. (eds.) BPM 2007. LNCS, vol. 4714, pp. 271–287. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  16. 16.
    Lynch, N., Tuttle, M.: An introduction to input/output automata. Technical report, Centrum voor Wiskunde en Informatica, Amsterdam, The Netherlands (1980)Google Scholar
  17. 17.
    Mousavi, M., Sirjani, M., Arbab, F.: Formal semantics and analysis of component connectors in Reo. ENTCS 154(1), 83–99 (2006)Google Scholar
  18. 18.
    J. Proença Towards Distributed Reo. In: CIC workshop (2007),
  19. 19.
    Scholten, J., Arbab, F., de Boer, F., Bonsangue, M.: A component coordination model based on mobile channels. Fundam. Inform. 73(4), 561–582 (2006)MathSciNetzbMATHGoogle Scholar
  20. 20.
    Sun, M., Arbab, F.: Web Services Choreography And Orchestration In Reo And Constraint Automata. In: Proceedings of the 2007 ACM Symposium on Applied Computing (SAC), pp. 346–353. ACM, New York (2007)Google Scholar
  21. 21.
    Wirsing, M., Clark, A., Gilmore, S., Hölzl, M., Knapp, A., Koch, N., Schroeder, A.: Semantic-Based Development of Service-Oriented Systems. In: Najm, E., Pradat-Peyre, J.-F., Donzeau-Gouge, V.V. (eds.) FORTE 2006. LNCS, vol. 4229, pp. 24–45. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Ziyan Maraikar
    • 1
  • Alexander Lazovik
    • 2
  • Farhad Arbab
    • 1
  1. 1.Centrum voor Wiskunde en InformaticaThe Netherlands
  2. 2.INRIA SaclayParc Club Orsay UniversitéFrance

Personalised recommendations