GitHub Copilot App Modernization for Java & .NET

3.8K Views

November 07, 25

スライド概要

GitHub Copilot Meetup Japan #1
https://aid.connpass.com/event/368649/

profile-image

FPT ジャパン FPT データ& AI インテグレーション エグゼクティブエバンジェリスト 独立行政法人 国立印刷局 デジタル統括アドバイザー兼最高情報セキュリティアドバイザー Microsoft エバンジェリスト時代から、Dell、Accenture、Elastic、VMware を経て現職まで一貫して開発者向けに最新技術を啓発。GPU クラウド技術訴求、AI 駆動開発推進。  政府の仕事は、内閣官房 政府 CIO 補佐官、 デジタル庁 PM を経て、現職を兼務。 AI 駆動開発勉強会主催/AI 駆動開発コンソーシアム副座長 Locofy.ai Regional Developer Advocate Google Cloud Partner All Certifications Holder 2025

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

GitHub Copilot App Modernization for Java/.NET AI によるアプリケーションモダナイゼーションの⾃動化 2025年11⽉7⽇ https://githubuniverse.com/ 鈴⽊ 章太郎 Executive Evangelist, FPT Japan Holdings

2.

鈴⽊ 章太郎 X (Twitter) ︓ @shosuz https︓//www.docswell.com/user/shosuz FPT ジャパン FPT データ& AI インテグレーション エグゼクティブエバンジェリスト 独⽴⾏政法⼈ 国⽴印刷局 デジタル統括アドバイザー兼最⾼情報セキュリティアドバイザー 略歴︓ AI 駆動開発勉強会主催。Microsoft エバンジェリスト時代から、Dell、 Accenture、Elastic、VMware を経て現職まで⼀貫して開発者向け に最新技術を啓発。GPU クラウド技術訴求、AI 駆動開発推進。 政府の仕事は、内閣官房 政府 CIO 補佐官、 デジタル庁 PM を経て、 現職を兼務。 GH-300 コースをエディフィストラーニング社で MCT (Microsoft 認定 トレーナー) として担当中。 Google Cloud Partner All Certifications Engineer 2025。

3.

GitHub Copilot App Modernization とは AI によるアプリケーション現代化の統合ソリューション 定義︓AI エージェントが評価→計画→変換→検証→ デプロイまでを⼀貫⽀援し、アプリケーション現代化を 加速するソリューション • アセスメントと移⾏計画の⾃動⽣成 コードベース・依存性・ クラウド適合性の包括分析 • OpenRewrite 等を⽤いたコード変換・API 置換 Java 8→21、.NET Framework → .NET 6+ • ビルド/テストの⾃動修復ループと CVE スキャン - 品質とセキュリティの確保 // Before Locale locale = new Locale("EN"); // メソッド⾮推奨警告... // After - Copilotによる⾃動修正 Locale locale = Locale.of("EN"); // 最新APIに対応済み • IaC ⽣成と Azure への⾃動デプロイ - ⼿戻り最⼩化、運⽤最適化 • 数週間かかる作業を数時間〜数⽇で完了 - 開発者体験の⾰新 GitHub Copilot Java .NET Azure

4.

GitHub Universe 2025における位置づけ Agentic SDLC の全体像 • • • • 3層アーキテクチャ: Agent HQ → Create / Collaborate / Operate Create 層の中核: App Modernization(Upgrade / Migrate / Deploy) Collaborate: Coding Agent / Code Review / MCP 連携 Operate: SRE Agent / Mission Control Agent HQ プラットフォーム全体を統括するエージェント管理層 Create Agent Mode / Vision / MCP App Modernization (Upgrade / Migrate) Collaborate Coding Agent / Code Review / GitHub 連携 Operate SRE Agent / Mission Control / Cloud 運⽤⾃動化 GitHub Copilot の App Modernization は開発者⽣産性の⼤幅な向上と技術負債の削減を実現

5.

GitHub チャンネル 11/6 配信 AI & Copilot: Modernizing Applications for the Cloud(Ayan Gupta) https://www.youtube.com/watch?v= a9glyQs6cbE

6.

