|
レビューツールCWE、MISRA、CERT-C、ISO xxxなど、ソフトウェアの品質、信頼性、セキュリティを向上させるための取り組みが多数あります。これらのイニシアチブはそれぞれ、一連の規則を指定し、ソフトウェアの構造、実装、または動作の側面を規定し、標準への準拠についてソースコードを評価するためのチェックリストを提供します。レビューツールは、このようなチェックリストに関するソフトウェアのガイド付きレビューをサポートしています。このツールを使用すると、レビュー対象として選択したチェックに関連するソフトウェアの特定の部分を系統的に特定できます。 Imagix 4Dの一般的な分析および視覚化機能は、それらの特定の部分が懸念事項または違反であるかどうかを評価するのに役立ちます。 チーム環境でレビューツールを使用すると、レビュー担当者が懸念事項や評価を記録し、ソフトウェアの作成者がコメントすることができます。ドキュメントまたは提出の監査証跡は、プロセスの一部として自然に作成されます。 このプロセスをガイドするだけでなく、このツールは、ドキュメントだけでなく、識別と評価のアクティビティの多くを自動化します。
コンポーネント/用語レビューツール、およびユーザーマニュアルのこのセクションでは、ガイド付きレビュープロセスに固有の用語を使用しますが、Imagix 4Dの他の部分とは共有しません。後で詳しく説明しますが、レビューツールで使用されるこれらの用語は次のとおりです。チェック ソフトウェアの正確性、一貫性、コンプライアンス、パフォーマンス、セキュリティ、またはその他の望ましいプロパティの潜在的な懸念であるソフトウェアの特定のスタイルまたは動作の説明と、順序付けられた一連の手順このプロパティに関連付けられているソフトウェアのこれらの部分の識別と評価につながります。通常、何らかの標準またはガイドラインのルールとレビューツールのチェックの間には直接的な対応があります。 チェックリスト 特定の標準またはガイドラインを構成する一連のルールに対応する一連のチェック。チェックリストは、特定のプロジェクト/レビューで使用される特定のチェックが選択されるプロジェクトに依存しないリソースです。 レビュー Imagix 4Dプロジェクトのソフトウェアが評価される一連のチェック。レビューには、チェックリストのチェック定義に加えて、各チェックについて収集および記録されるプロジェクト固有のデータが含まれます。 ステップ ソフトウェアの一部を特定または評価する際の特定のアクション。各チェックは、このような手順の順序付きリストで構成されています。 プローブ アーティファクトは、ソフトウェアの特定の部分を結び付けました。プローブは、シンボル、シンボルを含むソースファイル内の行、メモ、または自動分析の結果を識別する場合があります。ステップにより、プローブのセットが作成されます。プローブは、ステップへの入力としても機能し、いくつかのダウンストリームプローブが作成されます。 評価 特定のプローブが評価対象のルールに準拠しているかどうかの評価。各チェックの最終ステップでは、通常、レビュー対象のルールに直接関連するプローブを特定します。評価が割り当てられるのはこれらのプローブです。 ノート いくつかのアイテムに関連付けられたテキスト文字列 - レビュー、チェック、ステップ、またはプローブ。ノートは、各アイテムにコメントする機能を提供し、作成中のドキュメントレコードに追加します。
利用可能なチェックリスト特定のレビューを定義するために使用できる既存のチェックリストがいくつかあります。これらのチェックリストの各チェックを組み合わせてレビューを作成したり、独自のチェックを追加したりすることができます。CWE Common Weakness Enumeration(共通脆弱性タイプ一覧)標準は、ソフトウェアのセキュリティ、品質、信頼性を向上させるための多くのルールを含んでいます。ImagixのCWEチェックリストには、200以上のルールのチェックが含まれており、特に静的解析だけでは完全にテストできないルールを対象にしており、ソースコードの解析と検査によって最も効率的にテストできます。チェックリストはCWE 2.8以降に対応しています。 MISRA C 2012 Motor Industry Software Reliability AssociationによるMISRA Cは、もともと自動車用途の組み込みソフトウェアをレビューするために開発されました。非常に効果的であることが証明され、その利用は鉄道、航空宇宙、軍事、医療などのさまざまな安全性が重要な産業にも広がっています。Imagix MISRA C 2012チェックリストは、現在の標準バージョン(MISRA C:2012)のすべてのディレクティブとルールのガイド付きチェックリストレビューを提供します。 MISRA C++ 2008 MISRA C標準の広範な採用に基づいて、Motor Industry Software Reliability Associationは、「C」と同様に重要なシステムでのC++の使用に関する一連のガイドラインを作成しました。Imagix MISRA C++ 2008チェックリストは、現在の標準バージョン(MISRA C++:2008)のすべてのルールのガイド付きチェックリストレビューを提供しますが、第14章のルールは除外されています。 AUTOSAR C++ 2014 AUTOSARは、C++の新しいバージョンおよび追加のコーディングガイドラインに対応するために、MISRA C++ 2008標準を拡張し、特に自動車用途向けのC++使用ガイドラインを作成しました。Imagix AUTOSAR C++ 2014チェックリストは、現在の標準バージョン(AUTOSAR C++14)のガイド付きチェックリストレビューを提供します。 HIS + MISRA C Hersteller Initiative Software標準は、もともとドイツの自動車メーカーのコンソーシアムによって開発された組み込み、リアルタイム、安全クリティカルなソフトウェアの評価のための基本的なメトリクスセットを定義しています。Imagix HIS + MISRA Cチェックリストには、HISメトリクスの完全なセット、つまりソフトウェアプロジェクトに適用される15のメトリクスと、2つのソフトウェアプロジェクトのリビジョンに適用される3つのメトリクスのチェックが含まれています。15のメトリクスのうち、2つはMISRA Cのサブセットのルール違反の概要です。チェックリストには、96の基本的なMISRA Cディレクティブとルールの個別チェックも含まれています。 Imagixチェック Imagix 4Dの情報表示は、ソフトウェアメトリクス、一般的に合意された設計およびコーディングプラクティスのチェック、グローバルな変数およびタスク間データフローの検証など、さまざまな品質チェックと解析の結果を表示します。これらの結果はGUIで直接表示および探索できるだけでなく、レビューツールにインポートしてレビューを作成することもできます。このレビューを使用して、規定外のすべての結果を体系的に調査することができます。また、レビュー結果をSARIFでエクスポートして外部ツールと共有することもできます。 Imagix デルタ解析 デルタ解析は、ソフトウェアのバージョン間の構造的な違いを識別します。通常のデルタ解析レポートは、変更の品質保証活動と設計テストを手動でガイドするために使用できます。しかし、チェックリストを使用して変更ごとにエントリを含むレビューを自動生成することで、レビューツールはプロセス全体の厳密さを強化することができます。 SARIFインポート 静的解析結果交換フォーマット(SARIF)を通じて、補完的な静的解析ツールの結果をImagix 4Dにインポートできます。このプロセスにより、外部の静的解析ツールによって特定された各欠陥に関する情報を含むレビューが作成されます。その後、プログラム理解のためのImagix 4Dの独自機能を活用して、特定された各欠陥を完全に理解し、修正の緊急性と重大性を評価し、静的解析ツールの将来の実行と比較するためにレビュー結果を記録できます。
レビューの作成と実行レビュープロセスは、基本チェックリストを選択し、そのチェックリストから特定のチェックを選択して、現在のプロジェクトのソフトウェアに対して適用することから始まります。結果のレビューは、最初は選択されたチェックのみで構成され、プローブデータ、評価、ノートはありません。レビューを実行するプロセスは、各チェックを選択して各ステップを実行することで構成されます。チェック画面にこのプロセスが案内され、各ステップとそれに関連するアクションが示されます。手順の多くは自動的に完了できます。コードを研究するために人間の知能を必要とするステップについては、ステップの指示で何を探すべきかを説明し、メニュー項目はImagix 4Dの視覚化エンジンを活用します。各ステップが完了すると、結果のプローブはそれらの結果を必要とする下流のステップに渡されます。 通常、各チェックの最終ステップはレビューステップであり、チェックに直接関連するプローブが特定されます。レビュー手順では、各プローブを評価し、プローブが問題ではないか、懸念事項であるか、チェックに関して違反であるかどうかの評価を割り当てることができます。 このプロセス全体において、成果物は自動的にレビューツールによって記録・保存されます。これには、識別されたプローブや添付されたメモ、各アクションがいつ、誰によって完了されたかの記録が含まれます。進捗状況は[レビュー] ウィジェットで追跡することができ、レビューの全体的なチェックリストと各チェックの進捗状況が表示されます。プロセスの任意の時点で、現在のレビューの概要や選択されたチェックの詳細をエクスポートすることができます。SARIF (.sarif)フォーマットが選択された場合、レビューのエクスポートにはレビュー全体の詳細が含まれます。
高度な操作後のセクションで説明するレビューツールの使用に関するトピックは次のとおりです。マルチユーザー操作 – 参加者間でのレビューの受け渡しレビューを行う人と、コメントがレビュー記録の一部となっているコード所有者などとのコラボレーションでは、レビューをロックおよびリリースするための戦略がチームワークを改善します。 マルチユーザー操作 – 参加者間でのレビューのパーティション分割レビュータスクが複数の参加者間で共有される中規模から大規模のプロジェクトでは、レビューツールのパーティション分割と機能の組み合わせの戦略により効率が向上します。 レビューの進化の管理レビューツールは、レビューを長期にわたって追跡します。以前のレビュー状態と比較したり、以前の状態に戻ることができます。 ソフトウェアの最新バージョンのレビューレビューツールでソフトウェアをレビューすることの利点の1つは、ソフトウェアの後続バージョンのレビュー、または同様のソフトウェアのレビューに提供されるレバレッジです。古い結果を繰り越したり、新しい結果との比較に使用したりできます。 独自のチェックリストの作成/作成レビューツールで提供されるチェックリストからのチェックの使用に加えて、独自のチェック/チェックリストを定義して、レビューする独自のルールをサポートすることができます。ソフトウェア。詳細については、チェックリストAPIをご覧ください。
|