このページの本文へ

前へ 1 2 次へ

日本マイクロソフトのハッカソン「GitHub Copilot Quest」をレポート

レガシーアプリをGitHub Copilotでハックせよ! 若手SIerらがモダナイゼーションチャレンジ

2025年12月26日 07時00分更新

文● 福澤陽介/TECH.ASCII.jp

提供: 日本マイクロソフト

  • この記事をはてなブックマークに追加
  • 本文印刷

 生成AIの登場により、ソフトウェア開発の現場では急速に変革が進んでいる。「GitHub Copilot」を始めとするAIコーディングエージェントは、開発効率の向上にとどまらず、レガシーアプリケーションのモダナイゼーションも後押しする。

 日本マイクロソフトは、2025年12月15日、GitHub CopilotとAzureを活用したハッカソン「GitHub Copilot Quest:Hack the Legacy」を開催した。初回テーマは「レガシーモダナイゼーション」である。

 ハッカソンには、NECソリューションイノベータ、NTTデータグループ、野村総合研究所、⽇⽴製作所、富⼠通の精鋭5社が集結。GitHub Copilotを通じてAI開発の可能性を探求した。

ゲーム感覚の“クエスト”でLearn・Build・Transformする「GitHub Copilot Quest」

 GitHub Copilot Quest(通称“コバクエ”)は、「GitHub Copilotはただのツールではなく“新しい開発スタイル”や“組織変革”のトリガーである!」をスローガンに掲げるハッカソンである。

 各回で設定される“クエスト”への挑戦を通じて、AI時代の開発ベストプラクティスを学び(Learn)、自社文脈に効くたたき台を作り(Build)、開発スタイルや組織の変革ストーリーを広める(Transform)ための機会を提供する。

GitHub Copilot Questとは?

 記念すべき初回のクエストは、「レガシーモダナイゼーション」だ。各チームは、6時間という限られた時間の中でGitHub CopilotとAzureを駆使し、日本マイクロソフトが用意したアプリケーションをモダナイズする。その成果をプレゼンし、審査員による講評を受ける流れとなっている。

 モダナイズ対象のレガシーアプリは、「Java EE(J2EE)」と「.NET(.NET Framework)」から選べる。Java EEは、2000年代後半に広くに使われていたJava 5で構築された書店販売管理システム、.NETは、.NET Framework 3.0をベースに4.8にアップデートされた、約15年前のミュージックストアアプリだ。

モダナイズ対象のレガシーアプリケーション

 今回参加した日本マイクロソフトのパートナー企業5チームの内、NTTデータグループだけが.NET、残り4チームはJava EEを選択した。ここからは、各チームによるプレゼンのハイライトをお届けする。

野村総合研究所:環境問題に振り回されるもGitHub Copilotとの役割分担に手ごたえ

 野村総合研究所では、モダナイゼーションやAI、DBの専門家からなるチームを結成し、GitHubのプロダクトオーナー経験が豊富な萩平氏がプレゼンを務めた。全員が初ハッカソンかつ顔を合わせたこともなかったため、対面で協力して開発するという体験を「みんなで楽しむ」ことをゴールに掲げた。

野村総合研究所 萩平さん

 工夫した点は、最初にGitHub Copilotにレガシーアプリを解析させて、その結果を基に作戦を立てたことだ。狙い通り、ソフトウェアスタックのAsIs(現状)からToBe(理想)を特定するも、その後は環境面でのトラブルに振り回される。クラウドIDEであるCodespacesが動かず、自社環境にて構築。マイグレーション後もAzureでMySQLが動かず、GitHub CopilotにSQLを書き直してもらうことで、PostgreSQLで代替した。

 結果、モダナイゼーションは達成するも、苦戦続きの開発だった。特に、今風のアプリを目指して、StrutsからアノテーションベースのSpring Bootにフレームワークを移行するも、GitHub Copilotが依存関係までを解析しきれなかったことは、改善の余地があったという。萩平氏は、「ビジネスの仕組みだけをGitHub Copilotに任せて、依存関係などのシステマティックな仕組みは人で補えば、上手くいったはず。いずれにしても、今日1日経験を積んだので、次はできます」と手ごたえを得られた様子だった。

環境問題に振り回されるも、モダナイゼーションを達成

 審査員を務めた日立製作所の溝江彰人氏は、「最初にCodespacesが動かなかった点が非常に痛かったところだが、GitHub Copilotの力を借りて、ソフトウェアスタックを解析し、Codespacesで環境を作り、GitHub Actionsでデプロイを自動化するという作戦は、ハッカソンの趣旨にマッチしたチャレンジだった」と評している。

日立製作所:ソースコードからユースケース生成でシナリオ漏れを低減

 日立製作所は、共通技術系部署から、AIに明るく、モダナイゼーションを経験するメンバーで挑戦。プレゼンを務めた吉良氏は、こちらも全員初対面の中で、「皆の知識量を肌で感じながら開発を進められた」と語る。

日立製作所 吉良さん

 同チームは、まず顧客と課題の設定から始めた。複数拠点を構え、国外販売やニッチな本に注力する中小規模の書店をイメージ。そして、保守期限が近いオンプレミス環境からクラウド化を検討中で、業務部門からUIの改善を要求されているという設定だ。こうした前提を踏まえ、技術要素の更新、コンテナ化、改善対応、クラウドシフト、将来的なマイクロサービス化といったステップを定め、GitHub Copilotに相談しながら具体的な計画を立てた。

 技術要素の更新に関しては、Javaのリファクタリングツールである「OpenRewrite」に全振りしつつ、GitHub Copilotにすべてを任せるのではなく“コード解析+ルールベース”で進めた。このステップでは、人手で30日かかる工数がわずか4時間で完了したという。その後、GitHub Copilotを利用しながら、メニュー表示を使いやすく改善し、Azure移行の手順をまとめたところでタイムアップとなった。

 工夫した点は、新旧の比較テストにおける計画立案にGitHub Copilotを活用したことだ。よくある「ドキュメントが最新化されていない問題」を想定して、ソースコードからユースケースを生成させて、シナリオ漏れを防いだ。

限られた時間の中で、業務ごとにメニューをグルーピングして使いやすいUIに刷新

 審査員であるNECソリューションイノベータの小川英孝氏は、「顧客のペルソナから、オンプレで運用保守に苦労しているといった課題感を設定したところ、実行ステップにてマイクロサービス化まで拡張していくストーリーを想定していたところが良かった」と評している。

前へ 1 2 次へ

カテゴリートップへ

  • 角川アスキー総合研究所