The main goal of component-based software engineering is to decrease development time and development costs of software systems, by reusing prefabricated building blocks. Here we focus on software reuse within the implementation of such component-based applications, and on the corresponding software development process. As it turns out, achieving effective reuse practice between the components of a single application and between the components of multiple applications has serious effects on the complexity of the software development process. While software reuse demands for separation (of reusable blocks), the software development process demands for integration. Consequently, achieving optimal software reuse practice and an efficient development process are goals that seem hard to unite. Here we discuss how these goals can be combined. We propose techniques that promote fine-grained software reuse across system, group, and institute boundaries, as well as integrated development of component compositions. We describe these techniques and demonstrates how they can be used in practice.
|Title of host publication||Proceedings 29th Euromicro Conference (Belek-Antalya, Turkey, September 1-6, 2003)|
|Editors||G. Chroust, C. Hofer|
|Place of Publication||Los Alamitos CA|
|Publisher||IEEE Computer Society|
|Publication status||Published - 2003|