次の方法で共有


評価の使用: Java 用 GitHub Copilot モダン化を使用したアプリケーション評価の包括的なガイド

この包括的なガイドでは、GitHub Copilot モダン化の高度な評価機能について説明し、アプリケーションの最新化評価プロセスの価値を最大限に高めるのに役立ちます。

アプリケーションの評価は、最新化の取り組みの重要な最初のステップです。 この記事では、評価レポートを効果的に操作し、さまざまなシナリオの評価を構成し、最新化プロセス全体で評価データを管理するのに役立つ、完全な評価ワークフローについて説明します。

主な機能は次のとおりです。

  • 実行ごとに複数のレポート: 評価の実行ごとに独立したレポートが生成されます。 以前のレポートにはレポート一覧からアクセスできるため、評価履歴を追跡し、時間の経過と同時に結果を比較できます。
  • 目的が異なる 2 つの評価エントリ: GitHub Copilot モダン化には、評価を開始する 2 つの方法が用意されています。
    • 推奨される評価: 手動構成なしで推奨されるドメインから選択して、評価をすばやく開始します。
    • カスタム評価: 特定の評価プロパティを構成して、正確なニーズに合わせて分析を調整します。

推奨される評価は、手動構成なしで評価を開始するための合理化された方法を提供します。 このアプローチは、一般的な移行シナリオに対するアプリケーションの準備状況をすばやく評価する場合に最適です。

推奨される評価を実行するには、次の手順を使用します。

  1. GitHub Copilot モダン化ウィンドウの QUICKSTART セクションで、[評価の開始] または [評価ダッシュボードを開く] を選択します。
  2. [推奨される評価] を選択します。
  3. 推奨されるオプションの一覧から、評価するドメインを選択します。 各ドメインは、構成済みの設定を含む一般的な移行シナリオを表します。
  4. [ OK] を 選択して評価を開始します。

ドメイン選択オプションを含む GitHub Copilot モダン化推奨評価インターフェイスを示す Visual Studio Code のスクリーンショット。

評価が完了すると、プロセスによって新しいレポートが生成され、レポート一覧に追加されます。 一覧からレポートを選択すると、レポートを表示できます。

カスタム評価

カスタム評価を使用すると、特定の移行ニーズに合わせて評価分析を調整できます。 この方法は、評価構成をきめ細かく制御する必要がある場合に使用します。

カスタム評価を構成して実行するには、次の手順に従います。

  1. GitHub Copilot モダン化ウィンドウの QUICKSTART セクションで、[評価の開始] または [評価ダッシュボードを開く] を選択します。
  2. [カスタム評価] を選択します。
  3. 次のセクションで説明するように、評価プロパティを構成します。
  4. [ 実行 ] を選択して評価を開始します。

[Custom Assessment]\(カスタム評価\) ボタンが強調表示されている GitHub Copilot モダン化評価ペインを示す Visual Studio Code のスクリーンショット。

カスタム評価プロパティを含む GitHub Copilot モダン化評価ウィンドウを示す Visual Studio Code のスクリーンショット。

構成プロパティ

カスタム評価構成フォームは、全般設定とドメイン固有の設定で構成されます。 フォームには、選択した評価ドメインに基づいてドメイン固有の設定が表示されます。

全般: 評価ドメイン

評価に含める 1 つ以上のドメインを選択します。 評価時間は、ドメインの選択とアプリのサイズによって異なります。

ドメイン Description
Java アップグレード 古いアプリ スタックを特定し、アップグレードの推奨事項を取得します。
クラウドの準備 実用的な移行ガイダンスを使用して、Azure に対するアプリの準備状況を評価します。
Security 推奨される修正プログラムを使用して、ISO 5055 ガイドラインを使用してコードのセキュリティの問題をスキャンします。

一般: 分析範囲

評価で分析する対象を選択します。

価値 Description
問題のみ ソース コードを分析して問題を検出します。
問題とテクノロジ ソース コードを分析して問題を検出し、使用されているテクノロジを特定します。
問題、テクノロジと依存関係 ソース コードを分析して問題を検出し、使用されているテクノロジを特定し、依存関係をマップします。

