Abstract
This paper investigates the compositional properties of reusable software components defined with explicit dependencies and behavioural contracts expressing rely-guarantee specifications in the form of communication traces. In this setting, connection of components through their matching ports is indeed compositional and yields a new component or composite that respects its constituents’ contracts. Thus the behaviour of the composite is computed from the behaviours of its constituents and is known to conform to the contracts without any new proof.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Szyperski, C.: Component Software – Beyong Object Oriented Programming, 2nd edn. Addison-Wesley / ACM Press, Reading (2002)
OMG: CORBA Components, Version 3.0, formal/02-06-65 (2003)
Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26, 70–93 (2000)
Plasil, F., Visnovsky, S.: Behavior protocols for software components. IEEE Transations on Software Engineering 28, 1056–1076 (2002)
Acherman, F., Nierstrasz, O.: Applications = Components + Scripts – A tour of Piccola. In: Software Architectures and Component Technology, Kluwer, Dordrecht (2001)
Allen, R., Garlan, D.: A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology 6, 213–249 (1997)
Magee, J., Dulay, N., Eisenbach, S., Kramer, J.: Specifying distributed software architectures. In: Botella, P., Schäfer, W. (eds.) ESEC 1995. LNCS, vol. 989, pp. 137–153. Springer, Heidelberg (1995)
ter Beek, M.H., Kleijn, J.: Team automata satisfying compositionality. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 381–400. Springer, Heidelberg (2003)
Simplot-Ryl, I., Bailly, A., Clerbout, M.: Component composition preserving behavioral contracts. Technical Report TR-05-01, Université des Sciences et Technologies de Lille, France (2005), http://www.lifl.fr/~ryl/publi/RR-2005-01.pdf
Charpentier, M.: Composing invariants. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 401–421. Springer, Heidelberg (2003)
Abadi, M., Lamport, L.: Conjoining specifications. ACM Transactions on Programming Languages and Systems 17, 507–534 (1995)
Aldrich, J., Chambers, C., Notkin, D.: Architectural reasoning in archjava. In: Magnusson, B. (ed.) ECOOP 2002. LNCS, vol. 2374, pp. 334–367. Springer, Heidelberg (2002)
Duboc, C.: Commutations dans les Monoides libres : un Cadre Théorique pour l’Étude du Parallélisme. PhD thesis, Université de Rouen, France (1986)
de Simone, R.: Langages infinitaires et produit de mixage. Theoretical Computer Science 31, 83–100 (1984)
Simplot-Ryl, I., Clerbout, M., Bailly, A.: Stac: Communication traces based specifictions and tests of software components. In: Proc. of the 15th Nordic Workshop on Programming Theory (NWPT 2003), Turku, Finland (2003)
Liskov, B., Wing, J.M.: A behavioral notion of subtyping. ACM Transactions on Programming Languages and Systems 16, 1811–1841 (1994)
Bracciali, A., Brogi, A., Canal, C.: A formal approach to component adaptation. Journal of Systems and Software 74, 45–54 (2005)
Moisan, S., Ressouche, A., Rigault, J.P.: Behavioral substitutability in component frameworks: A formal approach. In: ESEC/FSE 2003 Specification and Verification of Component-Based Systems Workshop, vol. TR #03-11 of Iowa State University, Helsinki, Finland (2003)
Canal, C., Fuentes, L., Troya, J., Vallecillo, A.: Extending CORBA interfaces with pi-calculus for protocol compatibility. In: Proc. TOOLS Europe 2000, Mont Saint-Michel, France, pp. 208–225. IEEE Computer Society Press, Los Alamitos (2000)
Harel, D., Kupferman, O.: On object systems and behavioral inheritance. IEEE Transactions on Software Engineering 28, 889–903 (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bailly, A., Clerbout, M., Simplot-Ryl, I. (2006). Component Composition Preserving Behavioural Contracts Based on Communication Traces. In: Farré, J., Litovsky, I., Schmitz, S. (eds) Implementation and Application of Automata. CIAA 2005. Lecture Notes in Computer Science, vol 3845. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11605157_5
Download citation
DOI: https://doi.org/10.1007/11605157_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-31023-5
Online ISBN: 978-3-540-33097-4
eBook Packages: Computer ScienceComputer Science (R0)