Home > Research > Publications & Outputs > Aspect-oriented software development
View graph of relations

Aspect-oriented software development: an introduction

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNChapter (peer-reviewed)

Published

Standard

Aspect-oriented software development: an introduction. / Brichau, Johan; Chitchyan, Ruzanna; Rashid, Awais et al.
Wiley Encyclopedia of Computer Science and Engineering 2008. John Wiley and Sons, 2008.

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNChapter (peer-reviewed)

Harvard

Brichau, J, Chitchyan, R, Rashid, A & D'Hondt, T 2008, Aspect-oriented software development: an introduction. in Wiley Encyclopedia of Computer Science and Engineering 2008. John Wiley and Sons. https://doi.org/10.1002/9780470050118.ecse022

APA

Brichau, J., Chitchyan, R., Rashid, A., & D'Hondt, T. (2008). Aspect-oriented software development: an introduction. In Wiley Encyclopedia of Computer Science and Engineering 2008 John Wiley and Sons. https://doi.org/10.1002/9780470050118.ecse022

Vancouver

Brichau J, Chitchyan R, Rashid A, D'Hondt T. Aspect-oriented software development: an introduction. In Wiley Encyclopedia of Computer Science and Engineering 2008. John Wiley and Sons. 2008 doi: 10.1002/9780470050118.ecse022

Author

Brichau, Johan ; Chitchyan, Ruzanna ; Rashid, Awais et al. / Aspect-oriented software development : an introduction. Wiley Encyclopedia of Computer Science and Engineering 2008. John Wiley and Sons, 2008.

Bibtex

@inbook{81c2a5edb29d4b1b97597bcd75b439dc,
title = "Aspect-oriented software development: an introduction",
abstract = "Modularity of software has long been the primary mechanism used in software development to improve reuse and support maintainability. However, certain concerns do not fit the module boundaries in contemporary software-development paradigms. The consequence of such crosscutting concerns, such as logging, persistence, security, and so forth, is that the responsibilities of the individual modules are not clearly demarcated. Not only is a module responsible for its core state and behavior (pertaining to its business functionality, for instance) but also for that of the crosscutting concern (such as logging). This phenomenon is referred to as tangling. At the same time, we observe the scattering effect whereby a given crosscutting concem,for example, logging, is not modularized in a single element and hence hampers our ability to reason about its effect and behavior with respect to the other modules; such reasoning requires inspection of all the modules where logging is realized. This requirement goes against the established best practice of separation of concerns because the crosscutting effect results in software that is difficult to understand and maintain. Addressing this problem of crosscutting is the main focus of aspect-oriented software-development (AOSD) techniques. In this article, we provide an introduction to AOSD by highlighting how it provides systematic support for identification, modularization, and composition of crosscutting concerns throughout the software lifecycle.",
keywords = "modularity, composition , aspect-oriented software development , crosscutting , aspect-oriented programming, aspect-oriented requirements engineering , aspect-oriented analysis and design",
author = "Johan Brichau and Ruzanna Chitchyan and Awais Rashid and Theo D'Hondt",
year = "2008",
doi = "10.1002/9780470050118.ecse022",
language = "English",
booktitle = "Wiley Encyclopedia of Computer Science and Engineering 2008",
publisher = "John Wiley and Sons",

}

RIS

TY - CHAP

T1 - Aspect-oriented software development

T2 - an introduction

AU - Brichau, Johan

AU - Chitchyan, Ruzanna

AU - Rashid, Awais

AU - D'Hondt, Theo

PY - 2008

Y1 - 2008

N2 - Modularity of software has long been the primary mechanism used in software development to improve reuse and support maintainability. However, certain concerns do not fit the module boundaries in contemporary software-development paradigms. The consequence of such crosscutting concerns, such as logging, persistence, security, and so forth, is that the responsibilities of the individual modules are not clearly demarcated. Not only is a module responsible for its core state and behavior (pertaining to its business functionality, for instance) but also for that of the crosscutting concern (such as logging). This phenomenon is referred to as tangling. At the same time, we observe the scattering effect whereby a given crosscutting concem,for example, logging, is not modularized in a single element and hence hampers our ability to reason about its effect and behavior with respect to the other modules; such reasoning requires inspection of all the modules where logging is realized. This requirement goes against the established best practice of separation of concerns because the crosscutting effect results in software that is difficult to understand and maintain. Addressing this problem of crosscutting is the main focus of aspect-oriented software-development (AOSD) techniques. In this article, we provide an introduction to AOSD by highlighting how it provides systematic support for identification, modularization, and composition of crosscutting concerns throughout the software lifecycle.

AB - Modularity of software has long been the primary mechanism used in software development to improve reuse and support maintainability. However, certain concerns do not fit the module boundaries in contemporary software-development paradigms. The consequence of such crosscutting concerns, such as logging, persistence, security, and so forth, is that the responsibilities of the individual modules are not clearly demarcated. Not only is a module responsible for its core state and behavior (pertaining to its business functionality, for instance) but also for that of the crosscutting concern (such as logging). This phenomenon is referred to as tangling. At the same time, we observe the scattering effect whereby a given crosscutting concem,for example, logging, is not modularized in a single element and hence hampers our ability to reason about its effect and behavior with respect to the other modules; such reasoning requires inspection of all the modules where logging is realized. This requirement goes against the established best practice of separation of concerns because the crosscutting effect results in software that is difficult to understand and maintain. Addressing this problem of crosscutting is the main focus of aspect-oriented software-development (AOSD) techniques. In this article, we provide an introduction to AOSD by highlighting how it provides systematic support for identification, modularization, and composition of crosscutting concerns throughout the software lifecycle.

KW - modularity

KW - composition

KW - aspect-oriented software development

KW - crosscutting

KW - aspect-oriented programming

KW - aspect-oriented requirements engineering

KW - aspect-oriented analysis and design

U2 - 10.1002/9780470050118.ecse022

DO - 10.1002/9780470050118.ecse022

M3 - Chapter (peer-reviewed)

BT - Wiley Encyclopedia of Computer Science and Engineering 2008

PB - John Wiley and Sons

ER -