テクマトリックス株式会社
MISRAなど各種コーディング規約の精度向上、カバレッジ計測機能強化、ALMツール連携機能のサポート

テクマトリックス株式会社(本社:東京都港区、代表取締役社長:矢井隆晴、以下「テクマトリックス」)は、米国Parasoft Corporation(本社:米国カリフォルニア州、最高経営責任者:Elizabeth Konawa、以下「Parasoft社」)が開発したC言語/C++言語対応テストツール「C/C++test 2024.2」の販売を2025年4月16日より開始します。
C/C++testは静的解析(コーディング規約チェック・フロー解析)、動的解析(単体テスト、カバレッジ計測、実行時メモリエラー機能など)を搭載したC言語/C++言語対応オールインワンテストツールです。車載機器、産業機器、医療機器、OA機器といった組み込みソフトウェアの開発や、ミドルウェアの開発、Windows/Linuxアプリケーションの開発など、さまざまな現場で利用されています。開発工程にC/C++testによる静的解析、単体テストを組み込むことにより、テストの効率化とソースコードの品質向上が期待できます。
このたびのバージョンアップでは、静的解析における各種コーディング規約に対する精度向上や、動的解析実行時のカバレッジ計測機能の強化、アプリケーションライフライクル管理(ALM)ツールとの連携機能のサポートなどが行われました。
静的解析では、MISRA(MISRA C:2023、MISRA C++:2023など)、AUTOSAR C++、CERT C、CERT C++などのさまざまなコーディング規約に対する精度向上のため合計100以上のルールの更新が行われました。また、CWE Top 25およびOn the Cupsで指摘される脆弱性を検出可能なルールセット(2023年度版)が追加されました。さらに、Visual Studio Codeプラグイン版では、AI連携により違反の修正方法を提案する機能が追加されました。
動的解析では、カバレッジ計測機能の強化として、コンパイル時に判断可能な情報を用いて判断文/パスカバレッジを抑制する機能、抑制コメントで特定の関数のカバレッジを抑制する機能が追加されました。これらの機能追加によりテスト効率が向上し、必要に応じた柔軟なカバレッジ管理が可能となりました。
周辺ツールとの連携機能の強化として、ALMツールとの連携機能がサポートされました。この連携により、対象のALMツールで作成された要件・テストケースとC/C++testの単体テスト結果を自動で紐づけることが可能となりました。機能安全規格などで求められるトレーサビリティを効率的に確保することで、品質の向上と工数削減が期待できます。
【C/C++test 2024.2の新機能・改善点】
MISRAなど各種コーディング規約の精度向上
MISRA(MISRA C:2023、MISRA C++:2023など)、AUTOSAR C++、CERT C、CERT C++、CWEなどのコーディング規約に対して、精度向上を目的として合計100以上のルールの更新が行われました。
さらに、CWE Top 25およびOn the Cupsで指摘される脆弱性を検出可能なルールセット(2023年度版)が追加されました。専用のテストコンフィギュレーションを使用して、Parasoft DTPでのコンプライアンスレポートの作成が可能です。これにより、規格準拠の度合いや脆弱性の検出状況を詳細にレポートすることができ、開発プロセスの透明性と信頼性が向上します。
※1 コンプライアンス関連機能の使用には専用の有償オプションが必要です。

修正案を提案するAI連携機能の追加(Visual Studio Codeプラグイン版限定)
静的解析で検出された違反に対し、AI(GitHub Copilot(※2))が修正方法を提案する機能が追加されました。
AI連携機能はVisual Studio Codeの拡張機能であるGitHub Copilot Chatを使用し、検出された違反に対して解説付きで修正方法を提案します。
※2 AI連携機能にはGitHub Copilotの利用契約は含まれておりません。利用者が個別に契約する必要があります。また、AIの利用に関しては必ずお客様の組織のポリシーをご確認ください。

