Polyspace 静的解析の記事一覧

組み込みシステム用のソフトウェアを開発する多くの企業は、クラウド プラットフォームを調査したり、パイロット プロジェクトを計画したり、クラウドでのソフトウェア開発を積極的に行ったりしています。こうした企業は、低価格であることやクラウド プラットフォームが提供する以下のような利点から、Amazon Web Services (AWS®) や Microsoft Azure® などのパブリック クラウド プロバイダーに魅力を感じる場合が多いようです。

  1. 俊敏性 – オンデマンドでリソースのプロビジョニングとプロビジョニング解除を行うことができます。こうした操作は、リソースの調達や設定に数か月を要するオンプレミス型データセンターとは異なり、わずか数分で完了します。
  2. 従量課金 – ハードウェアリソースやソフトウェアリソースに先行投資する必要はありません。ほとんどのリソースは、使用時間分だけ課金されます。
  3. 拡張性 – 実質的に無限に運用を拡張することができます。たとえば、チームの需要に応じてビルドサーバーを追加できます。
  4. ツールとサービス – 通常、クラウドプロバイダー経由で、ソースコード管理、バグトラッキング、コンテンツ配信、プロジェクト管理など、ソフトウェアの開発と配布を簡素化する追加サービスにアクセスできます。
  5. どこからでも安全なアクセス – クラウドリソースを構成して、グローバルチームに安全かつ高速なアクセスを提供し、リソースの共有と共同作業を可能にします。

クラウドでの Polyspace 静的コード解析

クラウドプロバイダーはデータセンターを設定し、サーバー、ストレージ、ネットワーク ハードウェアなど、オンプレミスのデータセンターと同様のインフラストラクチャ リソースを提供します。通常、こうしたリソースは仮想化され、顧客にサービスとして提供されます。これは、サービスとしてのインフラストラクチャ (IaaS) とも呼ばれています。顧客は、インターネット経由でクラウドプロバイダーのサービスにアクセスし、そのサービスを利用してアプリケーションをインストールして実行できます。

クラウド インフラストラクチャで Polyspace® 製品をインストールすることは、オンプレミスでのインストールと大きな違いはありません。静的コード解析用の Polyspace 製品は、クラウドプロバイダーで提供されるソフトウェア開発プロセスやサービスとも簡単に統合できます

Polyspace とクラウドソフトウェア開発サービスとの統合

IaaS に加えて、ほとんどのクラウドプロバイダーには、ソースコード管理、継続的インテグレーション、プロジェクト計画などのソフトウェア開発ツールが用意されています。こうしたツールを使用することで、計画からソフトウェア展開に至るソフトウェア開発ライフサイクル全体をサポートするソフトウェア開発環境を迅速に構築できます。

例: Azure DevOps プロジェクトと静的コード解析の統合

Microsoft Azure クラウド上で既存の Azure DevOps プロジェクトに Polyspace 製品を統合する方法は数多くあります。以下はその一例です。

DevOps ワークフロー例の図

DevOps ワークフロー例の図

DevOps プロジェクトには、ビルドパイプラインとリリースパイプラインの 2 つのパイプラインがあります。Azure コードリポジトリにソースコードを登録するとすぐに、ビルドパイプラインがトリガーされます。ビルドパイプラインが正常に終了すると、リリースパイプラインが自動的にトリガーされます。ここでの目的は、ビルドパイプラインの一部として Polyspace Bug Finder Server™ 解析を実行し、リリースパイプラインの一部として Polyspace Code Prover™ 解析を実行することです。Polyspace の解析結果は Polyspace Access™ にアップロードされ、チームメンバーは Web ブラウザーから確認できるようになります。Polyspace の結果でチームの設定した最低限の品質基準 (品質ゲート) を満たさないことが示されると、ビルドパイプラインおよびリリースパイプラインは自動的に失敗します。

DevOps パイプラインの図

DevOps パイプラインの図

Azure DevOps プロジェクトに Polyspace を統合するには、以下の操作を行います。

  • Azure 上のバーチャルマシンに Polyspace Server と Polyspace Access 製品をインストールし、構成します。
  • Azure の手順に従って、そのバーチャルマシンをセルフ ホスティング エージェントとして登録します。
  • Polyspace 解析を実行し、その結果を Polyspace Access にアップロードするスクリプトを作成します。プロジェクトに品質ゲートがある場合、結果をエクスポートし、品質ゲートを満たすことを検証します。
  • ビルドパイプラインとリリースパイプラインを編集し、Polyspace Bug Finder Server と Polyspace Code Prover Server™ をそれぞれ実行します。
  • 最低品質基準を満たさない場合、パイプラインが失敗します。

クラウド環境に Polyspace 解析をインストールして構成する方法は数多くあります。クラウド上での Polyspace の展開に関するサポートについては、お問い合わせください。