Faculty of Computer Science Database Workgroup

Design Patterns in Collaboration-Based Designs


The Story:
  • Design patterns provide flexible, adaptable, and reusable solutions to recurring problems in object-oriented Programming. The Gang-of-Four (GoF) design patterns [5] are 23 of the most popular design patterns in object-orientation. Design patterns propose arrangements and associations of software artifacts to implement common tasks in programming. Other researchers observed that design pattern implementations lack desired properties of high-quality software, like modularity, crosscutting, amongst others [5,8]. Collaboration-based designs embrace multiple technologies that extend object-oriented concepts to further improve modularity, extensibility, and flexibility of software [6,7]. Collaboration-based designs can be used to implement design patterns in a way different to object-oriented programming.

    In this project we evaluate the use of new programming techniques, like aspect-oriented programming and collaboration-based designs, to cope with the implementation of design patterns in software. We reimplemented the aspect-oriented design pattern implementations of Hannemann et al. [6] using collaboration-based designs and evaluated these implementations using properties essential for modular software [2,3]. During this project we also discovered the duality of mechanisms of aspect-oriented and feature-oriented programming [4]. Finally, we report on the application of these pattern implementation approaches in programs of larger size[1].
People:
Publications:
Related Work: