Measuring design compliance using neural language models – an automotive case study

by   Dhasarathy Parthasarathy, et al.

As the modern vehicle becomes more software-defined, it is beginning to take significant effort to avoid serious regression in software design. This is because automotive software architects rely largely upon manual review of code to spot deviations from specified design principles. Such an approach is both inefficient and prone to error. In recent days, neural language models pre-trained on source code are beginning to be used for automating a variety of programming tasks. In this work, we extend the application of such a Programming Language Model (PLM) to automate the assessment of design compliance. Using a PLM, we construct a system that assesses whether a set of query programs comply with Controller-Handler, a design pattern specified to ensure hardware abstraction in automotive control software. The assessment is based upon measuring whether the geometrical arrangement of query program embeddings, extracted from the PLM, aligns with that of a set of known implementations of the pattern. The level of alignment is then transformed into an interpretable measure of compliance. Using a controlled experiment, we demonstrate that our technique determines compliance with a precision of 92 Also, using expert review to calibrate the automated assessment, we introduce a protocol to determine the nature of the violation, helping eventual refactoring. Results from this work indicate that neural language models can provide valuable assistance to human architects in assessing and fixing violations in automotive software design.


page 1

page 2

page 3

page 4


An Evalutation of Programming Language Models' performance on Software Defect Detection

This dissertation presents an evaluation of several language models on s...

Exploring Software Naturalness through Neural Language Models

The Software Naturalness hypothesis argues that programming languages ca...

AI-driven Development Is Here: Should You Worry?

AI-Driven Development Environments (AIDEs) Integrate the power of modern...

Checking Security Compliance between Models and Code

The verification that planned security mechanisms are actually implement...

A Case Study for Compliance as Code with Graphs and Language Models: Public release of the Regulatory Knowledge Graph

The paper presents a study on using language models to automate the cons...

Code Compliance Assessment as a Learning Problem

Manual code reviews and static code analyzers are the traditional mechan...

Solving Financial Regulatory Compliance Using Software Contracts

Ensuring compliance with various laws and regulations is of utmost prior...

Please sign up or login with your details

Forgot password? Click here to reset