Simple crosscutting concerns are not so simple: Analysing variability in large-scale idioms-based implementations

Magiel Bruntink, Arie van Deursen, Maja d'Hondt, Tom Tourwé

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

20 Citations (Scopus)

Abstract

This paper describes a method for studying idioms-based implementations of crosscutting concerns, and our experiences with it in the context of a real-world, large-scale embedded software system. In particular, we analyse a seemingly simple concern, tracing, and show that it exhibits significant variability, despite the use of a prescribed idiom. We discuss the consequences of this variability in terms of how aspect-oriented software development techniques could help prevent it, how it paralyses (automated) migration efforts, and which aspect language features are required in order to obtain precise and concise aspects. Additionally, we elaborate on the representativeness of our results and on the usefulness of our proposed method.
Original languageEnglish
Title of host publicationAOSD'07
Subtitle of host publicationProceedings of the 6th International Conference on Aspect-Oriented Software Development
EditorsBrian Barry, Oege de Moor
Place of PublicationNew York, NY
PublisherAssociation for Computing Machinery (ACM)
Pages199-211
Number of pages13
ISBN (Print)1-59593-615-7
DOIs
Publication statusPublished - 2007
EventAOSD 2007: The 6th international conference on Aspect-oriented software development - Vancouver, Canada
Duration: 12 Mar 200716 Mar 2007
Conference number: 6th

Conference

ConferenceAOSD 2007
Country/TerritoryCanada
CityVancouver
Period12/03/0716/03/07

Keywords

  • Aspect-oriented programming
  • variability
  • idioms
  • crosscutting concerns
  • formal concept analysis

Fingerprint

Dive into the research topics of 'Simple crosscutting concerns are not so simple: Analysing variability in large-scale idioms-based implementations'. Together they form a unique fingerprint.

Cite this