現在の提供状況(2025年9⽉23⽇発表) Java 向け App Modernization GA .NET 向け App Modernization Preview • VS Code / IntelliJ 拡張と Agent Mode による完全統合 • Visual Studio 2022+ への直接統合 • アプリケーション評価と移⾏計画の⾃動⽣成 • .NET Framework → .NET 8+ へのアップグレード • Java 8→11/17/21等のランタイム更新と依存関係修正 • Legacy/Web Forms → ASP.NET Core への移⾏⽀援 • Spring Boot/Framework の⾃動バージョンアップ • クラウドネイティブ対応(シークレット管理、可観測性) • Azure 移⾏(S3 → Blob、RabbitMQ → Service Bus 等) • Azure 展開(ACA/AKS/App Service など) • Managed Identity 認証への⾃動変換 • Windows → Linux コンテナへの移⾏サポート 2025年5⽉ 2025年9⽉23⽇ 2025年10⽉末〜 Build 2025 Agent Mode 強化 Java GA 化 .NET Preview 発表 Universe 2025

7.

AI エージェントによる4つの主要機能(概要) 1 アプリケーション評価と 計画 コード/依存/クラウド適合性 を解析し計画化 4 コード変換 コンテナ化とデプロイ IaC ⽣成、CI/CD 設定、 Azure への展開 2 OpenRewrite 等で⾃動 アップグレード・API 置換 3 モダナイズとセキュリティ ビルド修復、テスト実⾏、 CVE 検出・修正

8.

各機能の詳細 1⃣ アプリケーション評価と計画 コードベース分析/依存特定 クラウド就航性(AppCAT) 2⃣ コード変換 Java/.NET の⾃動アップグレード 計画→実⾏→差分提⽰ 3⃣ モダナイズとセキュリティ ビルド/テスト⾃動実⾏ CVE スキャン 4⃣ コンテナ化とデプロイ IaC(Bicep/Terraform 等)⽣成 監視有効化 技術負債と課題の⾒える化 移⾏シナリオ提案 API 置換、依存更新 ⼈間確認ループ エラー⾃動修復 安全版への⾃動提案 ACA/AKS/App Service 等へデプロイ 運⽤⾃動化

9.

① -1 アプリケーション評価と計画 包括的分析ポイント プロジェクト構成(モジュール/ビルド設定)の完全把握 ランタイム/フレームワーク/依存性のバージョンと⾮推奨 API 特定 テスト/品質/セキュリティ観点の事前診断と課題特定 クラウド移⾏に向けたギャップ分析とロードマップ ⼿戻りを最⼩化する段階的アプローチの⽴案 Project Analysis Plan Recommendations

10.

DEMO – Assessment 報告書の⾃動⽣成 • • • • GitHub Copilot App Modernization ツールの起動 "Run Assessment” ボタンをクリック 5-10分でアセスメント完了 Asset Manager プロジェクト(Java 8、AWS)のスキャン

11.

DEMO – Assessment 報告書の結果画⾯ • • • • Mission Control Dashboard の表⽰ Java version: 8を認識 Issue Summary: • 4 Java upgrade issues • 10 cloud readiness issues • Mandatory/Potential/Optional 分類 74% of issues can be resolved via Microsoft provided solutions

12.

① -2 クラウド対応性評価の内容 評価レポート例 ターゲット選定(ACA/AKS/App Service/AKS Automatic 等)と最適化提案 ID/シークレット移⾏(Managed Identity/Key Vault)によるセキュリティ強化 ネットワーク/ストレージ/メッセージングの互換性と移⾏パス 運⽤要件(監視/アラート/ログ収集)の⾃動化と標準化 コスト/パフォーマンスのバランス分析と最適リソース提案 Cloud Assessment Report 移⾏対象サービス評価完了 アーキテクチャ案 3パターン⽣成 ステップ別移⾏計画⾃動作成

13.

② コード変換の技術的アプローチ OpenRewrite によるレシピ適⽤(Java 8 → 11/17/21 等) 事前定義タスクで API/依存の安全置換 プラン提⽰→⼈間承認→実⾏→差分と結果を要約 ビルド/テストを回しつつ⾃⼰修復 Before After Locale locale = new Locale("EN"); Locale locale = Locale.of("EN"); ⾃動変換後も品質を担保するため、最終決定は⼈間の監督下で実施

14.