Java アップグレード: ターゲット ランタイム

Java アップグレード ドメインを選択すると、フォームにこの設定が表示されます。 ターゲット JDK を選択して、依存関係と古いアプリ スタックを分析します。

価値 Description
OpenJDK 21 OpenJDK 21 に移行するためのベスト プラクティス。 (おすすめ)
OpenJDK 17 OpenJDK 17 に移行するためのベスト プラクティス。
OpenJDK 11 OpenJDK 11 に移行するためのベスト プラクティス。

クラウドの準備: ターゲット コンピューティング サービス

Cloud Readiness ドメインを選択すると、フォームにこの設定が表示されます。 ターゲットの Azure コンピューティング サービスを選択して、アプリケーションを移行します。 使用するターゲットを決定していない場合は、複数のターゲットを選択します。 その後、評価レポートのターゲットを比較できます。

価値 Description
Azure App Service Azure App Service にアプリをデプロイするためのベスト プラクティス。
Azure Kubernetes Service (AKS) Azure Kubernetes Service にアプリをデプロイするためのベスト プラクティス。
Azure Container Apps (ACA) Azure Container Apps にアプリをデプロイするためのベスト プラクティス。

クラウドの準備: ターゲット オペレーティング システム

Cloud Readiness ドメインを選択すると、フォームにこの設定が表示されます。 アプリを実行するターゲット オペレーティング システムを選択します。

価値 Description
リナックス アプリケーションを Linux プラットフォームに移行するためのベスト プラクティス。
ウィンドウズ アプリケーションを Windows プラットフォームに移行するためのベスト プラクティス。

クラウドの準備: コンテナー化

Cloud Readiness ドメインを選択すると、フォームにこの設定が表示されます。 アプリをコンテナー化するために修正する必要がある問題を分析できるようにします。

価値 Description
コンテナー化を有効にする アプリケーションをコンテナー化するためのベスト プラクティス。

例示

次の例では、いくつかの一般的な構成シナリオについて説明します。

  • 例 1: アプリを Linux コンテナーとして AKS に移行し、修正する必要がある問題を理解する必要がある場合。 次の構成を使用します。

    • 評価ドメイン: クラウド対応性の選択
    • 分析対象範囲: [問題のみ] を選択する
    • ターゲット コンピューティング サービス: Azure Kubernetes Service (AKS) を選択する
    • ターゲット オペレーティング システム: Linux を選択する
    • コンテナー化: [ コンテナー化を有効にする] を選択する
  • 例 2: App Service Linux にアプリを移行し、修正する必要がある問題を理解する必要がある場合。 次の構成を使用します。

    • 評価ドメイン: クラウド対応性の選択
    • 分析対象範囲: [問題のみ] を選択する
    • ターゲット コンピューティング サービス: Azure App Service を選択する
    • ターゲット オペレーティング システム: Linux を選択する
  • 例 3: JDK 21 にアプリを最新化し、修正する必要がある問題を理解する必要があります。 次の構成を使用します。

    • 評価ドメイン: Java アップグレードの選択
    • 分析対象範囲: [問題のみ] を選択する
    • ターゲット ランタイム: OpenJDK 21 を選択する

ツールが評価を完了すると、新しいレポートが生成され、レポート一覧に追加されます。 対話型ダッシュボードが自動的に開き、包括的な分析結果が提供されます。 複数の Azure サービス ターゲットを構成したら、それらを簡単に切り替えて移行方法を比較し、サービス固有の推奨事項を表示できます。

Azure サービス ターゲットの選択オプションを含む GitHub Copilot モダン化評価ダッシュボードを示す Visual Studio Code のスクリーンショット。

評価レポートを解釈する

評価レポートには、Azure の移行と最新化に対するアプリケーションの準備状況を理解するのに役立つ包括的な分析結果が用意されています。 このセクションでは、レポート構造について説明し、結果を解釈して、情報に基づいた移行の決定を行えるようにします。

レポート構造の概要

評価レポートは、いくつかの重要なセクションで構成されています。

  • アプリケーション情報: Java のバージョン、フレームワーク、ビルド ツール、プロジェクト構造など、アプリケーションに関する基本情報。
  • 問題の概要: 重要度の割合を持つドメイン別に分類された移行の問題の概要。
  • 詳細な分析: 詳細レポートは、次の 4 つのサブセクションにまとめられます。
    • 問題: 注意が必要なすべての問題の簡潔な概要を提供します。
    • 依存関係: アプリケーション内で検出されたすべての Java パッケージの依存関係を表示します。
    • テクノロジ: 機能ごとにグループ化されたすべての埋め込みライブラリが表示されるため、アプリケーションで使用されているテクノロジをすばやく表示できます。
    • 分析情報: 検出されたテクノロジを理解するのに役立つファイルの詳細と情報を表示します。

GitHub Copilot モダン化評価レポート ダッシュボードを示す Visual Studio Code のスクリーンショット。

問題

[ 問題 ] タブを選択して、このパーツにアクセスします。このタブには、アプリケーションを Azure に正常に移行するために対処する必要がある、Cloud Readiness、Java Upgrade、Security のさまざまな側面に関する問題の分類された一覧が表示されます。 次の表では、 ドメイン重要度 の値について説明します。

ドメイン Description
Java アップグレード 古いアプリ スタックを特定し、アップグレードの推奨事項を取得します。
クラウドの準備 実用的な移行ガイダンスを使用して、Azure に対するアプリの準備状況を評価します。
Security 推奨される修正プログラムを使用して、ISO 5055 ガイドラインを使用してコードのセキュリティの問題をスキャンします。
重要性 Description
必須 Azure への移行に関して修正する必要がある問題。
ポテンシャル 移行に影響する可能性があり、レビューが必要な問題。
オプション 影響の少ない問題。 修正することをお勧めしますが、省略可能です。

GitHub Copilot モダン化評価レポートの問題一覧を示す Visual Studio Code のスクリーンショット。

詳細については、タイトルを選択して、報告された各問題を展開します。 レポートには次の情報が表示されます。

  • インシデントが発生したファイルの一覧と、影響を受けたコード行の数。 ファイルが Java ソース ファイルの場合、ファイル行番号を選択すると、対応するソース レポートに移動します。
  • 問題の詳細な説明。 この説明では、問題の概要を説明し、既知の解決策を提供し、問題または解決策に関するサポート ドキュメントを参照します。

GitHub Copilot モダン化評価レポートの問題の詳細を示す Visual Studio Code のスクリーンショット。

依存関係

[ 依存関係 ] タブを選択して、このパーツにアクセスします。このタブには、アプリケーション内で検出されたすべての Java パッケージの依存関係が表示されます。

GitHub Copilot モダン化評価レポートの依存関係の一覧を示す Visual Studio Code のスクリーンショット。

技術

[ テクノロジ ] タブを選択して、このパーツにアクセスします。このタブには、分析されたアプリケーションで、機能別にグループ化されたテクノロジの出現箇所が一覧表示されます。 このレポートでは、アプリケーションで見つかったテクノロジの概要を示し、各アプリケーションの目的をすばやく理解できるように設計されています。

GitHub Copilot モダン化評価レポートテクノロジの一覧を示す Visual Studio Code のスクリーンショット。

Insights

[分析情報] タブを選択して、このパーツにアクセスします。検出されたテクノロジを理解するのに役立つファイルの詳細と情報が表示されます。

GitHub Copilot モダン化評価レポートの分析情報の一覧を示す Visual Studio Code のスクリーンショット。

評価レポートの運用

効果的なレポート管理により、コラボレーションが可能になり、評価履歴が維持され、既存のワークフローと統合されます。 評価の実行ごとにレポート一覧に独立したレポートが生成され、必要に応じて個々のレポートをインポート、エクスポート、または削除できます。

評価レポートのインポート

GitHub Copilot モダン化で評価を直接実行するだけでなく、評価レポートをインポートすることもできます。 レポートは 、appCAT CLI の結果 ( report.json、GitHub Copilot モダン化エクスポート レポート、Dr. Migrate のアプリ コンテキスト ファイルなど) から取得できます。

