Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space DTPDEVEL and version 2023.2

Parasoft MISRA Compliance アーティファクトは、MISRA 開発ガイドラインへの準拠を直ちに証明できる、DTP インフラストラクチャのアセットの集合です。MISRA Compliance アーティファクトは、あらゆる MISRA 標準をサポートするために適合させることができますが、デフォルトでは MISRA C 2023 用に構成されています。このアーティファクトは インフラストラクチャのアセットの集合です。このアーティファクトは Automotive Compliance Pack に同梱されています。Compliance Pack のダウンロードおよびライセンス情報については、Parasoft 製品テクニカル サポート センターまでお問い合わせください。

...

Guideline Compliance Summary (GCS) は、全般的なプロジェクトの準拠についての主要な記録です。GCS には、各ガイドライン、そのコンプライアンス レベル、逸脱あるいは再分類などのエントリがあります。Parasoft は、各ガイドラインのエントリ、その準拠レベル、逸脱あるいは再分類などを含みます。Parasoft MISRA Compliance 拡張に同梱の 拡張機能に同梱されている MISRA Compliance Report はこの要件を満たします。   は、この要件を満たしています。

詳細については MISRA Compliance 2020: Achieving Compliance with MISRA Coding Standards を参照してください。

...

このコンプライアンス アーティファクトは、フロー解析ライセンスが有効化された C/C++test (Standard または Professional) で実行されたコード解析をサポートします。

基本的な操作手順

  1. MISRA C 2023 または MISRA C++:2023 テスト コンフィギュレーションを使って C/C++test でコードを解析し、違反を DTP にレポートします。
  2. DTP Extension Designer に Automotive Compliance Pack をインストールします。MISRA Compliance アセットもインストールされます。
  3. DTP 環境に MISRA DTP ワークフローをデプロイし、DTP インターフェイスに MISRA ダッシュボードとウィジェットを追加します。
  4. ウィジェットとレポートを利用して、修正が必要なコードを特定したり、監査のためにレポートを出力したりします。
Note
title100% 準拠の達成

DTP は、MISRA C 2023 および MISRA C++:2023 ガイドラインに対するコンプライアンスをレポートします。これは、Parasoft の静的解析で適用可能であり、MISRA C 2023 および MISRA C++:2023 コンプライアンス レポートで有効になっています。

...

Parasoft MISRA Compliance アーティファクトは、MISRA C 2023 または MISRA C++:2023 の準拠を証明するために必要なドキュメントの作成に役立ちます。以下のアセットが含まれます。

  • コンプライアンス カテゴリとガイドライン: これらのファイルは、DTP インターフェイスに MISRA Compliance オプション (ウィジェット設定など) を追加します。  
  • テスト コンフィギュレーション: これらのファイルは、どのコード解析ルールを実行するかを指定します。ローカル テスト コンフィギュレーションを実行するか、または DTP にアップロードされたテスト コンフィギュレーションを実行するように C/C++test を設定できます。 
  • ダッシュボード テンプレート: このファイルは、定義済みの MISRA 関連ウィジェットを含む MISRA C 2023 または MISRA C++:2023 ダッシュボードの追加を可能にします。
  • モデルとプロファイル: これらのファイルは、MISRA 準拠を証明するために必要なコンプライアンス レポートを推進します。詳細については「Profile Configurationプロファイルの設定」を参照してください。
  • DTP ワークフロー: これは、MISRA ガイドラインのコンテキストで違反を表示するウィジェット、レポート、処理ロジックを含む DTP Enterprise Pack アーティファクトです。   

