TU Darmstadt / ULB / TUbiblio

Defining and continuous checking of structural program dependencies

Eichberg, Michael ; Kloppenburg, Sven ; Klose, Karl ; Mezini, Mira :
Defining and continuous checking of structural program dependencies.
[Online-Edition: http://doi.acm.org/10.1145/1368088.1368142]
In: Proceedings of the 30th International Conference on Software Engineering. ACM Press , pp. 391-400. ISBN 978-1-60558-079-1
[Buchkapitel], (2008)

Offizielle URL: http://doi.acm.org/10.1145/1368088.1368142

Kurzbeschreibung (Abstract)

Dependencies between program elements need to be modeled from different perspectives reflecting architectural, design, and implementation level decisions. To avoid erosion of the intended structure of the code, it is necessary to explicitly codify these different perspectives on the permitted dependencies and to detect violations continuously and incrementally as software evolves. We propose an approach that uses declarative queries to group source elements - across programming language module boundaries - into overlapping ensembles. The dependencies between these ensembles are also specified as logic queries. The approach has been integrated into the incremental build process of Eclipse to ensure continuous checking, using an engine for tabled and incremental evaluation of logic queries. Our evaluation shows that our approach is fast enough for day-to-day use along the incremental build process of modern IDEs.

Typ des Eintrags: Buchkapitel
Erschienen: 2008
Autor(en): Eichberg, Michael ; Kloppenburg, Sven ; Klose, Karl ; Mezini, Mira
Titel: Defining and continuous checking of structural program dependencies
Sprache: Englisch
Kurzbeschreibung (Abstract):

Dependencies between program elements need to be modeled from different perspectives reflecting architectural, design, and implementation level decisions. To avoid erosion of the intended structure of the code, it is necessary to explicitly codify these different perspectives on the permitted dependencies and to detect violations continuously and incrementally as software evolves. We propose an approach that uses declarative queries to group source elements - across programming language module boundaries - into overlapping ensembles. The dependencies between these ensembles are also specified as logic queries. The approach has been integrated into the incremental build process of Eclipse to ensure continuous checking, using an engine for tabled and incremental evaluation of logic queries. Our evaluation shows that our approach is fast enough for day-to-day use along the incremental build process of modern IDEs.

Buchtitel: Proceedings of the 30th International Conference on Software Engineering
Verlag: ACM Press
Fachbereich(e)/-gebiet(e): Fachbereich Informatik > Softwaretechnik
Fachbereich Informatik
Hinterlegungsdatum: 04 Mai 2009 13:40
Offizielle URL: http://doi.acm.org/10.1145/1368088.1368142
Export:

Optionen (nur für Redakteure)

Eintrag anzeigen Eintrag anzeigen