Skip to main content

Designing a framework by stepwise generalization

  • Conference paper
  • First Online:
Book cover Software Engineering — ESEC '95 (ESEC 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 989))

Included in the following conference series:

Abstract

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.

This work was done during the first author's visit at the University of Linz.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Apple Computer: MacAppII Programmer's Guide. Apple Computer Inc., Cupertino, CA, 1989.

    Google Scholar 

  2. Beck K., Johnson R.: Patterns Generate Architectures. In: ECOOP '94, LNCS 821, 139–149.

    Google Scholar 

  3. Cox B.J.: Object Oriented Programming — An Evolutionary Approach. Addison-Wesley 1987.

    Google Scholar 

  4. Fukunaga A., Kimura T., Pree W.: Object-Oriented Development of a Data Flow Visual Language System. In: Proc. of IEEE Visual Language Symposium '93, Bergen, Norway (August 1993), 134–141.

    Google Scholar 

  5. Gamma E., Helm R., Johnson R., Vlissides J.: Design Patterns: Elements of Object-Oriented Software Architecture. Addison-Wesley 1995.

    Google Scholar 

  6. Graver J.O.: The Evolution of an Object-Oriented Compiler Framework. Software Practice & Experience 22(7), July 1992, 519–535.

    Google Scholar 

  7. Johnson R.E.: Documenting Frameworks with Patterns. In: OOPSLA '92, Sigplan Notices 27(10), October 1992, 63–76.

    Google Scholar 

  8. Koskimies K.: Object-orientation in attribute grammars. In: Attribute Grammars, Applications and Systems, Lecture Notes in Computer Science 545 (eds. H. Alblas and B. Melichar), Springer-Verlag 1991, 297–329.

    Google Scholar 

  9. Koskimies K., Mössenböck H.: Designing an Object-Oriented Framework for Language Implementation. Report 2, Department of Systems Software, University of Linz, 1995.

    Google Scholar 

  10. Järnvall E., Koskimies K., Niittymäki M.: Object-Oriented Language Engineering with TaLE. Manuscript, to appear in Object-Oriented Systems.

    Google Scholar 

  11. Krasner G.E., Pope S.T.: A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80. JOOP 1(3), August/sept 1988, 26–49.

    Google Scholar 

  12. Mössenböck H.: Object-Oriented Programming in Oberon-2. Springer-Verlag 1993.

    Google Scholar 

  13. Mössenböck H., Wirth N.: The Programming Language Oberon-2. Structured Programming 12,4 (1991), 179–195.

    Google Scholar 

  14. Pree W.: Design Patterns for Object-Oriented Software Development. Addison-Wesley 1995.

    Google Scholar 

  15. Rumbaugh J., Blaha M., Premerlani W., Eddy F., Lorensen W.: Object-Oriented Modelling and Design. Prentice-Hall, 1991.

    Google Scholar 

  16. Weinand A., Gamma E., Marty R.: ET++ — An Object-Oriented Application Framework in C++. In: OOPSLA '88, Sigplan Notices 23(11), October 1988, 46–57.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kai Koskimies .

Editor information

Wilhelm Schäfer Pere Botella

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Koskimies, K., Mössenböck, H. (1995). Designing a framework by stepwise generalization. In: Schäfer, W., Botella, P. (eds) Software Engineering — ESEC '95. ESEC 1995. Lecture Notes in Computer Science, vol 989. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60406-5_31

Download citation

  • DOI: https://doi.org/10.1007/3-540-60406-5_31

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60406-8

  • Online ISBN: 978-3-540-45552-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics