Comparing frameworks and layered refinement

  • Authors:
  • Richard Cardone;Calvin Lin

  • Affiliations:
  • Department of Computer Sciences, University of Texas at Austin, Austin, Tx;Department of Computer Sciences, University of Texas at Austin, Austin, Tx

  • Venue:
  • ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Object-oriented frameworks are a popular mechanism for building and evolving large applications and software product lines. This paper describes an alternative approach to software construction, Java Layers (JL), and evaluates JL and frameworks in terms of flexibility, ease of use, and support for evolution. Our experiment compares Schmidt's 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.