Detecting modularity "smells" in dependencies injected with Java annotations

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    9 Citations (Scopus)
    241 Downloads (Pure)

    Abstract

    Dependency injection is a recent programming mechanism reducing dependencies among components by delegating them to an external entity, called a dependency injection framework. An increasingly popular approach to dependency injection implementation relies upon using Java annotations, a special form of syntactic metadata provided by the dependency injection frameworks. However, uncontrolled use of annotations may lead to potential violations of well-known modularity principles. In this paper we catalogue "bad smells", i.e., modularity-violating annotations defined by the developer or originating from the popular dependency injection frameworks. For each violation we discuss potential implications and propose means of resolving it. By detecting modularity bad smells in Java annotations our approach closes the gap between the state-of-the-art programming practice and currently available analysis techniques.
    Original languageEnglish
    Title of host publicationProceedings of the 14th European Conference on Software Maintenance and Reengineering (CSMR 2010, Madrid, Spain, March 15-18, 2010)
    PublisherIEEE Computer Society
    Pages244-247
    ISBN (Print)978-1-61284-369-8
    DOIs
    Publication statusPublished - 2010

    Fingerprint

    Dive into the research topics of 'Detecting modularity "smells" in dependencies injected with Java annotations'. Together they form a unique fingerprint.

    Cite this