静的解析の抑制機能の強化
抑制ファイルを任意のパスに配置し管理することができるようになりました。また、抑制ファイル内でファイル名、ルールID、メッセージの指定などにワイルドカードを使用可能になりました。
カバレッジ計測機能の強化
コンパイル時に判断可能な情報を用いて判断文/パスカバレッジを抑制する機能、抑制コメントで特定の関数のカバレッジを抑制する機能が追加されました。コンパイル時に決定する値などの影響で実動作では考慮する必要のない判断文や特定の関数が存在すると判断できる場合、これらの機能で対象の判断文や関数のカバレッジの計測を抑制することができます。

ALMツールとの連携機能のサポート
ソフトウェア開発プロセス全体の統合的な管理を行うソリューションであるALMツールとの連携機能がサポートされました。ALMツールは、開発成果物を相互にリンクすることでトレーサビリティを管理し、変更管理の効率化、品質向上、さらには問題解決の迅速化といったメリットをもたらします。トレーサビリティの確保は、要件からテストケース、さらにテスト結果に至るまでの関連性を明確にする上で重要です。しかし、プロジェクトによっては数万から数百万件に及ぶテスト結果を手動で成果物に紐づけるのは非現実的です。
この課題を解決するために、C/C++testおよびParasoft DTPは、各種ALMツールと連携し、以下の3つの機能を提供します。
・要件、テストケースと単体テスト結果を自動で紐づけ(※3)
・静的解析や単体テスト結果を、バグやタスクといったチケットとして手動で登録
・DTPから要件に対するテスト実施状況をモニタリング(※3)
※3 一部のALMツール連携機能の使用には専用の有償オプションが必要です。

これらの機能は、開発プロジェクト全体の効率化を促進するとともに、品質の向上にも大きく寄与します。また、トレーサビリティの確保は、ISO 26262、IEC 62304、IEC 61508などの機能安全規格でも重要な要件とされています。これらの規格準拠においても、ALMツールとC/C++testおよびParasoft DTPの連携が効果的です。サポートされるALMツールにつきましては、お問い合わせください。
サポート環境の追加
プラグイン可能なIDEとして、Eclipse 4.21(2021-09)- 4.33(2024-09)およびTexas Instruments Code Composer Studio 12が追加されました。サポートコンパイラとして、GCC for Tricore 4.9.x(※4)、HighTec Clang C/C++ Compiler for aarch32/arm 8.1、IAR Compiler for ARM 9.40xおよび9.50x(※4)、Clang C/C++ Compiler for x86_64 17.0および18.0(※5)、Clang C/C++ Compiler for aarch64/arm64 17.0および18.0(※5)、GNU GCC for PowerPC 11.x(※5)、Green Hills Software Compiler for Tricore 2021.1.xが追加されました。
※4 Windowsのみ。
※5 Linuxのみ。
【Parasoft DTP 2024.2の新機能・改善点】
機械学習機能の無償サポート
機械学習機能が無償サポートとなりました。機械学習機能を用いて、修正すべき違反/修正不要な違反を識別し、担当者を割り当てることができます。
サポート環境の追加
サポートされるデータベースとして、MySQL8.4、Oracle 23c、PostgreSQL 16が追加されました。
C/C++test 2024.2の新機能・改善点の詳細はWEBサイトをご確認ください。
https://www.techmatrix.co.jp/product/ctest/new_features/ctest2024-2.html
C/C++testの製品詳細はWEBサイトをご確認ください。
https://www.techmatrix.co.jp/product/ctest/

テクマトリックス株式会社
テクマトリックス(東証プライム:3762)は、お客様のニーズに沿った最適なITインフラとITライフサイクルをワンストップで提供する「情報基盤事業」、蓄積された業務ノウハウを実装したアプリケーションの提供により顧客の課題解決を実現する「アプリケーション・サービス事業」、“医療情報をみんなの手に。そして、未来へ。”をテーマに健康な社会を支える医療情報インフラの構築に取り組む「医療システム事業」の3事業を展開し、顧客企業のビジネスモデル変革と競争力の強化をサポートしています。
詳細はWeb サイト: https://www.techmatrix.co.jp/ をご参照ください。