Measuring Design Pattern Compliance Using Programming Language Models

Publicerad

Typ

Examensarbete för masterexamen

Program

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

Citation

Arkitekt (konstruktör)

Geografisk plats

Byggnad (typ)

Byggår

Modelltyp

Skala

Teknik / material

Index

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced