请输入您要查询的百科知识:

 

词条 SourceMeter
释义

  1. Background

  2. Features

  3. SonarQube plug-in

  4. References

  5. External links

{{Infobox software
| name = SourceMeter
| logo =
| screenshot =
| caption =
| developer = {{URL|https://frontendart.com/|FrontEndART Ltd.}}
| latest release version = 8.2
| latest release date = {{Start date and age|2016|12|16}}
| latest preview version =
| latest preview date =
| operating system = Cross-platform
| programming language = C, C++
| genre =
| license = {{URL|https://www.sourcemeter.com/terms-of-use/|EULA}}
| website = {{URL|https://www.sourcemeter.com/}}
}}SourceMeter is a source code analyzer tool, which can perform deep static program analysis of the source code of complex programs in C, C++, Java, Python, C#, and RPG (AS/400).[1] FrontEndART has developed SourceMeter based on the Columbus technology[2] researched and developed at the Department of Software Engineering of the University of Szeged.[3][4]

Background

During the static analysis, an abstract semantic graph (ASG) is constructed from the language elements of the source code. This ASG is then processed by the different tools in the package to calculate product metrics[5] like LLOC,[6] NLE or NOA, identify duplicate code (copy-pasted code; clones), coding rule violations, etc.

SourceMeter can analyze source code conforming to Java 8 and earlier versions, C/C++, RPG III and RPG IV versions (including free-form), C# 6.0 and earlier versions and Python 2.7.8 and earlier versions.

In the case of C/C++, SourceMeter supports the ISO/IEC 14882:2011 international standard[7] extended with several new features from ISO/IEC 14882:2014, and C language defined by the ANSI/ISO 9899:1990, ISO/IEC 9899:1999 and ISO/IEC 9899:2011 standards. Besides the standard features, several GCC and Microsoft specific extensions are also supported.

Features

  • Precise and deep static analysis, building full semantic graphs, containing semantic edges (calls, references), comments, etc.
  • 60+ source code metrics (complexity, coupling, cohesion, inheritance, etc.), on different levels (package, namespace, class, method, etc.)
  • Type-2 duplications regarding syntax boundaries
  • Code duplication metrics (stability, embeddedness, dispersion, etc.)
  • Detecting inconsistent changes of duplications
  • Checking coding rules ([https://static.sourcemeter.com/media/files/PMD_FH_diff.pdf Differences between PMD rule violations and FaultHunter rule violations])
  • Detecting security vulnerabilities based on data-flow (SQL injection, XSS, etc.)
  • Checking metric-based rule violations
  • Checking Android specific rule violations
  • Detecting runtime exceptions by means of symbolic code execution, for Java only

SonarQube plug-in

[https://github.com/FrontEndART/SonarQube-plug-in SourceMeter plug-in] for SonarQube platform is an extension of the open-source SonarQube platform for managing code quality. The plug-in executes SourceMeter from the SonarQube platform and uploads the source code analysis results of SourceMeter into the SonarQube database. The plug-in is open-source, and provides all the usual SonarQube code analysis results, extended with many additional metrics and issue detectors provided by the SourceMeter tool. The plug-in supports the C/C++, Java, C#, Python and RPG languages.[8]

References

1. ^{{Cite book | doi=10.1007/978-3-319-09156-3_37|chapter = A Case Study of Refactoring Large-Scale Industrial Systems to Efficiently Improve Source Code Quality|title = Computational Science and its Applications – ICCSA 2014| volume=8583| pages=524–540|series = Lecture Notes in Computer Science|year = 2014|last1 = Szőke|first1 = Gábor| last2=Nagy| first2=Csaba| last3=Ferenc| first3=Rudolf| last4=Gyimóthy| first4=Tibor| isbn=978-3-319-09155-6| chapter-url=http://publicatio.bibl.u-szeged.hu/8996/1/Szoke_ICCSA2014_u.pdf}}
2. ^Árpád Beszédes, Rudolf Ferenc, Tibor Gyimóthy: "Columbus: A reverse engineering approach"
3. ^Department of Software Engineering
4. ^University of Szeged
5. ^[https://sonarqube.sourcemeter.com/plugins/home/sm-help Source code metrics reference]
6. ^István Siket, Árpád Beszédes, John Taylor: "Differences in the Definition and Calculation of the LOC Metric in Free Tools"
7. ^[https://isocpp.org/blog/2015/07/sourcemeter-for-c-cpp-with-open-source-sonarqube-plugin-released SourceMeter at ISO C++ standard]
8. ^Ferenc R., Langó L., Siket I., Gyimóthy T.: "Source Meter Sonar Qube Plug-in" In Proceedings of the 14th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2014). Victoria, British Columbia, Canada, pages 77-82. September 28–29, 2014]

External links

  • {{Official website|https://www.sourcemeter.com/}}
{{programming-software-stub}}

2 : Static program analysis tools|software testing tools

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/27 15:31:15