Abstract
Component adaptation is widely recognised to be one of the crucial problems in Component-Based Software Engineering. We present a formal methodology for adapting components with mismatching interaction behaviours. The three main ingredients of the methodology are: (1) The inclusion of behaviour specifications in component interfaces, (2) a simple, high-level notation for expressing adaptor specifications, and (3) a fully automated procedure to derive a concrete adaptor from a given specification.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
R. Allen and D. Garlan. A formal basis for architectural connection. ACM Trans. on Software Engineering and Methodology, 6(3):213–49, 1997.
J. Bosch. Adapting object-oriented components. In 2nd. International Workshop on Component-Oriented Programming (WCOP’97), pages 13–22. Turku Centre for Computer Science, September 1997.
A. Bracciali, A. Brogi, and F. Turini. Coordinating interaction patterns. In ACM Symposium on Applied Computing (SAC’2001). ACM Press, 2001.
A.W. Brown and H.C. Wallnau. The current state of CBSE. IEEE Software, 1998.
G. H. Campbell. Adaptable components. In ICSE 1999, pages 685–686. IEEE Press, 1999.
C. Canal, E. Pimentel, and J. M. Troya. Specification and refinement of dynamic software architectures. In Software Architecture, pages 107–126. Kluwer, 1999.
C. Canal, E. Pimentel, and J. M. Troya. Compatibility and inheritance in software architectures. Science of Computer Programming, 41:105–138, 2001.
D. Chappell. Understanding ActiveX and OLE. Microsoft Press, 1996.
I. Cho, J. McGregor, and L. Krause. A protocol-based approach to specifying interoperability between objects. In Proceedings of TOOLS’26, pages 84–96. IEEE Press, 1998.
E. Clarke, O. Grumberg, and D. Long. Verification tools for finite-state concurrent systems. In A Decade of concurrency-Reflections and Perspectives, Lecture Notes in Computer Science, 803. Springer, 1994.
D. Compare, P. Inverardi, and A. L. Wolf. Uncovering architectural mismatch in component behavior. Science of Computer Programming, 33(2):101–131, 1999.
S. Ducasse and T. Richner. Executable connectors: Towards reusable design elements. In ACM Foundations of Software Engineering (ESEC/FSE’97), number 1301 in LNCS. Springer, 1997.
L.M.G. Feijs. Modelling Microsof COM using π-calculus. In Formal Methods’99, number 1709 in LNCS, pages 1343–1363. Springer, 1999.
D. Garlan, R. Allen, and J. Ockerbloom. Architectural mismatch: Why reuse is so hard. IEEE Software, 12(6):17–26, 1995.
D. Garlan and B. Schmerl. Component-based software engineering in pervasive computing environments. In 4th ICSE Workshop on Component-Based Software Engineering, 2001.
M. Gaspari and G. Zavattaro. A process algebraic specification of the new asynchronous CORBA messaging service. In Proceedings of ECOOP’99, number 1628 in LNCS, pages 495–518. Springer, 1999.
George T. Heineman. An evaluation of component adaptation techniques. In 2nd ICSE Workshop on Component-Based Software Engineering, 1999.
S. Hissam K. Wallnau and R. Seacord. Building Systems from Commercial Components. The SEI Series in Software Engineering, 2001.
J. Magee, S. Eisenbach, and J. Kramer. Modeling darwin in the π-calculus. In Theory and Practice in Distributed Systems, number 938 in LNCS, pages 133–152. Springer, 1995.
J. Magee, J. Kramer, and D. Giannakopoulou. Behaviour analysis of software architectures. In Software Architecture, pages 35–49. Kluwer, 1999.
Microsoft Corporation.. NET Programming the Web. http://msdn.microsoft.com.
R. Milner. The polyadic π-calculus: a tutorial. Technical report, University of Edinburgh, Octubre 1991.
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Journal of Information and Computation, 100:1–77, 1992.
A. P. Moore, J. E. Klinker, and D. M. Mihelcic. How to construct formal arguments that persuade certifiers. In Industrial-Strength Formal Methods in Practice. Springer, 1999.
E. Najm, A. Nimour, and JB. Stefani. Infinite types for distributed objects interfaces. In Proceedings of the third IFIP conference on Formal Methods for Open Object-based Distributed Systems-FMOODS’99. Kluwer, 1999.
O. Nierstrasz. Regular types for active objects. In O. Nierstrasz and D. Tsichritzis, editors, Object-Oriented Software Composition. Prentice Hall, 1995.
OMG. The Common Object Request Broker: Architecture and Specification. Object Management Group. http://www.omg.org.
R. H. Reussner. Enhanced component interfaces to support dynamic adaption and extension. In 34th Hawaiin International Conference on System Sciences. IEEE Press, 2001.
Sun Microsystems. JavaBeans API specification. http://java.sun.com.
A. Vallecillo, J. Hernández, and J. M. Troya. New issues in object interoperability. In Object-Oriented Technology: ECOOP 2000 Workshop Reader, number 1964 in LNCS, pages 256–269. Springer, 2000.
D. M. Yellin and R. E. Strom. Protocol specifications and components adaptors. ACM Trans. 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
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bracciali, A., Brogi, A., Canal, C. (2002). Adapting Components with Mismatching Behaviours. In: Bishop, J. (eds) Component Deployment. CD 2002. Lecture Notes in Computer Science, vol 2370. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45440-3_13
Download citation
DOI: https://doi.org/10.1007/3-540-45440-3_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43847-2
Online ISBN: 978-3-540-45440-3
eBook Packages: Springer Book Archive