Pattern transformation for two-dimensional separation of concerns

  • Authors:
  • Xiaoqing Wu

  • Affiliations:
  • University of Alabama at Birmingham, Birmingham, AL

  • Venue:
  • OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Design patterns are applied in software development to decouple individual concerns, so that a change in a design decision is isolated to one location of the code base. However, multi-dimensional concerns exist in software development and some concerns are even mutually exclusive. Therefore, no single design pattern offers a panacea toward addressing problems of change evolution. By analyzing the matrix of concerns during the software development process, this abstract describes a paradigm for two-dimensional separation of concerns based on pattern transformation. In particular, it shows an example to transform code back and forth between an object-oriented implementation of the Inheritance pattern and an aspect-oriented implementation of the Visitor pattern. The approach allows the same software to be evolved along different dimensions, enabling developers to choose the most appropriate dimension for a given task.