...

  1. MISRA Compliance アーティファクトは、Automotive Compliance Pack の一部としてインストールされます。詳細については「インストール」を参照してください。
  2. DTP の設定メニュー (歯車のアイコン) から [Extension Designer] を選択します。
  3. [サービス] タブをクリックし、サービス カテゴリを選択します。既存のサービスにアーティファクトをデプロイするか、新しいサービスを追加できます。DTP ワークフロー カテゴリ内のサービスに Compliance Pack のアーティファクトをデプロイすることを推奨します。

    サービスにデプロイされるアーティファクトの数は、全体のパフォーマンスに影響します(詳細については「Extension Designer のベスト プラクティス」を参照してください)。既存のサービスにアーティファクトを配置する場合は、そのサービスを選択してステップ 4 に進みます。サービスにデプロイされるアーティファクトの数は、全体のパフォーマンスに影響します (詳細については「Extension Designer Best Practices」を参照してください)。既存のサービスにアーティファクトを配置する場合は、そのサービスを選択して次のステップに進みます。アーティファクトに新しいサービスを追加する場合は、[サービスの追加] をクリックしてサービスの名前を指定し、[確認] をクリックします。
  4. サービス内のタブ インターフェイスを使用して、アーティファクトを整理することができます。サービス内の複数のタブにまたがってアーティファクトを配置してもシステムのパフォーマンスには影響しません。タブをクリックし (または [+] ボタンをクリックして新しいタブを追加しアイコンをクリックして新しいタブを追加し)、右上の縦の三点メニューから [読み込み] を選択します。
  5. Choose Local> Flows> Workflows> Automotive> MISRA Compliance and click Import.[Local] > [Flows] > [Workflows] > [Automotive] > [MISRA Compliance] を選択し、[読み込み] をクリックします。
  6. 空いている任意の箇所をクリックしてサービスにアーティファクトを追加します。
  7. [デプロイ] をクリックし、DTP 環境へのアーティファクトのデプロイを完了します。 
  8. DTP に戻ってダッシュボードをリフレッシュします。 

...

  1. [ダッシュボードの追加] をクリックして名前を指定します。
  2. (オプション) 以下の情報を指定して、ダッシュボードのデフォルト ビューを設定できます。
    • [フィルター] ドロップダウン メニューで、プロジェクトに関連するフィルターを選択します。フィルターは、DTP に格納されたデータをカスタマイズして表示できるラン コンフィギュレーション セットを表します。詳細については「DTP Concepts」を参照してください。
    • [期間] ドロップダウン メニューで時間の範囲を指定します。 
    • [ベースライン ビルド] および [ターゲット ビルド] ドロップダウン メニューで、ビルド範囲を指定します。  
  3. [テンプレートからダッシュボードを作成] オプションを有効化し、ドロップダウン メニューから を有効化し、メニューから MISRA C 2023 (MISRA C 2012) Compliance または MISRA C++:2023 Compliance を選択します。
    Image RemovedImage Added
  4. [作成] をクリックしてダッシュボードの追加を完了します。

MISRA C 2023 compliance アーティファクトに同梱されたウィジェットの詳細については「MISRA Compliance ウィジェットの表示 ウィジェットの表示」を参照してください。

既存のダッシュボードにウィジェットを手動で追加する

...

タイトル[タイトル] フィールドでウィジェット名を変更できます。
フィルタードロップダウン メニューから特定のフィルターまたはダッシュボード設定を選択します。詳細については「Creating and Managing Filters」を参照してください。
ターゲット ビルドドロップダウン メニューから特定のビルドを選択します。ダッシュボード全体について選択されたビルドがデフォルトで選択されます。ビルドの詳細については「Using Build Administration」を参照してください。 
カテゴリこの設定は MISRA Compliance - Guidelines by Status および MISRA Compliance - Status ウィジェットで利用可能です。ドロップダウン メニューから個々のカテゴリまたは ウィジェットで利用可能です。メニューから個々のカテゴリまたは [すべて] を選択します。
コンプライアンス プロファイルコンプライアンス プロファイルを指定します (「Profile Configurationプロファイルの設定」を参照)。コンプライアンス プロファイル データは、コンプライアンス レポートを生成するために使用されます。

...

このウィジェットは、コンプライアンスの全般的なステータスを表示します。現在のコンプライアンス ステータスを表示するために、このウィジェットの複数のインスタンスを追加し、異なるプロファイルを使用するように設定できます。たとえば、適用されないガイドラインのプロファイルなどです。ウィジェットをクリックすると、MISRA Compliance Report が開きます。 

Image Modified

