Delphi業務ロジック移行
AI Agent Workbench
既存Spring Boot基盤を維持しながら、分析、移行、テストを実行証跡付きで自動化するデスクトップツール
本提案の要点
Harnessが完了条件を管理します
AIの判断だけに依存せず、根拠、権限、変更範囲、テスト結果をシステム側で検証します。
Delphi移行で失われやすいもの
ボタンやDataModuleに業務処理が分散し、仕様書だけでは境界が見えません。
文字列、日付、NULL、丸め、トランザクションの差が障害になります。
コードが生成できても、現行と同じ結果になる証拠が残らない場合があります。
対象範囲と対象外
- Delphiのイベントと業務メソッド
- 条件分岐、計算、業務エラー
- DataModule、SQL、永続化の意味
- 型・メソッド・部品の指定変換ルール
- Spring BootのService、Repository、Test
- Delphi画面の外観をWebへ自動変換
- 既存のSpring Boot基盤の再構築
- 既存のフロントエンド画面と共通基盤の変更
- テストケースで確認できない挙動の自動保証
- 業務責任者による最終受入の代替
Windowsデスクトップ型の移行実行基盤
AI・Harness・担当者の役割分担
8つの専門Agentが順番に引き継ぐ
Form、イベント、メソッド、SQLを根拠付きで構造化
型・メソッド・部品の変換ルールを確定
継承、置換、廃止、追加、要確認に分類
分岐ごとに入力値と確認項目を設計
Delphi側の実行結果を基準値として保存
Spring Bootの拡張ポイントとタスクに割り当て
許可範囲で実装し、テストケースを再実行
差分、未実行、証跡不足を一覧で確認
分析と移行仕様の自動作成
Delphi解析
Form、イベント、メソッド、SQLを根拠付きで構造化
移行方式
型・メソッド・部品の変換ルールを確定
移行方針
継承、置換、廃止、追加、要確認に分類
業務テスト
分岐ごとに入力値と確認項目を設計
実装と新旧比較の自動実行
現行ベースライン
Delphi側の実行結果を基準値として保存
実装計画
Spring Bootの拡張ポイントとタスクに割り当て
実装ループ
許可範囲で実装し、テストケースを再実行
新旧比較
差分、未実行、証跡不足を一覧で確認
画面部品から業務ロジックまでを追跡可能にする
お客様固有の変換方式を必須ルールとして登録
TYPE: TString -> JavaTStringimport=com.example.types.JavaTStringmandatory=truescope=all機能ごとの移行方針を明確化
業務ルールと外部挙動を維持
Delphi固有実装をSpring標準へ置換
既存Web画面で不要なUI実装を除外
新基盤で必要な認証や監査機能を追加
根拠不足または確信度が低いため担当者が確認
UI操作ではなく、業務挙動をテストケース化
- operation
- saveOrder
- arrange
- 顧客・商品・初期DB状態
- input
- 数量、金額、受注日
- observables
- 戻り値、業務エラー、DB更新
同一テストケースをDelphi側とSpring Boot側で実行
LegacyCaseRunner.exe
--case {caseFile}
--output {outputFile}mvnw.cmd -q
-Dtest=MigrationCharacterizationTest
testAIとプロジェクトの間に、回避できない実行制約を置く
Harnessに実装済みの統制機能
AIに旧資産の変更権限を与えない
既存画面・共通基盤への変更を拒否
AIが直接ファイルを操作しない
変更ファイルごとに根拠を紐付け
暴走と変更範囲の拡大を抑止
シミュレーション結果は受入判定の証跡に使用しない
実装・実行・比較を制御されたループで回す
誰が、何を根拠に、何を実行したかを残す
prev 8c3a…event a76d…output 42bf…Policy snapshot
Agent events
Harness checks
Evidence hashes
Chain verification
案件のリスクに応じて自動化レベルを選択
Harnessが確信度の高い判断を自動承認し、次のAgentへ進めます。
- 未解決の型がない
- 解析結果に不足がない
- 移行方針が確信度の基準を満たす
- 入力項目と対象分岐が確定している
分析と生成はAIが行い、重要な段階では担当者の承認を待ちます。
- 変換ルールの承認
- 移行方針の承認
- 業務テストケースの承認
- 承認後に同じFlowを再開
AIが自動化できる業務
Delphi構造解析、Spring Bootの拡張ポイント調査、外部仕様書からの変換ルール抽出
成果:根拠付き論理グラフ移行方針、分岐テストケース、実装レイヤー、追跡関係を作成
成果:承認可能な移行方針許可領域のJavaコードとテストを生成し、差分結果に基づいて修正
成果:変更ファイルと追跡情報現行結果のベースライン化、移行先実行、意味レベルの比較、必須マッピングの検査
成果:テストケース単位の比較一覧適用上の制約
本製品はDelphiコンパイラではありません。条件付きコンパイル、動的イベント割り当て、複雑なマクロには個別アダプターが必要です。
サードパーティ製コンポーネント、動的SQL、例外処理、外部DLLは静的解析だけでは動作を確定できません。
確認済みのテストケースに含まれない業務挙動までは保証できません。事前にテストケースの網羅率を確認します。
コードレビュー、DB移行、性能試験、セキュリティ試験、業務UATは引き続き必要です。
導入時にご用意いただくもの
.dpr / .pas / .dfm / .inc とビルド条件
既存のSpring Bootプロジェクト、拡張可能領域、保護領域
型・部品・共通機能の社内標準と外部仕様書
Delphi側とSpring側で同一入力を実行するインターフェース
要確認項目、テストケースの妥当性、最終受入を担当
小さな業務単位で適合性を確認
代表的なForm、外部仕様書、Spring Bootの拡張ポイントを確認し、解析できない箇所を把握します。
一つの業務機能で全8段階を実行し、テストケースと証跡の品質を評価します。
共通マッピングとRunnerを再利用し、機能群ごとにAgent Flowを適用します。
業務挙動を実行証跡として残し、
AIによる移行を管理可能なプロセスへ
画面と共通機能を保護し、業務ロジックに集中
分析から実装・テストまで専門Agentが順次引き継ぐ
Harnessと同一テストケースの比較で完了条件を固定