評価レポートを GitHub Copilot モダン化にインポートするには、評価レポート ページで [インポート] を選択するか、Ctrl+Shift+Pキーを押して、インポート評価レポートを検索します。

GitHub Copilot モダン化評価レポートのインポート インターフェイスを示す Visual Studio Code のスクリーンショット。

評価レポートのエクスポート

評価ダッシュボードでは、評価によって検出された問題を表示し、移行ソリューションを選択して決定を決定できます。 レポートをエクスポートし、他のユーザーと共有することができます。 レポートをエクスポートする場合、他のユーザーは自分で評価を実行する必要がなく、レポートをインポートし、評価と移行の決定を直接表示できます。

GitHub Copilot モダン化から評価レポートをエクスポートするには、レポート一覧でターゲット レポートの [... (その他のアクション)] ボタンを選択し、[エクスポート] を選択 します

GitHub Copilot モダン化評価レポートのエクスポート オプションとインターフェイスを示す Visual Studio Code のスクリーンショット。

評価レポートを削除する

レポートが不要になった場合は、レポート一覧から削除できます。

評価レポートを削除するには、レポートの一覧でターゲット レポートの [... (その他のアクション)] ボタンを選択し、[削除] を選択 します

GitHub Copilot モダン化による評価レポートの削除を示す Visual Studio Code のスクリーンショット。

評価を実行する前に構成する

評価を実行する前に、GitHub Copilot モダン化評価ウィンドウで [ 評価の構成 ] を選択して 構成 します。

[評価の構成] ボタンが強調表示されている GitHub Copilot モダン化評価ペインを示すスクリーンショット。

構成プロパティ

現時点では、評価の targetcapabilityos、および mode プロパティを構成できます。

既定では、評価は Azure Kubernetes Service (AKS)、Azure App Service、Azure Container Apps (ACA) をサービスターゲットとして使用して実行されます。

  • target: アプリを実行する Azure コンピューティング サービス。 使用するターゲットを決定していない場合は、複数のターゲットを選択します。 その後、評価レポートのターゲットを比較できます。

    価値 Description
    azure-aks Azure Kubernetes Service にアプリをデプロイするためのベスト プラクティス。
    azure-appservice Azure App Service にアプリをデプロイするためのベスト プラクティス。
    azure-container-apps Azure Container Apps にアプリをデプロイするためのベスト プラクティス。
  • capability: アプリを最新化するためのターゲット テクノロジ。

    価値 Description
    containerization アプリケーションをコンテナー化するためのベスト プラクティス。
    openjdk11 OpenJDK 11 に移行するためのベスト プラクティス。
    openjdk17 OpenJDK 17 に移行するためのベスト プラクティス。
    openjdk21 OpenJDK 21 に移行するためのベスト プラクティス。
  • os: アプリを実行する対象のオペレーティング システム。

    価値 Description
    linux アプリケーションを Linux プラットフォームに移行するためのベスト プラクティス。
    windows アプリケーションを Windows プラットフォームに移行するためのベスト プラクティス。
  • mode: 分析モード。

    価値 Description
    issue-only ソース コードを分析して、問題のみを検出します。
    source-only ソース コードを分析して、問題と使用されているテクノロジの両方を検出します。
    full ソース コードを分析して、問題と使用されているテクノロジの両方を検出し、依存関係を一覧表示します。

例示

次の例では、いくつかの構成について説明します。

  • 例 1: アプリを Linux コンテナーとして AKS に移行し、修正する必要がある問題を理解する必要がある場合。 次の構成を使用します。

    appcat:
    - target:
        - azure-aks
      os:
        - linux
      mode: issue-only
    
  • 例 2: App Service Linux にアプリを移行し、修正する必要がある問題を理解する必要がある場合。 次の構成を使用します。

    appcat:
    - target:
        - azure-appservice
      os:
        - linux
      mode: issue-only
    
  • 例 3: JDK21 にアプリを最新化し、修正する必要がある問題を理解する必要があります。 次の構成を使用します。

    appcat:
    - capability:
        - openjdk21
      mode: issue-only
    

