Vol: 48(62) No: 2 / June 2003 Using Propagation of Requirements for Semantic Composition of Components Ioana Sora Department of Computer Science, "Politehnica" University of Timisoara, Faculty of Automation and Computers, Bd. V. Parvan no 2, 1900 Timisoara, Romania, e-mail: ioana@cs.utt.ro Keywords: components, automatic composition, software architecture. Abstract In this paper we propose a composition strategy for multi-flow architecture. This strategy that takes automatic decisions for component composition is used as a means to achieve self-customizable systems that are able to adapt themselves through structural configuration to changing conditions in their environment. Our approach tackles composition at the semantic level: the compositional target is specified through a set of required properties imposed over its given structural constraints, while the composition decisions are taken knowing the properties provided by individual components. Properties characterize functional or non-functional aspects of a component. The composition strategy is driven by a mechanism of propagation of requirements, detailed in this paper. References [1] R. Allen, D. Garlan, ” A formal basis for architectural connection,” ACM Transactions on Software Engineering and Methodology, Vol. 6, No. 3, pages 213-249, 1997. [2] D. Batory, G. Chen, E. Robertson, T. Wang, “Design Wizards and Visual Programming Environments for GenVoca Generators”, IEEE Transactions on Software Engineering, Vol.26, No. 5, May 2000. [3] D. Batory, B. Geraci,” Composition Validation and Subjectivity in GenVoca Generators”, IEEE Transactions on Software Engineering, special issue on Software Reuse, 67-82, February 1997. [4] S.A. Hissam, G.A. Moreno, J.A. Stafford, K. C. Wallnau., “Packaging predictable assembly”. In IFIP/ACM Working Conference on Component Deployment (CD2002), Berlin, Germany, June 2002. [5] P. Inverardi and M. Tivoli, “Deadlock-free software architectures for COM/DCOM applications”, Journal of Systems and Software, Special Issue on Component-Based Software Engineering, 65(3):173-183, March 2003. [6] D.E. Perry, “Software Interconnection Models”, Proceedings of the 9th International Conference on Software Engineering, pp. 61-69, Monterey CA, March 1987. [7] D. E. Perry. “The logic of propagation in the Inscape environment”. In Proceedings of SIGSOFT \'89: Testing, Analysis and Verification Symposium, Key West FL, USA, December 1989. [8] R. Reussner. “Enhanced component interfaces to support dynamic adap- tation and extension”. In Proceedings of the 34th Hawaii International Conference on System Science, 2001. [9] M. Shaw, “Truth vs Knowledge: The Difference Between What a Component Does and What We Know It Does”, Proceedings of the 8th International Workshop on Software Specification and Design, pp. 181-185, 1996. [10] H. Schmidt, R. Reussner. “Automatic component adaptation by concurrent state machine retrofitting”. Technical Report 2000/81, School of Computer Science and Software Engineering, Monash University, Melbourne, Australia, 2000. [11] P. Schollaert, W. Vanderperren, D. Suvee, V. Jonckers. “Online reconfiguration of component-based applications in PacoSuite”. In Proceedings of Workshop on Software Composition, afiliated with ETAPS 2003, volume 82 of Electronic Notes in Theorethical Computer Science, Elsevier, Warsaw, Poland, 2003. [12] J.A. Stafford and A.L. Wolf, “Architecture-Level Dependence Analysis for Software Systems”, International Journal of Software Engineering and Knowledge Engineering, Vol.11, No.4, pp. 431-452, August 2001. [13] C. Szypersky. Component Software: Beyond Object Oriented Programming. Addison-Wesley, 1997. [14] I. Sora, F. Matthijs, Y. Berbers, and P. Verbaeten, “Automatic Composition of Systems from Components with Anonymous Dependencies”, in Technology of Object-Oriented Languages, Systems and Architectures (T. D\'Hondt, editor), pp. 154-170, Kluwer Academic Publishers, 2003. [15] I. Sora, Y. Berbers and P.Verbaeten, “A Description Language for Composable Components”, in Fundamental Approaches to Software Engineering, pp. 22-36, Springer Verlag LNCS 2621, 2003. [16] I. Sora, P. Verbaeten and Y. Berbers, “Using component composition for self-customizable systems”. In I. Crnkovic, J. Stafford, and S. Larsson, editors, Proceedings - Workshop On Component-Based Software Engineering: Composing Systems from Components, pages 23-26, Lund, Sweden, 2002. |