DEMO – Java Version Upgrade の実⾏ • • • • • "Java version upgrade" → "Run task” をクリック Copilot が⾃動的にプランを作成 MCP tool を使⽤して Java 8 → Java 21 へアップグレード Open Rewrite ツールを活⽤ プロジェクトのビルドと検証

15.

カスタムタスクの⾃動⽣成 コミットや既存 PR からパターン抽出→内製知⾒をタスク化 再利⽤可能な変換フォーミュラ(RabbitMQ → Service Bus 等)で効率化 組織標準/ベストプラクティスの継承と知⾒の蓄積 ⼈間の監督下で段階的に適⽤し、安全性を担保 Commit Learn Apply Pattern

16.

③ ビルド検証と整合性維持 ビルド⾃動化(依存解決→コンパイル→テスト)によるフィードバックループの⾼速化 失敗時は原因分析→⾃動修復提案→再実⾏の⾃⼰修復サイクル CI/CD 整合性(ブランチ戦略/ゲート/品質基準)の継続担保 テストカバレッジの維持/向上提案と⾃動テスト⽣成 依存解決 ⼿動作業の⼤幅削減による迅速なフィードバックと品質向上 コンパイル テスト実⾏ 品質検証 テストカバレッジ 変更前 変更後

17.

セキュリティ脆弱性の⾃動管理(CVE) 依存関係の CVE スキャン⾃動実⾏で脆弱性を早期に検出 安全版/代替ライブラリの⾃動提案とアップグレードパス提⽰ コンプライアンス基準(OSS ライセンス/ポリシー)整合性の継続的検証 修正後バリデーション(再ビルド/再テスト)による安全性確認 セキュリティ対応の⾃動化による⼈的ミス排除と迅速な対応 CVE 検出 修正 検証

18.

DEMO – CVE 脆弱性スキャンと結果 • • • • • • Java upgrade 完了後の Upgraded Java Project Summary CVE issues 検出 2つの Critical issues を発⾒ ⾃動修正を試⾏(⼀部は⼿動対応が必要) Code commits の詳細表⽰ セキュリティを重視したプロセス

19.

④ コンテナ化とデプロイの⾃動化 Dockerfile/マニフェスト/IaC ⽣成によるインフラストラクチャのコード化と標準化 環境別パラメータ化とシークレット分離(Key Vault)で安全性と再利⽤性を確保 Azure へのデプロイ(ACA/AKS/App Service/AKS Automatic)を⾃動構成 監視/ログ/オートスケールを⾃動有効化しデプロイ後の運⽤も⽀援 CI/CD パイプラインとの統合による DevOps ⽂化の促進 コード コンテナ Azure ACA AKS App Service AKS Automatic

20.

Java 向け事前定義タスク︓メッセージング RabbitMQ → Azure Service Bus︓AMQP 互換、トピック・キュー・サブスクリプション ActiveMQ → Azure Service Bus︓JMS API サポート、トランザクション処理 AWS SQS → Azure Service Bus︓ペイロード互換、デッドレター対応 マネージド可⽤性とセキュリティ︓ゾーン冗⻑、IAM/MI 認証、暗号化 運⽤負荷軽減と可観測性︓⾃動スケール、メトリクス連携、分散トレース RabbitMQ API マッピング 依存置換 Azure Service Bus ActiveMQ 設定更新 マネージド スケーラブル AWS SQS 安全なID認証 Managed Identity ⾼度な可観測性 Application Insights 運⽤⾃動化 スケール・フェイルオーバー

21.

Java 向け事前定義タスク︓データベース PostgreSQL/MySQL → Azure Database(マネージドインスタンス/フルマネージド) JDBC 接続の MI 対応 - パスワード不要のセキュアな接続 接続⽂字列/トークン化 - 環境別設定と安全な資格情報管理 スキーマ/マイグレーション(Flyway/Liquibase 等)の⾃動更新 接続プール/トランザクション検証 - 信頼性と性能の最適化 Managed Identity 認証 PostgreSQL MySQL Azure Database for PostgreSQL/MySQL

22.

