Product/Service

Software Quality Assessment and Reporting Tool

Source: MKS Software
CodeRover Caliper for C/C++ is a software quality assessment and reporting tool that provides a way to assess the internal quality of C, C++ applications early in the development cycle
MKS Softwarealiper for C/C++ is a software quality assessment and reporting tool that provides a way to assess the internal quality of C, C++ applications early in the development cycle, before testing, by analyzing source code against a set of predefined ANSI and industry accepted programming rules and metrics.

The system analyzes a body of source code, up to 500K lines, and automatically produces a Quality Assessment Report (QAR). The QAR is designed to provide quantitative and qualitative information about the internal quality of the application in both graphical and textual forms. Graphs and numerical data provide a quality "score" that may be used to compare the quality of the application as it evolves through the development process, against other applications, and/or against industry benchmark studies. Violations can then be examined and repaired using the included CodeRover Browser with integrated editor.

A comprehensive personal database is built by automatically scanning the source code and capturing details describing all entities in a developer's project, including macros and difficult implicit compiler-generated programming constructs, plus their inter-relationships.

The system examines code by using a set of over 160 quality rules, grouped into five categories that enforce programming standards and software industry best practices. These rules are implemented using a pattern matching technology that searches for a pattern in the code's abstract syntax tree. The five categories are as follows:

  • Programming Standards – Rules designed to search for common programming intent errors such as "Assignment in conditional" or "Defaultless switch."
  • Structure – Rules designed to measure a software project's compliance against a set of metric thresholds.
  • Globalization – Rules that search for occurrences such as "Character constants" or "String literals" designed to measure the software's support of international character sets and operating systems.
  • Portability – Rules designed to measure the portability of software from one platform to another.
  • Statistics & Metrics – Measures that provide statistical counts on entities and determinations of metrics like "Number of return statements" for a particular function or "Number of executable lines of code" for a particular file.

    <%=company%>, 15 Third Avenue, Burlington, MA 01803, Tel: 888-934-7268, Fax: 781-359-3399