×

A model of context-dependent component connectors. (English) Zbl 1243.68147

Summary: Recent approaches to component-based software engineering employ coordinating connectors to compose components into software systems. For maximum flexibility and reuse such connectors can themselves be composed, resulting in an expressive calculus of connectors whose semantics encompasses complex combinations of synchronisation, mutual exclusion, non-deterministic choice and state-dependent behaviour.
To increase the expressiveness of connectors, notions of context-dependent behaviour have been proposed. Context dependency can be used can express the priority of one behaviour over another and the inhibition of actions due to changing context. The notion of context we consider in this paper is given by the pending activities on the ports of a connector. Context-dependent behaviour occurs whenever the choices available to a connector change non-monotonically as its context changes.
Capturing context-dependent behaviour in formal models is non-trivial, as it is unclear how to propagate context information through composition. In this paper we present an intuitive automata-based formal model of context-dependent connectors, and argue that it is superior to previous attempts at such a model for the coordination language Reo.

MSC:

68N30 Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.)
68Q45 Formal languages and automata

Software:

Linda; PICCOLA; Reo; MANIFOLD
PDFBibTeX XMLCite
Full Text: DOI

References:

[1] Arbab, Farhad: Reo: a channel-based coordination model for component composition, Math. structures comput. Sci. 14, No. 3, 329-366 (2004) · Zbl 1085.68552
[2] Arbab, Farhad: Abstract behavior types: a foundation model for components and their composition, Sci. comput. Program. 55, No. 1–3, 3-52 (2005) · Zbl 1075.68014
[3] Farhad Arbab, Roberto Bruni, Dave Clarke, Ivan Lanese, Ugo Montanari, Tiles for Reo, in: Corradini and Montanari [15], pp. 37–55. · Zbl 1253.68090
[4] Farhad Arbab, Tom Chothia, Rob van der Mei, Sun Meng, Young-Joo Moon, Chrétien Verhoef, From coordination to stochastic models of QoS, in: Field and Vasconcelos [19], pp. 268–287.
[5] Arbab, Farhad; Herman, Ivan; Spilling, Pål: An overview of manifold and its implementation, Concurrency - pract. Exp. 5, No. 1, 23-70 (1993)
[6] Arbab, Farhad; Rutten, Jan J. M. M.: A coinductive calculus of component connectors, Lecture notes in computer science 2755, 34-55 (2002) · Zbl 1278.68200
[7] Baier, Christel; Sirjani, Marjan; Arbab, Farhad; Rutten, Jan J. M. M.: Modeling component connectors in reo by constraint automata, Sci. comput. Programming 61, No. 2, 75-113 (2006) · Zbl 1105.68058
[8] Barbosa, Luís Soares; Barbosa, Marco Antonio: A perspective on service orchestration, Sci. comput. Programming 74, 671-687 (2009) · Zbl 1167.68361
[9] Barbosa, Marco Antonio; Barbosa, Luís Soares; Campos, José Creissac: Towards a coordination model for interactive systems, Electron. notes theor. Comput. sci. 183, 89-103 (2007)
[10] Bliudze, Simon; Sifakis, Joseph: The algebra of connectors–structuring interaction in BIP, IEEE trans. Comput. 57, No. 10, 1315-1330 (2008) · Zbl 1209.68123
[11] Marcello M. Bonsangue, Dave Clarke, Alexandra Silva, Automata for context-dependent connectors, in: Field and Vasconcelos [19], pp. 184–203. · Zbl 1243.68147
[12] Bruni, Roberto; Lanese, Ivan; Montanari, Ugo: A basic algebra of stateless connectors, Theor. comput. Sci. 366, No. 1–2, 98-120 (2006) · Zbl 1153.68331
[13] Clarke, Dave; Costa, David; Arbab, Farhad: Connector colouring I: Synchronisation and context dependency, Sci. comput. Programming 66, No. 3, 205-225 (2007) · Zbl 1121.68015
[14] Clarke, Dave; Proença, José; Lazovik, Alexander; Arbab, Farhad: Deconstructing reo, Electron. notes theor. Comput. sci. 229, No. 2, 43-58 (2009) · Zbl 1347.68077
[15] , Lecture notes in computer science 5486 (2009)
[16] David Costa, Formal models for component connectors. Ph.D. Thesis, Vrij Universiteit Amsterdam, 2010.
[17] De Boer, Frank S.; Kok, Joost N.; Palamidessi, Catuscia; Rutten, Jan J. M. M.: Non-monotonic concurrent constraint programming, , 315-334 (1993) · Zbl 0832.68014
[18] Fiadeiro, José Luiz; Lopes, Antónia: Community on the move: architectures for distribution and mobility, Lecture notes in computer science 3188, 177-196 (2003) · Zbl 1104.68431
[19] , Lecture notes in computer science 5521 (2009)
[20] Fournet, Cédric; Gonthier, Georges: The join calculus: a language for distributed mobile programming, Lecture notes in computer science 2395, 268-332 (2000) · Zbl 1065.68071
[21] Gelernter, David: Generative communication in linda, ACM trans. Program. lang. Syst. 7, No. 1, 80-112 (1985) · Zbl 0559.68030
[22] Juan Visente Guillen Scholten, Mobile channels for exogenous coordination of distributed systems: semantics, implementation and composition, Ph.D. Thesis, LIACS, Faculty of Mathematics and Natural Sciences, Leiden University, January 2007.
[23] Izadi, Mohammad; Bonsangue, Marcello M.: Recasting constraint automata into Büchi automata, Lecture notes in computer science 5160, 156-170 (2008) · Zbl 1161.68538
[24] Izadi, Mohammad; Bonsangue, Marcello M.; Clarke, Dave: Modeling component connectors: synchronisation and context-dependency, Sefm, 303-312 (2008)
[25] Khosravi, Ramtin; Sirjani, Marjan; Asoudeh, Nesa; Sahebi, Shaghayegh: Modeling and analysis of reo connectors using alloy, Lecture notes in computer science 5052, 169-183 (2008)
[26] Christian Koehler, Farhad Arbab, Erik P. de Vink, Reconfiguring distributed Reo connectors, in: Corradini and Montanari [15], pp. 221–235.
[27] Koehler, Christian; Clarke, Dave: Decomposing port automata, , 1369-1373 (2009)
[28] Kozen, Dexter: Automata on guarded strings and applications, Mat. contemp. 24, 117-139 (2003) · Zbl 1087.68049
[29] Dexter Kozen, On the coalgebraic theory of Kleene algebra with tests, Technical Report, Computing and Information Science, Cornell University, March 2008. http://hdl.handle.net/1813/10173. · Zbl 1148.68033
[30] Lee, Bilung; Lee, Edward A.: Hierarchical concurrent finite state machines in Ptolemy, , 34-40 (1998)
[31] Liu, Xiaojun; Xiong, Yuhong; Lee, Edward A.: The Ptolemy II framework for visual languages, , 50-51 (2001)
[32] Maraikar, Ziyan; Lazovik, Alexander; Arbab, Farhad: Building mashups for the enterprise with SABRE, Lecture notes in computer science 5364, 70-83 (2008)
[33] Misra, Jayadev; Cook, William R.: Computation orchestration: a basis for wide-area computing, J. softw. Syst. model., No. May (2006) · Zbl 1151.68360
[34] Mousavi, Mohammad Reza; Sirjani, Marjan; Arbab, Farhad: Formal semantics and analysis of component connectors in reo, Electr. notes theor. Comput. sci. 154, No. 1, 83-99 (2006)
[35] Nierstrasz, Oscar: Piccola – a small compositional language (invited talk), IFIP conference Proceedings 139 (1999) · Zbl 1114.68356
[36] Rutten, J. J. M.M.: Coalgebra, concurrency, and control, Discrete event systems (Analysis and control), Proceedings of WODES 2000, 31-38 (2000) · Zbl 1017.93064
[37] Shaw, Mary; Garlan, David: Software architecture, (1996) · Zbl 0948.68506
[38] Szyperski, Clemens: Component software: beyond object-oriented programming, (2002) · Zbl 1033.68729
[39] Vogler, Walter: Modular construction and partial order semantics of Petri nets, (1992) · Zbl 1293.68015
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.