Java 向け事前定義タスク︓ストレージ AWS S3 → Azure Blob Storage へのスムーズな移⾏ ファイルI/O 抽象化によるアプリケーションコードへの影響最⼩化 SDK 置換と互換性コードの⾃動⽣成(AWS SDK → Azure SDK) 署名/権限の移⾏(IAM → Managed Identity/SAS)と認証機構の最新化 ⼤容量/バージョニング/ライフサイクル管理の構成移⾏と最適化 AWS S3 Azure Blob Storage Managed Identity 対応でセキュア・ローコスト・⾼可⽤性のストレージ基盤へ

23.

Java 向け事前定義タスク︓セキュリティ Secrets 管理を Key Vault へ移⾏ ̶ 構成ファイル・環境変数からの安全な移⾏ アプリ認証を Managed Identity へ ̶ サービスプリンシパル・接続⽂字列の安全化 Spring Security/OAuth2 構成(Entra ID)̶ シングルサインオン・権限委譲 監査ログ/ポリシー適⽤ ̶ セキュリティ監視・コンプライアンス⾃動化 Azure Key Vault セキュリティ保護

24.

Java 向け事前定義タスク︓通信・監視 メール送信︓SMTP → Azure Communication Services への⾃動移⾏ ログ/トレース︓OpenTelemetry フレームワークへの統合と構成⾃動化 App Insights による分散トレース/アラート設定の⾃動構成 ダッシュボード⾃動⽣成︓アプリ監視、パフォーマンス指標、例外追跡 マルチリージョン設定のサポートと地理的分散サービスの可観測性 OpenTelemetry Application Insights

25.

DEMO – AWS → Infrastructure Provisioning & Deployment • • • • • "Provision infrastructure and deploy to Azure” タスクを実⾏ Architecture diagram の⾃動⽣成(Mermaid形式) Azure CLI tools を使⽤ Bicep files の⾃動作成 Containerization & Deployment

26.

DEMO – AWS → Azure 移⾏タスクの実⾏ • • • • • Cloud readiness issues から Database migration を選択 "Migrate to public cloud" → "Run task" MCP tool を使⽤して AWS → Azure へ移⾏ PostgreSQL、S3、RabbitMQ → Azure PostgreSQL、Blob Storage、Service Bus 設定ファイルの⾃動⽣成

27.

.NET 向け事前定義タスク︓データベース SQL Server → Azure SQL / Azure SQL Managed Instance への移⾏ 接続の Managed Identity 対応・シークレットレス化 EF Core の構成移⾏と最適化 ⼀時的エラー対応の接続リトライポリシー適⽤ パフォーマンス最適化(インデックス/キャッシュ設計) ゼロダウンタイム移⾏戦略の実装 Managed Identity SQL Server Azure SQL オンプレミス / ⾃⼰ホスト型 フルマネージド / スケーラブル

28.

.NET 向け事前定義タスク︓メッセージング RabbitMQ/On-prem MQ → Azure Service Bus - メッセージング基盤の移⾏と互換性確保 メッセージフォーマット/リトライ/デッドレター - 既存パターンの保持と Azure ベストプラクティス適⽤ 並列性と順序保証の設計 - セッション機能とパーティション分割によるスケーラビリティ向上 テレメトリと可観測性 - Azure Monitor との統合でエンドツーエンドの監視を実現 RabbitMQ / On-prem MQ オンプレミス環境 マネージド運⽤ マネージドサービスへの移⾏ エンタープライズセキュリティ Azure Service Bus フルマネージド メッセージングサービス ⾃動スケール 統合監視

29.

.NET 向け事前定義タスク︓ストレージ・認証 ファイル/Blob 移⾏(ローカル/NAS→Azure Blob)- SDK 置換、権限モデル適応 認証/認可: Entra ID、MSAL、Managed Identity への移⾏と統合 設定/シークレット管理の標準化 - Key Vault と構成プロバイダー連携 Audit/コンプライアンス対応 - ログ統合、セキュリティポリシー適⽤ ASP.NET Core Identity から Entra ID へのスムーズなマイグレーションパス ストレージの最適化 セキュリティ強化

30.

.NET 向け事前定義タスク︓監視・キャッシュ OpenTelemetry/Logging(構成⾃動化)- 分散トレースとメトリクス収集 Azure Monitor / App Insights - 統合監視とエンドツーエンド可観測性 分散キャッシュ(Azure Cache for Redis)- スケーラブルなデータアクセス⾼速化 SLO/アラート/⾃動復旧 - インシデントの⾃動検出と対応 Azure Monitor ダッシュボード アプリケーション パフォーマンス 応答時間 エラー率 リソース使⽤率 Azure Cache for Redis

