Measuring Design Pattern Compliance Using Programming Language Models
Typ
Examensarbete för masterexamen
Program
Publicerad
2022
Författare
SUN, JIAPENG
KARRI, ANJALI POORNIMA
Modellbyggare
Tidskriftstitel
ISSN
Volymtitel
Utgivare
Sammanfattning
The complexity of automotive control software makes evaluation of the quality of
their design difficult. Software architects, on whom falls the responsibility of verifying
whether the implementation complies with specified design patterns, often have
little choice but to revert to fully manual review. Such a clearly inefficient process
is prone to error, increasing the chances of design regression. In recent days, neural
language models (like BERT) pre-trained on source code corpora are beginning to
be used for automating a variety of programming tasks. The primary objective of
this work is to assess whether such a language model can also be used to automate
the assessment of design compliance. Training a Programming Language Model using
the Masked language Modeling objective and applying the principle of linguistic
regularity in program embeddings, we demonstrate a method that measures compliance
with one automotive software design pattern. Results from this work indicate
that, by automating such design compliance checking, neural language models can
provide valuable assistance to human architects in assessing and fixing violations in
automotive software design.
Beskrivning
Ämne/nyckelord
Software design patterns , programming language models , embeddings , linguistic regularity , compliance test