Design Pattern Concerns for Software Evolution

Natsuko Noda, Tomoji Kishi

Research output: Chapter in Book/Report/Conference proceedingConference contribution

10 Citations (Scopus)

Abstract

Most design patterns help to make systems flexible and extensible. They have potential effects to support evolutionary software development. Ordinary implementation of design patterns, however, is not always enough for evolution. It is based on the inheritance mechanism. This makes application classes quite dependent on patterns and reduces reusability of application classes. In addition, it is difficult to exchange patterns once a system is designed. In this paper, we introduce a way to implement design patterns more flexibly, applying the concept of separation of concerns. It is realized by separating design patterns, as explicit concerns, from the application core that is responsible for the primary functionalities. The new implementation technologies that support the advanced separation of concerns such as Hyper/J™ help with coding this kind of design. Using an example, we show that it is possible to exchange patterns to support different behavior without any change on the application core. Our approach has an advantage that reusability of both design patterns and the application core is improved.

Original languageEnglish
Title of host publicationInternational Workshop on Principles of Software Evolution (IWPSE)
EditorsT. Tamai, M. Aoyama, K. Bennett
Pages158-161
Number of pages4
Publication statusPublished - 2001
Externally publishedYes
Event4th International Workshop on Principles of Software Evolution - Vienna
Duration: 2001 Sep 102001 Sep 11

Other

Other4th International Workshop on Principles of Software Evolution
CityVienna
Period01/9/1001/9/11

Fingerprint

Reusability
Software engineering

Keywords

  • Advanced separation of concerns
  • Design pattern
  • Hyper/J
  • Software evolution

ASJC Scopus subject areas

  • Software

Cite this

Noda, N., & Kishi, T. (2001). Design Pattern Concerns for Software Evolution. In T. Tamai, M. Aoyama, & K. Bennett (Eds.), International Workshop on Principles of Software Evolution (IWPSE) (pp. 158-161)

Design Pattern Concerns for Software Evolution. / Noda, Natsuko; Kishi, Tomoji.

International Workshop on Principles of Software Evolution (IWPSE). ed. / T. Tamai; M. Aoyama; K. Bennett. 2001. p. 158-161.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Noda, N & Kishi, T 2001, Design Pattern Concerns for Software Evolution. in T Tamai, M Aoyama & K Bennett (eds), International Workshop on Principles of Software Evolution (IWPSE). pp. 158-161, 4th International Workshop on Principles of Software Evolution, Vienna, 01/9/10.
Noda N, Kishi T. Design Pattern Concerns for Software Evolution. In Tamai T, Aoyama M, Bennett K, editors, International Workshop on Principles of Software Evolution (IWPSE). 2001. p. 158-161
Noda, Natsuko ; Kishi, Tomoji. / Design Pattern Concerns for Software Evolution. International Workshop on Principles of Software Evolution (IWPSE). editor / T. Tamai ; M. Aoyama ; K. Bennett. 2001. pp. 158-161
@inproceedings{16137cf608a24c32ab568dbbe4a5bb27,
title = "Design Pattern Concerns for Software Evolution",
abstract = "Most design patterns help to make systems flexible and extensible. They have potential effects to support evolutionary software development. Ordinary implementation of design patterns, however, is not always enough for evolution. It is based on the inheritance mechanism. This makes application classes quite dependent on patterns and reduces reusability of application classes. In addition, it is difficult to exchange patterns once a system is designed. In this paper, we introduce a way to implement design patterns more flexibly, applying the concept of separation of concerns. It is realized by separating design patterns, as explicit concerns, from the application core that is responsible for the primary functionalities. The new implementation technologies that support the advanced separation of concerns such as Hyper/J™ help with coding this kind of design. Using an example, we show that it is possible to exchange patterns to support different behavior without any change on the application core. Our approach has an advantage that reusability of both design patterns and the application core is improved.",
keywords = "Advanced separation of concerns, Design pattern, Hyper/J, Software evolution",
author = "Natsuko Noda and Tomoji Kishi",
year = "2001",
language = "English",
pages = "158--161",
editor = "T. Tamai and M. Aoyama and K. Bennett",
booktitle = "International Workshop on Principles of Software Evolution (IWPSE)",

}

TY - GEN

T1 - Design Pattern Concerns for Software Evolution

AU - Noda, Natsuko

AU - Kishi, Tomoji

PY - 2001

Y1 - 2001

N2 - Most design patterns help to make systems flexible and extensible. They have potential effects to support evolutionary software development. Ordinary implementation of design patterns, however, is not always enough for evolution. It is based on the inheritance mechanism. This makes application classes quite dependent on patterns and reduces reusability of application classes. In addition, it is difficult to exchange patterns once a system is designed. In this paper, we introduce a way to implement design patterns more flexibly, applying the concept of separation of concerns. It is realized by separating design patterns, as explicit concerns, from the application core that is responsible for the primary functionalities. The new implementation technologies that support the advanced separation of concerns such as Hyper/J™ help with coding this kind of design. Using an example, we show that it is possible to exchange patterns to support different behavior without any change on the application core. Our approach has an advantage that reusability of both design patterns and the application core is improved.

AB - Most design patterns help to make systems flexible and extensible. They have potential effects to support evolutionary software development. Ordinary implementation of design patterns, however, is not always enough for evolution. It is based on the inheritance mechanism. This makes application classes quite dependent on patterns and reduces reusability of application classes. In addition, it is difficult to exchange patterns once a system is designed. In this paper, we introduce a way to implement design patterns more flexibly, applying the concept of separation of concerns. It is realized by separating design patterns, as explicit concerns, from the application core that is responsible for the primary functionalities. The new implementation technologies that support the advanced separation of concerns such as Hyper/J™ help with coding this kind of design. Using an example, we show that it is possible to exchange patterns to support different behavior without any change on the application core. Our approach has an advantage that reusability of both design patterns and the application core is improved.

KW - Advanced separation of concerns

KW - Design pattern

KW - Hyper/J

KW - Software evolution

UR - http://www.scopus.com/inward/record.url?scp=1442327900&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=1442327900&partnerID=8YFLogxK

M3 - Conference contribution

SP - 158

EP - 161

BT - International Workshop on Principles of Software Evolution (IWPSE)

A2 - Tamai, T.

A2 - Aoyama, M.

A2 - Bennett, K.

ER -