Abstract
Component-Based Software Engineering (CBSE) is one of the approaches to master the development of large scale software. In this setting, the verification concern is still a challenge. The current work addresses the composability of components and their services. A component model (Kmelia) is introduced; an associated formalism, simple but expressive is introduced; it describes the services as extended LTSs and their structuring as components. The composability of components is defined on the basis of the composability of services. To ensure the correctness of component composition, we check that an assembly is possible via the checking of the composability of the linked services, and their behavioural compatibility. In order to mechanize our approach, the services and the components are translated into the Lotos formalism. Finally the Lotos CADP toolbox is used to perform experiments.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Allen, R., Garlan, D.: A Formal Basis for Architectural Connection. ACM Transactions on Software Engineering and Methodology 6(3), 213–249 (1997)
André, P., Ardourel, G., Attiogbé, C.: Behavioural Verification of Service Composition. In: ICSOC/Workshop on Engineering Service Compositions, WESC 2005 (2005)
André, P., Ardourel, G., Attiogbé, C., Habrias, H., Stoquer, C.: A Service-Based Component Model: Formalism, Analysis and Mechanization. Technical Report RR05.08, LINA (December 2005)
Attie, P.C., Lorenz, D.H.: Correctness of Model-based Component Composition without State Explosion. In: Cardelli, L. (ed.) ECOOP 2003. LNCS, vol. 2743. Springer, Heidelberg (2003)
Attie, P.C., Lorenz, D.H.: Establishing Behavioral Compatibility of Software Components without State Explosion. Technical Report NU-CCIS-03-02, College of Computer and Information Science, Northeastern University (2003)
Bergner, K., Rausch, A., Sihling, M., Vilbig, A., Broy, M.: A Formal Model for Componentware. In: Leavens, G.T., Sitaraman, M. (eds.) Foundations of Component-Based Systems, pp. 189–210. Cambridge University Press, New York (2000)
Bracciali, A., Brogi, A., Canal, C.: A Formal Approach to Component Adaptation. Journal of Systems and Software 74(1), 45–54 (2005)
de Alfaro, L., Henzinger, T.A.: Interface Automata. In: Proceedings of the Ninth Annual Symposium on Foundations of Software Engineering (FSE), pp. 109–120. ACM Press, New York (2001)
Fernandez, J.-C., Garavel, H., Kerbrat, A., Mateescu, R., Mounier, L., Sighireanu, M.: CADP: A Protocol Validation and Verification Toolbox. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 437–440. Springer, Heidelberg (1996)
Giannakopoulou, D., Kramer, J., Cheung, S.C.: Behaviour Analysis of Distributed Systems Using the Tracta Approach. ASE 6(1), 7–35 (1999)
Gschwind, T., Aßmann, U., Nierstrasz, O. (eds.): SC 2005. LNCS, vol. 3628. Springer, Heidelberg (2005)
Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2005. LNCS, vol. 3489. Springer, Heidelberg (2005)
Inverardi, P., Wolf, A.L., Yankelevich, D.: Static Checking of System Behaviors using Derived Component Assumptions. ACM Transactions on Software Engineering and Methodology 9(3), 239–272 (2000)
ISO LOTOS: A Formal Description Technique Based on The Temporal Ordering of Observational Behaviour. International Organisation for Standardization - Information Processing Systems - Open Systems Interconnection, Geneva (1988)
Medvidovic, N., Taylor, R.N.: A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)
Pavel, S., Noyé, J., Poizat, P., Royer, J.C.: A Java Implementation of a Component Model with Explicit Symbolic Protocols. In: Gschwind et al. (eds.) [11], pp. 115–124
Plasil, F., Visnovsky, S.: Behavior Protocols for Software Components. IEEE Transactions on SW Engineering 28(9) (2002)
Südholt, M.: A Model of Components with Non-regular Protocols. In: Gschwind et al. (eds.) [11], pp. 99–113
Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison Wesley Publishing Company, Reading (1997)
Xie, F., Browne, J.C.: Verified Systems by Composition from Verified Components. In: ESEC/FSE-11: Proc. of the 9th European software engineering conference, New York, NY, USA, pp. 277–286. ACM Press, New York (2003)
Yellin, D.M., Strom, R.E.: Protocol Specifications and Component Adaptors. ACM Transactions on Programming Languages and Systems 19(2), 292–333 (1997)
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
Attiogbé, C., André, P., Ardourel, G. (2006). Checking Component Composability. In: Löwe, W., Südholt, M. (eds) Software Composition. SC 2006. Lecture Notes in Computer Science, vol 4089. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11821946_2
Download citation
DOI: https://doi.org/10.1007/11821946_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-37657-6
Online ISBN: 978-3-540-37659-0
eBook Packages: Computer ScienceComputer Science (R0)