UNIVERSITY OF HELSINKI DEPARTMENT OF COMPUTER SCIENCE

Tools Supporting the Use of Design Patterns in Frameworks

Jukka Viljamaa

Department of Computer Science, University of Helsinki
Report C-1997-25
March 1997
38 pages

Abstract

Application frameworks are probably the most effective method to promote reuse in software development available today. They support concrete architectural reuse by laying down the application logic and by letting the user to derive solutions for their specific needs. Many industrial strength frameworks have been available for quite some time. At the moment frameworks are evolving towards compositional systems from which users can instantiate and parameterize their own applications without any knowledge of the internals of the frameworks. This makes frameworks accessible for ever wider audience.

Over the last three years also the reuse of abstract design solutions has gained success in the form of design patterns. They help in communicating the best practices in software design and serve as a solid basis for object-oriented software development.

FRED (Framework Editor for Java - Support for Framework Development and Use), a joint project of universities of Helsinki and Tampere, aims at developing methodologies and tools for framework design and reuse. Tools will be implemented in Java language because it provides full portability, clean object-oriented abstractions, and a number of standard packages, e.g. for networking and graphical user interfaces. Design patterns form the foundation for these tools. Patterns provide an informal, but well-structured way to capture the knowledge of experienced software engineers. At the same time they reduce complexity and increase flexibility of designs.

In this preliminary report we discuss the fundamental properties of application frameworks and design patterns. We also take a look at some existing pattern related CASE tools.

Keywords: Design Patterns, Application Frameworks, CASE Tools

CR Classification: D.1.5, D.2.2, D.2.6, D.2.7, 2.2.10


Latest update Mar 21, 1997 by Jukka Viljamaa.