Code Documentation and Analysis to Secure Software Development

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Attie, Paul, Obeidat, Anas, Oh, Nathaniel, Yelle, Ian
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866910529748992000
author Attie, Paul
Obeidat, Anas
Oh, Nathaniel
Yelle, Ian
author_facet Attie, Paul
Obeidat, Anas
Oh, Nathaniel
Yelle, Ian
contents We present the Code Documentation and Analysis Tool (CoDAT). CoDAT is a tool designed to maintain consistency between the various levels of code documentation, e.g. if a line in a code sketch is changed, the comment that documents the corresponding code is also changed. That is, comments are linked and updated so as to remain internally consistent and also consistent with the code. By flagging "out of date" comments, CoDAT alerts the developer to maintain up-to-date documentation. We use a large language model to check the semantic consistency between a fragment of code and the comments that describe it. Thus we also flag semantic inconsistency as well as out of date comments. This helps programers write code that correctly implements a code sketch, and so provides machine support for a step-wise refinement approach, starting with a code sketch and proceeding down to code through one or more refinement iterations. CoDAT is implemented in the Intellij IDEA IDE where we use the Code Insight daemon package alongside a custom regular expression algorithm to mark tagged comments whose corresponding code blocks have changed. CoDAT's backend is structurally decentralized to allow a distributed ledger framework for code consistency and architectural compilation tracking.
format Preprint
id arxiv_https___arxiv_org_abs_2407_11934
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Code Documentation and Analysis to Secure Software Development
Attie, Paul
Obeidat, Anas
Oh, Nathaniel
Yelle, Ian
Software Engineering
D.2.2; D.2.3; D.2.5; D.2.6
We present the Code Documentation and Analysis Tool (CoDAT). CoDAT is a tool designed to maintain consistency between the various levels of code documentation, e.g. if a line in a code sketch is changed, the comment that documents the corresponding code is also changed. That is, comments are linked and updated so as to remain internally consistent and also consistent with the code. By flagging "out of date" comments, CoDAT alerts the developer to maintain up-to-date documentation. We use a large language model to check the semantic consistency between a fragment of code and the comments that describe it. Thus we also flag semantic inconsistency as well as out of date comments. This helps programers write code that correctly implements a code sketch, and so provides machine support for a step-wise refinement approach, starting with a code sketch and proceeding down to code through one or more refinement iterations. CoDAT is implemented in the Intellij IDEA IDE where we use the Code Insight daemon package alongside a custom regular expression algorithm to mark tagged comments whose corresponding code blocks have changed. CoDAT's backend is structurally decentralized to allow a distributed ledger framework for code consistency and architectural compilation tracking.
title Code Documentation and Analysis to Secure Software Development
topic Software Engineering
D.2.2; D.2.3; D.2.5; D.2.6
url https://arxiv.org/abs/2407.11934