ツールが評価を実行すると、対話型ダッシュボードが自動的に開き、包括的な分析結果が提供されます。

評価レポートを解釈する

評価レポートには、Azure の移行と最新化に対するアプリケーションの準備状況を理解するのに役立つ包括的な分析結果が用意されています。 このセクションでは、レポート構造について説明し、結果を解釈して、情報に基づいた移行の決定を行うのに役立ちます。

レポート構造の概要

評価レポートは、いくつかの重要なセクションで構成されています。

  • アプリケーション情報: Java バージョン、フレームワーク、ビルド ツール、プロジェクト構造、ターゲット Azure サービスなど、アプリケーションに関する基本情報。
  • 問題の概要: 重要度の割合を持つドメイン別に分類された移行の問題の概要。
  • 詳細な分析: 詳細レポートは、次の 4 つのサブセクションにまとめられます。
    • 問題: 注意が必要なすべての問題の簡潔な概要を提供します。
    • 依存関係: アプリケーション内で検出されたすべての Java パッケージの依存関係を表示します。
    • テクノロジ: 機能別にグループ化されたすべての埋め込みライブラリが表示され、アプリケーションで使用されているテクノロジをすばやく表示できます。
    • 分析情報: 検出されたテクノロジを理解するのに役立つファイルの詳細と情報を表示します。

GitHub Copilot モダン化評価レポート ダッシュボードを示すスクリーンショット。

問題

[ 問題 ] タブを選択して、このパーツにアクセスします。このタブには、アプリケーションを Azure に正常に移行するために対処する必要があるクラウドの準備と Java アップグレードのさまざまな側面に関する問題の分類された一覧が表示されます。 次の表では、 ドメイン重要度 の値について説明します。

ドメイン Description
クラウドの準備 アプリの依存関係を評価して、Azure サービスを提案し、クラウドネイティブの準備ができていることを確認します。
Java アップグレード バージョンのアップグレードに関する JDK とフレームワークの問題を特定します。
重要性 Description
必須 Azure への移行に関して修正する必要がある問題。
ポテンシャル 移行に影響する可能性があり、レビューが必要な問題。
オプション 影響の少ない問題。 修正することをお勧めしますが、省略可能です。

GitHub Copilot モダン化評価レポートの問題の一覧を示すスクリーンショット。

詳細については、タイトルを選択して、報告された各問題を展開します。 レポートには次の情報が表示されます。

  • インシデントが発生したファイルの一覧と、影響を受けたコード行の数。 ファイルが Java ソース ファイルの場合、ファイル行番号を選択すると、対応するソース レポートに移動します。
  • 問題の詳細な説明。 この説明では、問題の概要を説明し、既知の解決策を提供し、問題または解決策に関するサポート ドキュメントを参照します。

GitHub Copilot モダン化評価レポートの問題の詳細を示すスクリーンショット。

依存関係

[ 依存関係 ] タブを選択して、このパーツにアクセスします。このタブには、アプリケーション内で検出されたすべての Java パッケージの依存関係が表示されます。

GitHub Copilot モダン化評価レポートの依存関係リストを示すスクリーンショット。

技術

[ テクノロジ ] タブを選択して、このパーツにアクセスします。このタブには、分析されたアプリケーションで、機能別にグループ化されたテクノロジの出現箇所が一覧表示されます。 このレポートでは、アプリケーションで見つかったテクノロジの概要を示し、各アプリケーションの目的をすばやく理解できるように設計されています。

GitHub Copilot モダン化評価レポートテクノロジの一覧を示すスクリーンショット。

Insights

[分析情報] タブを選択して、このパーツにアクセスします。検出されたテクノロジを理解するのに役立つファイルの詳細と情報を表示します。

GitHub Copilot モダン化評価レポートの分析情報の一覧を示すスクリーンショット。

評価レポートを削除する

レポートが不要な場合は、削除できます。

評価レポートを削除するには、[ 評価レポート ] を右クリックし、[ 削除] を選択します。

GitHub Copilot モダン化による評価レポートの削除を示すスクリーンショット。

次のステップ

クイック スタート: 独自のスキルを作成して適用する