31.

.NET 対応プロジェクトタイプ ASP.NET / ASP.NET Core(Web/API)- RESTful API、MVC、Blazor アプリケーション ワーカー/サービス/関数 - バックグラウンドサービス、Azure Functions、Worker Service WPF/WinForms - デスクトップアプリケーション(移⾏シナリオ提⽰) テスト/ツールプロジェクト - xUnit、MSTest、NUnit、ヘルパーツール 対応 IDE: Visual Studio 2022 +(Agent Mode 統合) Visual Studio .NET GitHub Copilot と .NET App Modernization で Visual Studio 内のエージェント駆動変換を実現

32.

Azure との統合メリット 技術的メリット • Managed Identity / Key Vault で安全な ID 認証と機密情報管理を実現し、パスワードの排除と 定期的なローテーションを⾃動化 デプロイ選択肢 Azure Container Apps - サーバーレスコンテナ実⾏環境 Azure Kubernetes Service (AKS) • 観測・セキュリティ・SRE を⼀体化することで、開発 からデプロイ、運⽤までの全サイクルで⼀貫した体験 を提供 - フルマネージド K8s App Service - フルマネージド Web アプリプラットフォーム • ガバナンス / コスト最適化により、リソースの無駄を 排除し、スケーリング時のコスト予測と制御が可能に • アプリケーションの⾼可⽤性とディザスタリカバリを プラットフォームレベルで実現 AKS Automatic - ノーコード K8s ⾃動管理 • CI/CD (GitHub Actions)とシームレス連携 • IaC (Bicep/Terraform) の⾃動⽣成でリピータブル なデプロイ

33.

DEMO – デプロイ済みアプリケーション • • • • 実際に Azure にデプロイされた Asset Manager アプリを表⽰ ファイルアップロード機能のデモ AI ⽣成画像をアップロード Gallery 表⽰とファイル削除機能

34.

始め⽅︓Java 開発者向け 前提条件 VS Code, IntelliJ - 最新版の Visual Studio Code, IntelliJ GitHub Copilot ライセンス(Pro、Business、Enterprise) App Modernization 拡張(Java)のインストール ⼿順 1. リポジトリを開き、Agent Mode を起動 2. Assess → Plan → Upgrade → Migrate → Validate 3. Azure へデプロイ(ACA/AKS/App Service) サンプルリポジトリ for Java/.NET 「Asset Manager」 で練習すると効果的 リポジトリを開く Agent Mode 起動 Assess & Plan Upgrade & Migrate Azure へデプロイ

35.

始め⽅︓.NET 開発者向け 前提 Visual Studio 2022+/GitHub Copilot(Agent Mode 対応) .NET App Modernization 拡張(Public Preview) ⼿順 1 ソリューション分析 → アップグレード計画の⾃動⽣成(.NET 6/7/8 等) ⾃動変換 → ビルド/テスト修復ループ(⾃⼰修復能⼒) 2 ソリューション分析 依存性とアップグレード計画 コード変換 API 更新・バグ修正 Azure 対応 → IaC ⽣成→継続的デプロイ(CI/CD 設定) 3 4 クラウド対応 Managed Identity・CI/CD デプロイ Azure・監視・アラート

36.

• Ford China: 70%の⼯数削減 実績データ紹介 • Telecommunications company (China): Java version upgradeを迅速化 • Microsoft Discovery & Quantum team: 80%以上の⼯数削減 • GM: 1,300ファイルの変更を3時間で完了 • Toyota、Verizon、Shein、Capgemini も使⽤

37.

まとめ 評価→変換→検証→デプロイを AI が伴⾛し、全⼯程を加速 Java は GA 提供、.NET は Public Preview で開発現場への導⼊が容易 再利⽤可能なカスタムタスクで組織知を資産化し内製化を促進 CVE/コンプライアンスを⾃動で継続担保し、セキュリティ強化 Azure 統合でマネージド ID や Key Vault を活⽤し、安全かつ運⽤容易 15–20分の導⼊で現場展開の⾜がかりに、変化に強い開発体制へ

