Abstract
In this paper, we discuss a method of composing a system from components with anonymous dependencies. We make observations based on our experience with defining and implementing a composition mechanism for layered architectures. We propose a manner of specifying component descriptions by means of semantic-unaware properties, an application-domain independent formalism for describing the client-specific configuration requests in terms of desired properties, and a composition algorithm that works well in these conditions.
Secondly, we argue that the composition method should be independent from the application domain, only architecture-style dependent. In order to permit the user to specify the application requirements in a higher-level abstraction that considers the domain-specific semantics, we recommend a two-phase composition process comprising the deployment of domain-specific front-end tools for the “translation” of requirements. We illustrate with an example of automatic composition of protocol stacks within DiPS [13], our Distrinet Protocol Stack framework for building network subsystems. The integration of an automatic composition module into DiPS has validated our approach as a simple but powerful tool for customizing software to support client-specific requirements.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Noriki Amano, Takuo Watanabe, “An Approach for Constructing Dynamically Adaptable Component-based Software Systems using LEAD++”, OOPSLA′99 Workshop on Reflection and Software Engineering, 1999.
Gordon S. Blair, Geoff Coulson, Phillippe Robin, and Michael Papathomas, “An Architecture for Next Generation Middleware”, in Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware′98), Lake District, UK, Editors: Davies, N., Raymond, K., Seitz, J., Springer-Verlag, 1998.
Don Batory, Gang Chen, Eric Robertson, Tao Wang, “Design Wizards and Visual Programming Environments for GenVoca Generators”, IEEE Transactions on Software Engineering, Vol. 26, No.5, May 2000.
Don Batory, Bart Geraci, “Validating Component Composition and Subjectivity in GenVoca Generators”, IEEE Transactions on Software Engineering, Vol.23, No.2, Feb. 1997.
D. Batory, S. O’Malley, “The Design and Implementation of Hierarchical Software Systems with Reusable Components”, ACM Transactions on Software Engineering and Methodology, October 1992.
Krzystof Czarnecki, Ulrich Eisenecker, “Components and Generative Programming”, in Proceedings of ESEC/FSE′99, LNCS 1687, Springer, 1999, pp. 2–19.
Krzystof Czarnecki, Ulrich Eisenecker, “Synthesizing Objects”, in Proceedings of ECOOP′99, LNCS 1628, Springer, 1999, pp. 18–42.
Sunshil Da Silva, Danilo Florissi, Yechiam Yemini, “Composing Active Services in NetScript”, DARPA Active Networks Workshop, 1998.
Richard Hayton, Matthew Faupel, “FlexiNet: Automating Application Deployment and Evolution”, Workshop on Compositional Software Architectures, Monterey, California, January 6–8, 1998.
Paola Inverardi, Alexander Wolf, Daniel Yankelevich, “Checking Assumptions in Component Dynamics at the Architectural Level”, in Proceedings of the 2nd International Conference on Coordination Models and Languages, LNCS 1282, Springer, 1997.
Fabio Kon, Automatic Configuration of Component-Based Distributed Systems, PhD Thesis, University of Illinois at Urbana-Champaign, 2000.
Fabio Kon, Roy Campbell, “Dependence Management in Component-Based Distributed Systems”, IEEE Concurrency 8(1), Jan–March 2000.
Frank Matthijs, Component Framework Technology for Protocol Stacks, PhD Thesis, Katholieke Universiteit Leuven, Belgium, December 1999.
Sam Michiels, Tom Mahieu, Frank Matthijs, and Pierre Verbaeten, “Dynamic protocol stack composition: Protocol independent addressing”, in Proceedings of the 4th ECO OP Workshop on Object-Orientation and Operating Systems, ECOOP-OOOSWS′2001, June 2001.
Sam Michiels, Frank Matthijs, Dirk Walravens, Pierre Verbaeten, “DiPS: A Unifying Approach for Developing System Software”, in Proceedings of the 8th Workshop on Hot Topics in Operating Systems (HotOS-VIII), May 2001.
Jeff Magee, N. Dulay, Susan Eisenbach, Jeff Kramer, “Specifying Distributed Software Architectures”, in Proceedings of the 5th European Software Engineering Conference (ESEC95), LNCS 989, Springer, 1995, pp. 137–153.
Nenad Medvidovic, Richard Taylor, “A Classification and Composition Framework for Software Architecture Description Languages”, IEEE Transactions on Software Engineering, Vol. 26, No. l, January 2000.
Mira Mezini, Karl Lieberherr, “Adaptive Plug-and-Play Components for Evolutionary Software Development”, in Proceedings of OOPSLA′98, Special Issue of Sigplan Notices, October 1998, pp. 97–116.
Nikos Parlavantzas, Geoff Coulson, Mike Clarke, and Gordon Blair, “Towards a Reflective Component Based Middleware Architecture”, in Workshop on Reflection and Metalevel Architectures, Sophia Antipolis and Cannes, France, June 2000.
Mary Shaw, Robert DeLine, Gregory Zelesnik, “Abstractions and Implementations for Architectural Connections”, in Proceedings of the International Conference on Configurable Distributed Systems, Annapolis, Maryland, 1996.
S. W. O’Malley and L. L. Peterson, “A dynamic network architecture”. ACM Transactions on Computer Systems, 10(2), May 1992.
Jean-Guy Schneider, Oscar Nierstrasz, “Components, Scripts and Glue”, in Software Architecture — Advances and Applications, Leonor Barroca, John Hall and Patrick Hall (Eds.), Springer, 1999.
S. Terzis, P. Nixon, “Component Trading: The basis for a Component-Oriented Development Framework”, 4th International Workshop on Component-Oriented Programming (WCOP 99) at ECOOP 99, June 1999.
Eddy Truyen, Bo N. Joergensen, Wouter Joosen, “Customization of Object Request Brokers through Dynamic Reconfiguration”, in Proceedings of TOOLS Europe 2000, Mont-St-Michel, France, 2000, pp. 97–116.
Michel Wermelinger, “Towards a Chemical Model for Software Architecture Reconfiguration”, in Proceedings of the 4th Intl. Conf. on Configurable Distributed Systems, IEEE Computer Society Press, 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer Science+Business Media New York
About this chapter
Cite this chapter
Şora, I., Matthijs, F., Berbers, Y., Verbaeten, P. (2003). Automatic composition of systems from components with anonymous dependencies specified by semantic-unaware properties. In: D’Hondt, T. (eds) Technology of Object-Oriented Languages, Systems and Architectures. The Kluwer International Series in Engineering and Computer Science, vol 732. Springer, Boston, MA. https://doi.org/10.1007/978-1-4615-0413-9_11
Download citation
DOI: https://doi.org/10.1007/978-1-4615-0413-9_11
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4613-5064-4
Online ISBN: 978-1-4615-0413-9
eBook Packages: Springer Book Archive