KIT | KIT-Bibliothek | Impressum | Datenschutz

Does BERT Understand Code? – An Exploratory Study on the Detection of Architectural Tactics in Code

Keim, Jan 1; Kaplan, Angelika 1; Koziolek, Anne ORCID iD icon 1; Mirakhorli, Mehdi
1 Karlsruher Institut für Technologie (KIT)

Abstract (englisch):

Quality-driven design decisions are often addressed by using architectural tactics that are re-usable solution options for certain quality concerns. Creating traceability links for these tactics is useful but costly. Automating the creation of these links can help reduce costs but is challenging as simple structural analyses only yield limited results. Transfer-learning approaches using language models like BERT are a recent trend in the field of natural language processing. These approaches yield state-of-the-art results for tasks like text classification. In this paper, we experiment with treating detection of architectural tactics in code as a text classification problem. We present an approach to detect architectural tactics in code by fine-tuning BERT. A 10-fold cross-validation shows promising results with an average F1-Score of 90%, which is on a par with state-of-the-art approaches. We additionally apply our approach on a case study, where the results of our approach show promising potential but fall behind the state-of-the-art. Therefore, we discuss our approach and look at potential reasons as well as downsides and future work.

DOI: 10.1007/978-3-030-58923-3_15
Zitationen: 7
Zitationen: 8
Zugehörige Institution(en) am KIT Institut für Programmstrukturen und Datenorganisation (IPD)
Publikationstyp Buchaufsatz
Publikationsdatum 08.09.2020
Sprache Englisch
Identifikator ISBN: 978-3-030-58923-3
ISSN: 0302-9743, 1611-3349
KITopen-ID: 1000124838
Erschienen in Software Architecture : 14th European Conference, ECSA 2020, L'Aquila, Italy, September 14–18, 2020, Proceedings. Ed.: A. Jansen
Verlag Springer International Publishing
Seiten 220–228
Serie Lecture Notes in Computer Science ; 12292
Vorab online veröffentlicht am 31.08.2020
Schlagwörter Software architecture; Architectural tactics; Natural language processing; Transfer learning; Traceability; Language modeling; BERT
Nachgewiesen in Scopus
Relationen in KITopen
KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft
KITopen Landing Page