38.

おまけ︓ GitHub Copilot for Xcode︓MCP Registry Xcode 開発者向け︓IDE 内で MCP サーバーを管理 🎉 GitHub Universe 2025で発表 MCP Registry の主な機能︓ MCP サーバーの閲覧 IDE 内から直接インストール サーバー管理の⼀元化 Xcode を離れずに完結 提供状況︓ 閲覧 インストール + Public Preview パブリックプレビュー 対象開発者︓ 🍎 iOS / macOS / Swift 開発者 詳細情報︓ Public Preview devblogs.microsoft.com/xcode/mcp-registry-and-allowlist-controls-now-available-in-github-copilot-for-xcode-public-preview/ 管理

39.

参考リソース 📹 デモビデオ GitHub Copilot App Modernization for Java - Asset Manager Demo (10分) https://www.youtube.com/watch?v=5abTrmldc0Q Java App Modernization Simplified with AI | BRK131 (1時間) https://www.youtube.com/watch?v=TBS2sv-e80o 🆕 最新デモビデオ(2025年11⽉6⽇配信) AI & Copilot: Modernizing Applications for the Cloud(1時間20分 - Ayan Gupta) https://www.youtube.com/watch?v=a9glyQs6cbE 📝 技術ブログ A step-by-step guide to modernizing Java projects with GitHub Copilot agent mode https://github.blog/ai-and-ml/github-copilot/a-step-by-step-guide-to-modernizing-java-projects-with-github-copilot-agent-mode/ 📊 プレゼンテーション Agentic DevOps: Evolving Software Development with GitHub Copilot (SlideShare) https://www.slideshare.net/slideshow/agentic-devops-evolving-software-development-with-github-copilot/283444563 📚 Microsoft Learn Java開発者向け https://learn.microsoft.com/en-us/azure/developer/java/migration/migrate-github-copilot-app-modernization-for-java .NET開発者向け https://learn.microsoft.com/en-us/dotnet/core/porting/github-copilot-app-modernization/overview

40.

フロントエンド⽀部 #1 with あずもば 2025年12⽉11⽇ https://aid.connpass.com/event/(TBD)/

41.

Microsoft |Git・GitHub NEW GitHub Copilot https://www.edifist.co.jp/course/MSCGH300 開催⽇程︓2025/10/24(⾦)、11/21(⾦)、12/19(⾦)、2026/1/23(⾦)、2/27(⾦)、3/27(⾦) 本コースは、GitHub Copilot の機能とその責任ある活⽤⽅法を学ぶためのトレーニングです。 Microsoft の最近の調査では、GitHub Copilot の活⽤により⼤幅な⽣産性の向上を経験することがわかりました。 ・ 新しいコードの 46% が AI によって記述されるようになった ・ 開発者の全体的な⽣産性が 55% 速くなった ・ 開発者の 74% が満⾜のいく作業に集中できるようになったと感じている どのような⼿段で⽣産性の向上が実現可能か、具体的なケースによる GitHub Copilot の活⽤⽅法を学びます。 対象者 ・ ソフトウェア開発者、DevOps エンジニア、管理者の⽅ ・ AI ツールを開発ワークフローに統合したい⽅ ・ 責任ある AI の使⽤と倫理的な配慮を学びたい⽅ ・ GitHub Copilot の機能を深く理解し、業務に活⽤したい⽅ 研修⽇数 1⽇ 時間 9:30〜17:30 受講料 7,7000 円(税込) 学習形態 オンライン 前提条件 MSCGIT01 : Git・GitHub 基礎と実践 (https://www.edifist.co.jp/course/MSCGIT01) 受講済、または、次の知識を保有する⽅ ・ 統合開発環境 (Visual Studio Code) と GitHub などのバージョン管理システムに関する知識 ・ AI と機械学習の原則に関する基礎知識 到達⽬標 ・ GitHub Copilot を責任ある⽅法で活⽤できる ・ 効果的なプロンプトを作成し、提案精度を向上できる ・ Visual Studio Code や CLI など様々な環境で Copilot を使いこなせる ・ Business や Enterprise プランの管理機能を理解できる コースコード MSCGH300

42.

Thank you for your attention!