Language Agnostic Program Conformance Analysis

M. Reddy, Swaroop Bhat, Nandana Chandrashekar, Sethupathy Venkatraman, P. Kanwal
{"title":"Language Agnostic Program Conformance Analysis","authors":"M. Reddy, Swaroop Bhat, Nandana Chandrashekar, Sethupathy Venkatraman, P. Kanwal","doi":"10.1109/INCET57972.2023.10170698","DOIUrl":null,"url":null,"abstract":"Conformance analysis is a crucial part of software development that is used for the verification of software systems. Most of the prominent techniques for testing are based on dynamic analysis. Although dynamic analysis handles run-time integration, it does not address the quality of the code and hence the maintainability of the software. Static analysis, which is the analysis of code without execution, can be used to mitigate these issues. Using this technique, the adherence of code to a coding standard can be ascertained. The use of a specific standard improves readability and code maintainability. Traditional methods used for this purpose have been language-specific, and support for user-specified guidelines has been poor.This paper presents a tool that checks the conformance of the source code with user-curated guidelines. A simple, intuitive, and concise manner to specify guidelines is introduced. These guidelines are language-agnostic, thus allowing a uniform style to express them for multiple languages. A library of predefined guidelines has been provided to facilitate rapid development, and methods to add new guidelines are also expounded. Additionally, these guidelines can be used to verify if certain programming constructs have been used. Thus, it brings the codebase closer to the requirement specification document, allowing the programmer to effortlessly implement the code without worrying about its conformance. Lastly, an universal coding metric and benchmarking tool named LAPCA Score is provided which quantifies the extent of guideline violations that can be used to measure the degree of code compliance.","PeriodicalId":403008,"journal":{"name":"2023 4th International Conference for Emerging Technology (INCET)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-05-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2023 4th International Conference for Emerging Technology (INCET)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/INCET57972.2023.10170698","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Conformance analysis is a crucial part of software development that is used for the verification of software systems. Most of the prominent techniques for testing are based on dynamic analysis. Although dynamic analysis handles run-time integration, it does not address the quality of the code and hence the maintainability of the software. Static analysis, which is the analysis of code without execution, can be used to mitigate these issues. Using this technique, the adherence of code to a coding standard can be ascertained. The use of a specific standard improves readability and code maintainability. Traditional methods used for this purpose have been language-specific, and support for user-specified guidelines has been poor.This paper presents a tool that checks the conformance of the source code with user-curated guidelines. A simple, intuitive, and concise manner to specify guidelines is introduced. These guidelines are language-agnostic, thus allowing a uniform style to express them for multiple languages. A library of predefined guidelines has been provided to facilitate rapid development, and methods to add new guidelines are also expounded. Additionally, these guidelines can be used to verify if certain programming constructs have been used. Thus, it brings the codebase closer to the requirement specification document, allowing the programmer to effortlessly implement the code without worrying about its conformance. Lastly, an universal coding metric and benchmarking tool named LAPCA Score is provided which quantifies the extent of guideline violations that can be used to measure the degree of code compliance.
与语言无关的程序一致性分析
一致性分析是软件开发的关键部分,用于验证软件系统。大多数重要的测试技术都是基于动态分析的。尽管动态分析处理运行时集成,但它不处理代码的质量,因此也不处理软件的可维护性。静态分析,即不执行代码的分析,可以用来缓解这些问题。使用这种技术,可以确定代码对编码标准的遵守情况。使用特定的标准可以提高可读性和代码的可维护性。用于此目的的传统方法是特定于语言的,并且对用户指定的指导方针的支持一直很差。本文提供了一种工具,用于检查源代码与用户策划的指导方针的一致性。介绍了一种简单、直观、简洁的指定指导方针的方法。这些指导原则与语言无关,因此允许使用统一的样式为多种语言表达它们。为了方便快速开发,提供了预定义指南库,并阐述了添加新指南的方法。此外,这些指导方针可用于验证是否使用了某些编程结构。因此,它使代码库更接近需求规范文档,允许程序员毫不费力地实现代码,而不必担心其一致性。最后,提供了一个通用的编码度量和基准测试工具,称为LAPCA评分,它量化了可用于测量代码遵从程度的准则违反的程度。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信