Nothing Special   »   [go: up one dir, main page]

skip to main content
article

Reo: a channel-based coordination model for component composition

Published: 01 June 2004 Publication History

Abstract

In this paper, we present Reo, which forms a paradigm for composition of software components based on the notion of mobile channels. Reo is a channel-based exogenous coordination model in which complex coordinators, called connectors, are compositionally built out of simpler ones. The simplest connectors in Reo are a set of channels with well-defined behaviour supplied by users. Reo can be used as a language for coordination of concurrent processes, or as a ‘glue language’ for compositional construction of connectors that orchestrate component instances in a component-based system. The emphasis in Reo is just on connectors and their composition, and not on the entities that connect to, communicate and cooperate through these connectors. Each connector in Reo imposes a specific coordination pattern on the entities (for example, components) that perform I/O operations through that connector, without the knowledge of those entities. Channel composition in Reo is a very powerful mechanism for construction of connectors. We demonstrate the expressive power of connector composition in Reo through a number of examples. We show that exogenous coordination patterns that can be expressed as (meta-level) regular expressions over I/O operations can be composed in Reo out of a small set of only five primitive channel types.

References

[1]
Arbab, F. (1996) The IWIM model for coordination of concurrent activities. In: Ciancarini, P. and Hankin, C. (eds.) Coordination Languages and Models. Springer-Verlag Lecture Notes in Computer Science 1061 34-56.
[2]
Arbab, F. (1998) What do you mean, coordination? Bulletin of the Dutch Association for Theoretical Computer Science, NVTI 11-22. (Available at http://www.cwi.nl/NVTI/Nieuwsbrief/ nieuwsbrief.html.)
[3]
Arbab, F. (2002) A channel-based coordination model for component composition. Technical Report SEN-R0203, Centrum voor Wiskunde en Informatica, Kruislaan 413, 1098 SJ Amsterdam, The Netherlands.
[4]
Arbab, F., de Boer, F. and Bonsangue, M. (2000a) A coordination language for mobile components. Proc. ACM SAC'00.
[5]
Arbab, F., de Boer, F. S. and Bonsangue, M.M. (2000b) A logical interface description language for components. In: Porto, A. and Roman, G.-C. (eds.) Coordination Languages and Models: Proc. Coordination 2000. Springer-Verlag Lecture Notes in Computer Science 1906 2490-266.
[6]
Arbab, F. and Mavaddat, F. (2002) Coordination through channel composition. In: Arbab, F. and Talcott, C. (eds.) Coordination Languages and Models: Proc. Coordination 2002. Springer-Verlag Lecture Notes in Computer Science 2315 21-38.
[7]
Arbab, F. and Rutten, J. J. M. M. (2003) A coinductive calculus of component connectors. In: Wirsing, M., Pattinson, D. and Hennicker, R. (eds.) Recent Trends in Algebraic Development Techniques, Proceedings of 16th International Workshop on Algebraic Development Techniques (WADT 2002). Springer-Verlag Lecture Notes in Computer Science 2755 35-56. (Also available as Technical Report SEN-R0216, Centrum voor Wiskunde en Informatica, Kruislaan 413, 1098 SJ Amsterdam, The Netherlands.).
[8]
Bonsangue, M., Arbab, F., de Bakker, J., Rutten, J., Scutellá, A. and Zavattaro, G. (2000) A transition system semantics for the control-driven coordination language manifold. Theoretical Computer Science 240 3-47.
[9]
Broy,M. and Stefanescu, G. (2001) The algebra of stream processing functions. Theoretical Computer Science 258
[10]
Broy, M. (1995) Equations for describing dynamic nets of communicating systems. In: Proc. 5th COMPASS workshop. Springer-Verlag Lecture Notes in Computer Science 906 170-187.
[11]
Broy, M. and Stolen, K. (2001) Specification and development of interactive systems. Monographs in Computer Science, Springer-Verlag 62.
[12]
de Boer, F. S. and Bonsangue, M. M. (2000) A compositional model for confluent dynamic data-flow networks. In: Nielsen, M. and Rovan, B. (eds.) Proc. International Symposium of the Mathematical Foundations of Computer Science (MFCS). Springer-Verlag Lecture Notes in Computer Science 1893 212-221.
[13]
Grosu, R. and Stoelen, K. (1996) A model for mobile point-to-point data-flow networks without channel sharing. Springer-Verlag Lecture Notes in Computer Science 1101 504-519.
[14]
Barringer, H., Kuiper, R. and Pnueli, A. (1986) A really abstract current model and its temporal logic. In: Proceedings of Thirteenth Annual ACM Symposium on principles of Programming Languages, ACM 173-183.
[15]
Kahn, G. (1974) The semantics of a simple language for parallel programming. In: Rosenfeld, J. L. (ed.) Information Processing '74: Proceedings of the IFIP Congress, North-Holland 471-475.
[16]
Katis, P., Sabadini, N. and Walters, R.F.C. (2000) A formalization of the IWIM model. In: Porto, A. and Roman, G.-C. (eds.) Coordination Languages and Models: Proc. Coordination 2000. Springer-Verlag Lecture Notes in Computer Science 1906 267-283.
[17]
Rutten, J. J. M. M. (2001) Elements of stream calculus (an extensive exercise in coinduction). In: Brookes, S. and Mislove, M. (eds.) Proc. of 17th Conf. on Mathematical Foundations of Programming Semantics, Aarhus, Denmark, 23-26 May 2001. Electronic Notes in Theoretical Computer Science, Elsevier 45.
[18]
Scholten, J. G. (2001) MoCha: A model for distributed Mobile Channels. Master's thesis, Leiden University.

Cited By

View all
  • (2024)Team Automata: Overview and RoadmapCoordination Models and Languages10.1007/978-3-031-62697-5_10(161-198)Online publication date: 17-Jun-2024
  • (2023)Fault-tolerance at your Finger Tips with the TeamPlay Coordination LanguageProceedings of the 35th Symposium on Implementation and Application of Functional Languages10.1145/3652561.3652571(1-13)Online publication date: 29-Aug-2023
  • (2023)Component-based Distributed Software Reconfiguration:A Verification-oriented SurveyACM Computing Surveys10.1145/359537656:1(1-37)Online publication date: 26-Aug-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Mathematical Structures in Computer Science
Mathematical Structures in Computer Science  Volume 14, Issue 3
June 2004
182 pages

Publisher

Cambridge University Press

United States

Publication History

Published: 01 June 2004

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 24 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Team Automata: Overview and RoadmapCoordination Models and Languages10.1007/978-3-031-62697-5_10(161-198)Online publication date: 17-Jun-2024
  • (2023)Fault-tolerance at your Finger Tips with the TeamPlay Coordination LanguageProceedings of the 35th Symposium on Implementation and Application of Functional Languages10.1145/3652561.3652571(1-13)Online publication date: 29-Aug-2023
  • (2023)Component-based Distributed Software Reconfiguration:A Verification-oriented SurveyACM Computing Surveys10.1145/359537656:1(1-37)Online publication date: 26-Aug-2023
  • (2023)Joint Use of SysML and Reo to Specify and Verify the Compatibility of CPS ComponentsFormal Aspects of Component Software10.1007/978-3-031-52183-6_5(84-102)Online publication date: 26-Oct-2023
  • (2023)An Autonomous Data LanguageTheoretical Aspects of Computing – ICTAC 202310.1007/978-3-031-47963-2_11(158-177)Online publication date: 4-Dec-2023
  • (2022)Design of Computer-Aided Translation System Based on Naive Bayesian AlgorithmComputational Intelligence and Neuroscience10.1155/2022/13489912022Online publication date: 1-Jan-2022
  • (2022)Reasoning about distributed reconfigurable systemsProceedings of the ACM on Programming Languages10.1145/35632936:OOPSLA2(145-174)Online publication date: 31-Oct-2022
  • (2022)Model Driven Approach to Design an Automotive CPS with SysReo LanguageProceedings of the 20th ACM International Symposium on Mobility Management and Wireless Access10.1145/3551660.3560916(97-104)Online publication date: 24-Oct-2022
  • (2022)Graphic modeling in Distributed Autonomous and Asynchronous Automata (DA3)Software and Systems Modeling (SoSyM)10.1007/s10270-021-00917-721:1(363-398)Online publication date: 1-Feb-2022
  • (2022)A Formal Algebraic Approach for the Quantitative Modeling of Connectors in ArchitecturesAlgebraic Informatics10.1007/978-3-031-19685-0_9(115-135)Online publication date: 27-Oct-2022
  • Show More Cited By

View Options

View options

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media