Learning Code Transformations from Repositories - Georg Dotzler

Learning Code Transformations from Repositories

(Autor)

Buch
XVII, 288 Seiten
2018
Fau University Press (Verlag)
978-3-96147-141-6 (ISBN)
27,50 inkl. MwSt
Library updates, program errors, and maintenance tasks in general force developers to apply the same code change to different locations within their projects. If the locations are very different to each other, it is very time-consuming to identify all of them. Even with sufficient time, there is no guarantee that a manual search reveals all locations. If the change is critical, each missed location can lead to severe consequences. The manual application of the code change to each location can also get tedious. If the change is larger, developers have to execute several transformation steps for each code location. In the worst case, they forget a required step and thus add new errors to their projects.

To support developers in this task, this thesis presents the recommendation system ARES. It leads to more accurate recommendations compared to previous approaches. ARES achieves this by conserving variations in the training examples in more detail due to its pattern design and by an improved handling of code movements. With the tool C3, this thesis also presents an extension to ARES that allows the extraction of training examples from code repositories. In combination, both tools create a recommendation system that automatically learns code recommendation patterns from repositories.

ARES, C3, and similar tools rely on lists of edit operations to express code changes. However, creating compact (i.e., short) lists of edit operations from data in repositories is difficult. As previous approaches produce too long lists for ARES and C3, this thesis presents a novel tree differencing approach called MTDIFF. The evaluation shows that MTDIFF shortens the edit operation lists compared to other state-of-the-art approaches.
Erscheinungsdatum
Reihe/Serie FAU Studien aus der Informatik ; 5
Verlagsort Erlangen
Sprache englisch
Maße 148 x 210 mm
Gewicht 583 g
Themenwelt Mathematik / Informatik Informatik
Schlagworte Abstrakter Syntaxbaum • Empfehlungssystem • Refactoring • Software engineering • Software Engineering Programmtransformation Program Transformation • Tree Differencing
ISBN-10 3-96147-141-X / 396147141X
ISBN-13 978-3-96147-141-6 / 9783961471416
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Wie bewerten Sie den Artikel?
Bitte geben Sie Ihre Bewertung ein:
Bitte geben Sie Daten ein:
Mehr entdecken
aus dem Bereich
den digitalen Office-Notizblock effizient nutzen für PC, Tablet und …

von Philip Kiefer

Buch | Softcover (2023)
Markt + Technik Verlag
9,95
ein Bericht aus Digitalien

von Peter Reichl

Buch (2023)
Muery Salzmann (Verlag)
19,00