Title :
Comparing frameworks and layered refinement
Author :
Cardone, Richard ; Lin, Calvin
Author_Institution :
Dept. of Comput. Sci., Texas Univ., Austin, TX, USA
Abstract :
Object-oriented frameworks are a popular mechanism for building and evolving large applications and software product lines. We describe an alternative approach to software construction, Java Layers (JL), and evaluate JL and frameworks in terms of flexibility, ease of use, and support for evolution. Our experiment compares Schmidt´s (1998) ACE framework against a set of ACE design patterns that have been implemented in JL. We show how problems of framework evolution and overfeaturing can be avoided using JL´s component model, and we demonstrate that JL scales better than frameworks as the number of possible application features increases. Finally, we describe how constrained parametric polymorphism and a small number of language features can support JL´s model of loosely coupled components and stepwise program refinement.
Keywords :
Java; object-oriented programming; software reusability; ACE framework; JL; Java Layers; component model; constrained parametric polymorphism; design patterns; ease of use; experiment; framework evolution; layered refinement; loosely coupled components; object-oriented frameworks; software product lines; stepwise program refinement; Application software; Buildings; Computer architecture; Computer languages; Java; Measurement standards; Object oriented modeling; Runtime; Usability;
Conference_Titel :
Software Engineering, 2001. ICSE 2001. Proceedings of the 23rd International Conference on
Print_ISBN :
0-7695-1050-7
DOI :
10.1109/ICSE.2001.919102