このウィジェットは 5 種類のステータスを表示できます:

  • Compliant (準拠): コードはすべてのガイドラインを満たしており、ガイドライン カテゴリからの逸脱や変更はありません。
  • Not Compliant (準拠していない): コードはすべての「必須」および「必要」のガイドラインを満たしていません。
  • Missing Rule(s) in Analysis (見つからないルールが解析に存在)プロファイル で文書化された Parasoft コード解析ルールが、指定のビルドに含まれていませんでした。すべてのルールが C/C++test で有効化されていることを確認し、解析を再実行してください。
  • Compliant With Deviations (逸脱があるが準拠): コードはすべてのガイドラインを満たしていますが、逸脱が適用されています。逸脱は、許容可能であるとユーザーが判断した違反です (逸脱の詳細については「Suppressions and False Positives抑制と誤検知」を参照してください)。
  • Compliant With Violations (違反があるが準拠): コードはすべての「必須」および「必要」のガイドラインを満たしていますが、「推奨」ガイドラインの違反があります。

...

このウィジェットは、MISRA のカテゴリ (強制、必須、推奨) ごとに、静的解析違反が集中している箇所を表示します。このウィジェットは、違反がレポートされた各カテゴリ内のガイドライン (たとえば Dir 4.6、Rule 14.3、etc.3 など) も表示します。最後に、各ガイドラインを推進する Parasoft ルールも表示されます。タイルの大きさは、ルールごとにレポートされた静的解析違反の数に比例します。 

...

このウィジェットは、モデル プロファイル で確立された階層を利用して、ルール、ガイドライン、およびカテゴリを相関させます。タイル上にマウス ポインタを置くと、各ルール-/ガイドライン-/カテゴリに関連する違反の数が表示されます。

Violations Explorer で違反を見るには、ルールをクリックします。

...

MISRA Compliance Report は、MISRA コンプライアンス ステータスの概要を提供し、準拠を証明するための主要文書の役割を果たします。

