Skip to content

PHP 5.3の配電工事管理システムをJava 21/Vue 3へ刷新

本プロジェクトでは、PHP 5.3.6で構築されたモノリス型の配電工事管理システムを、Java 21/Vue 3へ段階的に再構築するモダナイゼーションPoCを実施しました。PoCでは16画面を対象に3カ月間で検証を行い、AIの活用によって移行工数を41%削減しました。

プロジェクト概要

対象システム 配電工事管理システム
業務範囲 調達 → 地中工事 → ケーブル → 配電
PoC検証範囲 16画面
PoC期間 3カ月
AI活用による移行工数削減 41%(115 MD → 67.8 MD)

現行システムと移行先システム

現行システムは、約900K LOCのソース、1,291本のPHPファイル、7,548本のSQLファイル、約800画面・8モジュールで構成されています。本PoCでは、バックエンドにJava 21、Spring Boot 3、MyBatis、HikariCP、REST API、フロントエンドにVue 3、TypeScriptを採用しました。Oracleのスキーマは変更せずに移行を検証しました。

現行システム 移行先システム構成
  • 約900K LOC
  • 1,291本のPHPファイル
  • 7,548本のSQLファイル
  • 約800画面・8モジュール

Backend:Java 21、Spring Boot 3、MyBatis、HikariCP、REST API

Frontend:Vue 3、TypeScript

DB/Infra:Oracle(スキーマ不変)

6ステップ移行:環境構築 → AI旧ソース分析 → パターン定義 → スケルトン生成 → 画面変換 → 手動テスト

課題・アプローチ・PoC実証結果

01.AI-DLCによる移行効率化

課題:PHP 5.3のEOLとレガシーモノリスにより、移行作業の負荷が増大していました。

NTQのアプローチとPoC実証結果:AI-DLC手法を活用し、旧ソース分析、移行パターン定義、テンプレート生成、画面移行を標準化・効率化しました。その結果、移行工数を115 MDから67.8 MDへ短縮し、41%削減しました。

02.Oracleスキーマ変更ゼロ

課題:7,548本のSQLファイルが存在し、Oracleスキーマの変更による影響が大きいことが課題でした。

NTQのアプローチとPoC実証結果:DDLを変更せず、既存SQLをMyBatis XMLへ移行しました。また、PHP変数からMyBatisパラメータへのマッピングをAIで自動化しました。既存SQLを再利用することでSQLの書き換えを回避し、移行リスクを最小化しました。

03.依存関係解析・4層品質保証

課題:複雑なinclude/require依存により、移行後のロジック、データベース、画面表示の同等性確認が困難でした。

NTQのアプローチとPoC実証結果:AIで依存関係を自動追跡し、業務ロジック比較、DB状態比較、Playwright E2E、日本語メッセージ確認の4層で品質を検証しました。その結果、業務ロジック同等性100%、DB状態比較100%合格を確認し、日本語メッセージを完全に維持しました。

04.モダン技術への刷新

課題:PHP 5.3時代のセキュリティ脆弱性と技術的負債が課題となっていました。

NTQのアプローチと展開計画:Java 21、Spring Boot 3、Vue 3を採用し、レガシーモノリスをモダンなWebアーキテクチャへ刷新しました。これにより、クラウド・API拡張基盤を確立しました。