Larger View (96 KB)
PGRelief analyzes C/C++ source programs and accurately detects a variety of problems ranging from simple coding errors to logic errors. It also detects coding that decreases performance and coding that might cause improper memory access, a memory leak, or a wrong memory release.
The design of PGRelief suppresses unnecessary detection and avoids the detection of coding that does not cause problems, thereby freeing developers from unnecessary work.
The documentation provided to explain the detection messages in detail, including their meanings and corresponding corrective actions, also shows examples, so developers will find it is easy to correct detected problems.
|Detection type||Number of messages for C||Number of messages for C++|
|Global Detective Option|
|About improved portability, maintainability, or readability||234||-||212|
|About improved portability, maintainability, or readability (especially in firmware development)||100||-||88|
|About improved robustness (regarding security)||20||-||20|
|About improved efficiency||5||-||8|
|Violation of naming rule||5||-||5|
|Other (e.g., error in syntax)||42||-||46|
The form of detection in PGRelief is multiplexed detection. It contributes to further improvements in the quality of programs developed by customers.
Learning from cases of bugs that occurred during development work, including in-house development at Fujitsu, we created a database of patterns from the mistakes that developers are prone to make. This check uses that database.
Larger View (112 KB)
PGRelief checks whether source programs are coded according to the IPA/SEC coding protocol, and it detects coding that violates the protocol. Coding written in compliance with the rules has higher reliability, portability, and maintainability.
Comment from Mr. Masaki Tsuruho, Director of the Software Engineering Center:
The Software Engineering Center (SEC) is making efforts to formulate useful methods and standards for the development workplace. We hope many companies establish their own operations in line with the results from the SEC's work, like Fujitsu has done. The SEC will continue to promote and strengthen these efforts so that the resultant practices are broadly adopted by developers in their workplaces and by the companies assisting the developers.
PGRelief checks whether source programs are coded according to MISRA-C or MISRA-C++ programming guidelines, and it detects coding that violates the guidelines. Source programs coded according to the guidelines have a higher basic level of quality.
Using the easy-to-use user interface, developers can easily perform a variety of verification work for detection results. For example, one function can filter detected items by detection type (reliability, maintainability, portability, and efficiency) or by detection message to display and focus on only the desired detection messages. The check detection setting function can output only the detection messages that belong to the specified group or have the specified number. The operations for displaying the relevant source coding, an explanation of why it was detected, and the appropriate corrective action are easy, and this enables efficient verification.
Detection message display function
Larger View (96 KB)
Larger View (32 KB)
Detailed detection function
Larger View (55 KB)
Larger View (37 KB)
Not only can PGRelief detect problems in program coding but it can also measure the number of control structures in a program. The McCabe cyclomatic complexity can be calculated from these measurement results and used as a program development index. This is one way of promoting the development of high-quality software.
It runs an analysis from the parameter of compiler command that uses a needed option for analysis that’s extracted automatically.
There is no need for an analysis setting when you conduct a compiling under the defining environment.
CSV files which is the result of command analysis is able to validate into the GUI.
The result of each command analysis is loaded into the Quality Monitoring option.
The naming check of variables and functions to detect violations is performed according to the customers' formulated rules.
The language of menus and detection messages can be switched from Japanese to English.
English manuals and documentation are also available.
(English mode can be used only in an English operating system.)
To view the PDF files at the links, Adobe Reader (free) from Adobe Systems Incorporated is required.
Adobe Reader, once installed, can display and print the PDF files.
Share this page