以下の操作を行うことができます。

  • ドロップダウン メニューを使って、MISRA カテゴリまたはコンプライアンス ステータスでソートします。
  • [Guideline] 列でガイドラインのリンクをクリックして Guideline Enforcement Plan を開きます。ガイドラインを推進する Parasoft コード解析ルールをレビューできるように、リンクから特定のガイドラインに直接移動します。 
  • Violations Explorer で違反を確認するには、[# of Violations違反の数] 列のリンクをクリックします。
  • 抑制された違反を Violations Explorer で確認するには、[# of Deviations] 列のリンクをクリックします。
  • MISRA Compliance サブ レポートの 1 つを開きます。
  • プリンター印刷に適した PDF 形式のレポートをエクスポートするには、[PDF のダウンロード] をクリックします。「Adding a Custom Graphic to the Navigation Bar」で説明するように DTP にカスタム グラフィックを追加した場合、PDF にもカスタム グラフィックが表示されます。 

...

Table of Content Zone
maxLevel2
minLevel2
locationtop

Guideline Enforcement Plan

Guidelines Enforcement Plan (GEP) は、MISRA ガイドラインを推進するために使用する静的解析ルールを表示します。各ガイドラインをどのように推進するかをユーザーに説明することを目的とします。

このレポートは、コンプライアンス プロファイルで指定されたデータを使用します (「Profile Configurationプロファイルの設定」を参照)。プロファイルでは、[Compiler] フィールドに注釈を追加できます。たとえば、「エラーなし」や、計画を文書化するために適用される特定のコンパイラ設定などです。これらの注釈は [Compiler ] 列に表示されます。

[Analysis Tool] 列には静的解析ルールが表示されます。[Manual Review] 列には、コンパイラと解析ツールによって適用される自動チェックに加えて、実行される手動検証が表示されます。

Guideline Re-categorization Plan
Anchor
gap-report
gap-report

MISRA ガイドライン カテゴリを変更した場合 (「Profile Configurationプロファイルの設定」を参照)、そのカテゴリは処理されてこのレポートに表示されます。ガイドライン再分類計画の詳細については MISRA 標準を参照してください。 

デフォルトでは、このレポートには、コードのビルドに使用されるコンパイラは含まれていません。コンパイラをプロファイルに追加して、このレポートに表示されるようにできます。モデル プロファイルの変更方法については「Profile Configurationプロファイルの設定」を参照してください。

Deviations Report 

MISRA Compliance Deviations Report で Deviations Report リンクをクリックすると、Deviation Deviation report リンクをクリックすると、Deviations Report が開きます。  

Deviations Report は、すべてのガイドラインの ID とヘッダーを表示しますが、抑制されたガイドラインには追加情報を表示します。以下の操作を行うことができます。

  • MISRA カテゴリ (All、Mandatory、Required、Advisory、Disapplied) でレポートをフィルタリングします
  • [Only Deviations] オプションを有効化して、逸脱がない違反を非表示にします。を有効化して、逸脱がない違反を非表示にします。
  • [Hide Modification History] オプションを有効化して、逸脱の変更履歴を非表示にします。

ビルド監査レポート

メインの MISRA Compliance Report はビルド監査レポートにリンクしており、選択したビルドで DTP に送信されたコード解析、テスト結果、およびカバレッジ情報にアクセスできます。また、データのアーカイブをダウンロードすることもできます。これは、定期的な監査で MISRA への準拠を証明するために使用できるアーティファクトです。ビルド監査レポートは、DTP に付属する標準レポートであり、MISRA コンプライアンスに固有のものではありません。

アーカイブをダウンロードするには、ビルドがロックされていなければなりません。このレポートの詳細については「Build Audit Report」を参照してください。  

...

標準からの逸脱が文書化され、ソフトウェアの安全性に影響しない限り、コードは違反があっても MISRA 準拠であることができます。逸脱とは、コード中で直接抑制されたコード解析ルール、または DTP の違反エクスプローラーで抑制されたコード解析ルールです。コード中で違反を抑制する方法については、C/C++test のドキュメントを参照してください。DTP で違反を抑制する方法については、違反エクスプローラーのドキュメントの「違反の抑制」を参照してください。

...

  1. 違反エクスプローラー ビューを開き、検索結果テーブルで違反を選択します。違反エクスプローラー ビューにアクセスするには、メインの MISRA Compliance Report で [違反の数] 列のリンクをクリックします (「Viewing MISRA Compliance Reportsレポートの表示」を参照)。
  2. アクション パネルの [優先度] タブをクリックし、[以降の解析実行では、選択された違反を抑制します] オプションをオンにします。を有効にします。
  3. [理由] フィールドに「false positive」と入力し、後ろに違反に関する任意の注記を入力します。
  4. [適用] をクリックして変更を保存します。 

...

C/C++test で抑制を適用し、抑制の理由として「false positive」を指定することでも、違反を誤検知としてマークできます。抑制を MISRA Compliance レポートから除外するには、理由が false positive で始まっている必要があります。違反の抑制方法の詳細については C/C++test のドキュメントを参照してください。 

...

MISRA Compliance DTP ワークフローには、MISRA C 2023 および MISRA C++ 2023 への準拠をモニタリングするように設定されたモデル プロファイル (「Working with Model Profiles」を参照) が同梱されています。モデル プロファイルには、コンプライアンス レポートを生成するために必要な情報が含まれます (「Viewing MISRA Compliance Reportsレポートの表示」を参照)。たとえば、コンパイラ、ガイドラインの分類、再分類を指定するためのフィールドなどです。ユーザー独自の目標を達成するためにガイドラインを再分類したい場合、または独自のレポート用に追加メタデータを指定したい場合、このプロファイルを変更できます。変更は Guideline Re-categorization Plan で反映されます。

デフォルト プロファイルの複製を作成して複製を変更することを推奨します。 

  1. [プロファイルのエクスポート] をクリックして複製をダウンロードします。 
  2. 複製の名前を変更し、[プロファイルのインポート] をクリックします。 
  3. 複製を選択してアップロードします。  
  4. ガイドラインをクリックし、変更を指定します。MISRA カテゴリを変更している場合、以下の文字列が利用可能です:
    • Mandatory (必須)
    • Required (必須)
    • Advisory (推奨)
    • Disapplied (不適用)

      Mandatory および/または Required のガイドラインの厳格性を低下させることは、MISRA がまとめた要件によって Parasoft がまとめた要件によって Parasoft Guideline Re-categorization Plan Report でのガイドラインの不正使用になります Report でのガイドラインの不正使用になります (Guideline Re-categorization Plan を参照)。Required および Advisory のガイドラインの厳格性を強化することは許されます。 

  5. [保存] をクリックします。