TY - GEN
T1 - Designing a Framework by Stepwise Generalization
AU - Koskimies, Kai
AU - Mössenböck, Hanspeter
PY - 1995/9
Y1 - 1995/9
N2 - Frameworks are class collections that capture the common aspects of applications in a certain problem
domain. It is argued that conventional object-oriented design methods do not suit well to frameworks. As
an alternative, we suggest a two-phase design method. The first phase is a stepwise generalization of a
problem to its most general form. The second phase proceeds in the opposite direction, giving an
implementation for every generalization level. The implementation of a certain level can be regarded as a
framework for implementing the next more specific level. The main advantage of our method is that it
enhances the generality (and therefore reusability) of the framework architecture, and explains the design
decisions in the simplest possible context. As a case study, we describe a framework supporting the
analysis of formal languages.
AB - Frameworks are class collections that capture the common aspects of applications in a certain problem
domain. It is argued that conventional object-oriented design methods do not suit well to frameworks. As
an alternative, we suggest a two-phase design method. The first phase is a stepwise generalization of a
problem to its most general form. The second phase proceeds in the opposite direction, giving an
implementation for every generalization level. The implementation of a certain level can be regarded as a
framework for implementing the next more specific level. The main advantage of our method is that it
enhances the generality (and therefore reusability) of the framework architecture, and explains the design
decisions in the simplest possible context. As a case study, we describe a framework supporting the
analysis of formal languages.
UR - http://www.ssw.uni-linz.ac.at/Papers/Frameworks.ps.Z
U2 - 10.1007/3-540-60406-5_31
DO - 10.1007/3-540-60406-5_31
M3 - Conference proceedings
VL - 989
T3 - Lecture Notes in Computer Science (LNCS)
BT - 5th European Software Engineering Conference
ER -