RAKUS Developers Blog | ラクス エンジニアブログ

株式会社ラクスのITエンジニアによる技術ブログです。

【Devin活用】Spring Boot 3系 → 4系 へのメジャーバージョンアップの影響調査

1. はじめに

ラクスが開発する請求書受領システム「楽楽請求」では、Web アプリケーションフレームワークとして Spring Boot を使用しています。

当時使用していた Spring Boot の 3 系 が2026年6月で EOL になるため、バージョンアップ(3系 → 4系)を実施しました。

バージョンアップに関する影響調査を AI(Devin)に任せてみたので、その実践内容を共有します。

この記事で書くこと

  • メジャーバージョンアップの影響調査を AI に任せる具体的なやり方
  • どこまで効いて、どこは人間が必要だったか

この記事で書かないこと

  • メジャーバージョンアップ対応自体の詳細

前提

今回のバージョンアップ対象は以下のとおり。いずれもメジャー更新。
※Spring Boot に依存するライブラリなどのバージョンアップを含む

対象 Before After
Spring Boot 3系 4系
Spring Framework 6系 7系
Jackson 2系 3系

2. バージョンアップ作業フロー

今回行ったバージョンアップ作業フローは大きく分けて以下の3ステップです。

Step 作業内容 自動化レベル
1 メジャーバージョンアップによる影響調査 自動
2 Step 1 の調査結果から対応が必要かどうかの判断と方針検討 手動
3 更新作業 ほぼ手動

Step 1:メジャーバージョンアップによる影響調査

Spring Boot やそれ以外の、リリースノートを含めた膨大な情報量を整理して、自プロダクトへの影響を洗い出すStep。

Devin の Playbook を作成する

使用した Playbook(一部抜粋)

### Required from User

- mw name: 対象のMW名
- current version: 現在利用中のMWバージョン
- target version: アップデート後のMWバージョン

### Procedure

1. mw name と current version, target versionを確認する
2. mw nameで指定されたMWのGitHubリポジトリまたは公式ドキュメントにアクセスする。
3. GitHubリポジトリも公式ドキュメントも存在しない場合、ユーザーにエラーメッセージを返して終了する。
4. GitHubリポジトリまたは公式ドキュメントが存在する場合、そのURLをユーザに返す。両方存在する場合はGitHubリポジトリを優先する。ユーザはURLを受け取った後、次のステップに進むよう指示する。
5. リリースノートページにアクセスし、current versionからtarget versionまでのリリースノートを確認する。
6. 5.で確認したリリース内容の@で指定したリポジトリに対する影響を調査する。
7. 以下の形式で影響調査結果を出力する。1. markdown形式の表 2. CSVファイル
   - カラム1: バージョン
   - カラム2: 変更内容(原文)
   - カラム3: 変更内容(日本語訳)
   - カラム4: 変更内容種別(ex: 破壊的変更、機能追加、バグ修正など)
   - カラム5: 影響度(高・中・低・なし)
   - カラム6: 影響度の根拠

参考:Devin Playbook の概要 - 公式ドキュメント

※使用した Playbook は今回のバージョンアップ用途で作成していないため、Spring Boot のバージョンアップに特化したものではない

Devin の Playbook を実行して一覧化する

依存関係がある MW の数だけ繰り返し Playbook を実行する。

  1. 対象 MW と前後バージョンを明示し、MW の公式 GitHub リポジトリ or 公式ドキュメントを参照
  2. 指定したリポジトリ(今回は楽楽請求リポジトリ)に対する影響を調査
  3. 調査結果を一覧化
内容
バージョン その変更が入ったバージョン
変更内容(原文) リリースノートの記載
変更内容(日本語訳) 上記の和訳
変更内容種別 破壊的変更/機能追加/バグ修正 など
影響度 高・中・低・なし
影響度の根拠 なぜその影響度と判断したか

Step 2:対応が必要かどうかの判断と方針検討

Devinの調査結果を見て実際に対応する必要があるか、どのように対応するかの方針を検討するStep。

  • 変更内容の種別・影響度から、楽楽請求プロダクトへの対応要否を判断
  • 要対応箇所をどのように対応するかを方針レベルで検討

Step 3:更新作業

実際にバージョンアップを行い、破壊的変更に対応するStep。

  • 個別判断が必要な箇所が多く、ほぼ手作業
    → ただし、修正パターンが決まりきっている変更はAIに委譲

3. AI 活用の所感

影響度判定の精度評価

  • 影響度「なし」判定が正しかった割合・・・93.5%
  • 影響度「高/中/低」判定が正しかった割合・・・49.3%

良かった点

  • 情報量が多く定型的な 「読む・分類・一覧化」を AI に寄せられた
  • 影響度の根拠まで出力させたことで人間のレビュー判断が速くなった
  • 実際の更新作業でも 機械的な修正を AI に委譲でき、人は判断に集中できた

微妙だった点・反省

  • AI の影響度判定(特に「中」「低」)に見逃しがあり、鵜呑みにできなかった
    → だが一次調査としての精度は十分
    → AI は「たたき・一覧化」までは強力なので、最終判断は人間が持つ前提で運用する

4. まとめ

  • メジャーバージョンアップの影響調査で、AI は「読む・分類する・一覧化する」までを自動化できた
  • ただし「影響度の判定」はそのまま信用せず、人間の確認を前提に使うのが現実的
  • 作業全体の AI と人間の作業比率は体感で 1:9 程度で、気持ち少し楽できたくらいだった

5. 今後の展望

  • 対応当時は主に一覧化作業にのみ AI を活用していたが、調査〜修正PR作成までを一気通貫で完全自動化する
  • ラクス社内で AI の導入がどんどん進んでいるので、Devin に限らず Claude Code, Codex 等を用いた自動化を検討する

参考文献

-->