Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【AI×DevOps Study #17】AI駆動におけるモダナイゼーション by Claud...

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

【AI×DevOps Study #17】AI駆動におけるモダナイゼーション by Claude CodeとAI活用のヒント

■AI×DevOps Study #17 の概要
2026年6月23日に開催した「AI×DevOps Study」第17回の発表資料です。

「AI×DevOps Study」は、AI駆動開発やそこに関係するマイクロサービスについて理解を深める場になります。
株式会社ScalarではAIを使ったチーム開発を進めており、参画しているメンバーや協力会社の方から、具体的なAI駆動開発を実施する方法、その中で生まれたマイクロサービスアーキテクチャを使用したAI駆動開発の事例や実際に使えるエージェントについてお話頂き、参加者の皆様と知識の共有や交換を目的としています。
(弊社製品であるScalarDBも絡んだお話も一部出てきますが、汎用的な内容となっておりますのでフラットにお楽しみいいただけます)

■今回のテーマ
「AI駆動におけるモダナイゼーション by Claude CodeとAI活用のヒント」

AIを日々の開発に活用していると、レガシーシステムの改善でこんな課題が出てきます。

・古いシステムを直したいけど、どこから調べればいいかわからない.
・コードやDBの構造が複雑で、影響範囲の把握に時間がかかる.
・AIで実装は速くできても、設計やレビューが弱いままだと品質が不安.

今回は、これらの課題に対して、Nexus Architectを使ってAI駆動でモダナイゼーションを進める体験をお伝えします。

紹介する内容は以下になります。

・現状調査と分析:既存コード、主要クラス、DB構成、業務機能の対応を整理し、最初に読むべきポイントを絞り込む流れ.
・評価と再設計:MMIやDDDの観点で課題を可視化し、境界コンテキストやサービス分割、ScalarDBを含む改善後の設計を具体化する流れ.
・設計レビューと実務活用:生成された設計をそのまま採用せず、データ一貫性、運用、障害対応などの観点でレビューし、実装に進める品質まで引き上げる流れ.

題材として、注文、在庫、決済、ポイント、返品を扱うレガシーPOSシステムを取り上げます。 今回の内容を通じて、AIに実装を任せる前に、調査、設計、レビューの質をどう高めるか、そして人間がより本質的な判断に集中するためのAI活用のヒントをお伝えいたします。

■登壇者情報(敬称略)
箱崎一輝
札幌の株式会社マーベリックスで、Webエンジニア兼リーダーを務めています。 これまで社内のGoogle Workspace全社導入を推進し、組織の働きやすい環境づくりに貢献しました。 今年からはAI駆動型の開発案件に本格的にジョイン。リーダーとしてチームをまとめながら、実際の現場で「AIをどうUI/UX開発に組み込むか」、日々の実践を通じて探求しています。

■関連コンテンツ
・Youtube(過去の勉強会動画も公開中!)
www.youtube.com/@scalar-labs

・Zenn ブログ
https://zenn.dev/p/scalar_sol_blog

・イベントページ(connpass)
https://scalar.connpass.com/

Avatar for Scalar, Inc.

Scalar, Inc. PRO

June 23, 2026

More Decks by Scalar, Inc.

Other Decks in Technology

Transcript

  1. • Scalar社 深津さんが開発した Claude CodeやCodex上で使うことができる システムアーキテクチャ設計⽀援のためのツールキット → 既存システムの調査‧再設計や新規システム設計を、   DDD/マイクロサービス

    / ScalarDB 観点で   設計‧レビュー‧レポート化するためのAIエージェント⽤スキル集 Nexus Architectについて https://github.com/wfukatsu/nexus-architect (ざっくりと)
  2. モダナイゼーションとは ⼀般的な⽇本のモダナイゼーション • ⻑年運⽤されてきた⽼朽化‧複雑化したシステム(レガシーシステム)に対 し、⼤きく4つの⼿法でシステムを最適化すること 手法 役割 リプレイス ソフト/ハードウェアの両面から新しいシステムを構築して刷新する手法 リライト

    レガシーな言語で書かれたコードを、現代的な言語に書き換えること リホスト ソフトウェア部分に手を加えず、ハードウェアのみを最新に置き換える方法 リファクタリング 同じプログラミング言語と機能を維持したまま、コードの内部構造を改善する取り組み (そもそも)
  3. AI駆動開発における品質低下 ⽣成AIによるコード⽣成の効率化を急いだ結果 重⼤な障害に繋がる事例が報告されている • Amazon:AI⽣成コードの未確認マージによる障害多発(シニアエンジニアのレビューが必須になった) • GitHub:AI⽣成コードによって過去最⼤の品質低下が起きた問題 The Pragmatic Engineer.「Ideas:

    slow down to speed up when working with AI agents」. https://newsletter.pragmaticengineer.com/p/ideas-slow-down-to-speed-up-when • 実装速度だけを求めると、システム品質を⼤きく損なうリスクがある • あえてスピードを落として、設計‧テスト‧レビューの仕組みを整える
  4. AI時代のモダナイゼーションについて • 単なる技術の置き換えではなく、AI開発に耐えうる構造への変⾰が必要である • 特に業務ルールが複雑なシステムでは、DDDの考え⽅を⽤いて 業務境界‧責務‧⽤語を明確にする 具体的に... • 業務の境界を明確にする ◦

    DDDにより、業務領域‧責務‧⽤語を整理する • 依存関係を制御する ◦ 変更が他の機能へ影響しない構造にする • 品質を検証可能にする ◦ テスト‧レビュー‧評価によって、AIの変更を継続的に確認する
  5. AI駆動で解決したいこと ここまでの課題 • 全体像の把握に時間がかかる • 設計判断を再現できない • レビュー観点が抜け落ちる AIで⽀援したいこと •

    コード‧業務‧DBを横断して調査する • 共通の評価軸で判断材料を整理する • 複数観点でレビューし、結果を記録する → 役割の変化 AI → 広く調べ、整理し、繰り返し評価する ⼈間 → ⽬的、業務上の意味、制約、トレードオフを判断する
  6. • モダナイゼーション対象のシステム • モノリス構成のPOS(Point of Sale)システム ◦ 商品が売れる瞬間を管理するシステム ◦ コンビニやスーパーのレジがイメージしやすい

    • 今回デモ開発した機能 ◦ 顧客:バーコードスキャン → 在庫確認 → ⽀払い → レシート発⾏ ◦ 管理者:商品‧在庫管理、売上確認 • 複数のDB更新や業務ロジックの複雑化がある POSシステム
  7. Before題材の技術スタックとモジュール構造 構成要素 採用技術およびバージョン 言語 / FW Java 11 / Spring

    Boot 2.7.18 データベース PostgreSQL 15(マスタ、顧客、ポイント) MySQL 8.0(在庫、注文、決済、返品) 永続化層 JdbcTemplateによる手書きSQL(ORMやLombokは不使用) 認証 / セキュリティ Spring Security(古い WebSecurityConfigurerAdapter によるセッション管理) UI Thymeleaf によるサーバーサイドレンダリング、 jQuery トランザクション管理 同一DB内は @Transactional、複数DBをまたぐ処理は手書きの協調制御 (Saga) コンテナ環境 Docker Compose によるアプリケーション / 各DBのコンテナ実行
  8. 調査②:DDDを適⽤できる状態か確認する 確認したこと • 業務境界を識別できるか • ドメインモデルが存在するか • モジュールが独⽴しているか 評価結果 •

    DDD準備度:29 / 100 ◦ 業務概念は⾒えるが、コード上の境界が 崩れている ◦ DDDを始める前に、巨⼤クラスと依存関 係の整理が必要
  9. 調査③:改善すべき問題を重⼤度別に整理する 検出された課題 • すぐに対応が必要...4件 • 影響が⼤きい課題...8件 • 計画的に改善する課題...18件 もっとも重⼤な問題 •

    注⽂‧在庫‧ポイントを複数のDBへ順 番に更新している → 途中で処理が失敗すると、⼀部の データだけが更新される可能性がある
  10. 調査④:技術要素と移⾏リスクを整理する 検出した主な構成 • Java 11 • Spring Boot 2.7 •

    JdbcTemplate • Thymeleaf / jQuery • PostgreSQL + MySQL 移⾏時の論点 • Java / Spring Bootの更新 • javaxからjakartaへの移⾏ • 認証⽅式とテスト基盤の⾒直し
  11. 調査:現状を把握する レポートの種類 POSにおける、主な出力内容 コードベース構造 56 Java ファイル、OrderService(976行)God Service、 CheckoutSaga(557行)God Class、dao/+repository/

    パッケージ命名揺れ DDD準備度 総合点 29/100。 潜在的 BC(8個)は識別可能だが God Service/Saga が境界を崩壊。ScalarDB で手書き Saga を置き換えると TD-002/003/009 が根本解決 技術的負債 すぐに対応が必要...4件、影響が大きい課題 ...8件、計画的に改善する課題 ...18 件の計30件 最重大はDB跨ぎ原子性未保証 テクノロジースタック Spring Boot 2.7.18 (EOL), Java 11 (EOL)
  12. ドメイン分析①:ビジネス観点で整理 主要な業務 • レジ販売 • 商品 / 在庫管理 • 注⽂

    / 返品管理 • 会員ポイント • 売上ダッシュボード コードを読む前に、システムが実現して いる業務を定義する
  13. ドメイン分析②:誰が何を操作できるか整理する 4種類の利⽤者と役割を整理 • CASHIER … レジ販売‧会計‧レシート発⾏ • MANAGER … 商品‧在庫‧注⽂‧返品‧売上管理

    • ADMIN … 全管理機能‧ユーザー管理 • Member … ログインはせず、会計時に会員IDを提⽰するポ イント対象者 分析で確認できたこと • 3つのシステムロールを識別 • Memberは認証ユーザーではない • 認可は主にURLパターンで制御 • サービスメソッド側の認可は未実装
  14. レポートの種類 POSにおける、主な出力内容 システム概要 10 機能カテゴリ、主要フロー: CheckoutSaga(6ステップ) / ReturnSaga(6ス テップ)。 決済は

    System.out.println モック アクター・ロール・パーミッショ ン 3 ロール(CASHIER/MANAGER/ADMIN)+ Member。SecurityConfig の URL パターン認可のみ。メソッドレベル認可なし ユビキタス言語辞書 60+ ドメイン用語。不統一: dao/repository 並存、 ポイントtype文字列の混乱、User vs Member の概念分離 ドメイン-コードマッピング 10 BC 候補、税計算 4 重・ポイント計算 4 重・返品可否 3 重、 PaymentService/ReturnService 欠如、DB 境界が BC 境界と不一致 ドメイン分析:ビジネス観点で整理
  15. 評価‧採点:MMI評価 • MMI(モジュール成熟度指標)とは ◦ このシステムはマイクロサービスに分割できる状態かを数 値で表す指標 • MMI評価とは … MMIを実際のコードに適⽤して採点する⾏為

    ◦ 4つのサブエージェントが並⾏して各軸を評価 軸 意味 重み 凝集性 モジュール内の責務が一貫しているか 30% 結合度 他モジュールへの依存が少ないか 30% 独立性 単独でデプロイ/テストできるか 20% 再利用性 他のコンテキストでも使えるか 20%
  16. DDD評価とは • 現状のシステムがDDDの原則にどれだけ準 拠しているかを定量スコア化する⾏為 ◦ 総合スコアは24.5% • 戦略的設計(1.3/5) ◦ システムをどう分割するか

    • 戦術的設計(1.3/5) ◦ 境界の中をどう実装するか • アーキテクチャ(1.0/5) ◦ レイヤー構造と依存の⽅向が正しいか 評価‧採点:DDDの3つの観点で評価する
  17. 再設計:境界コンテキストを再設計 12の業務領域を、重要度と役割で分類 事業の中核 • Checkout … 会計全体の進⾏を管理 • Order …

    注⽂と状態遷移を管理 • Loyalty … 会員とポイントを管理 共通基盤 • Identity … 認証‧権限 • Audit … 監査ログ • Dashboard … 売上‧在庫集計 業務ルールの変更で 他の領域へ広がりにくい構造にする
  18. 処理の性質に合わせ、3つの連携⽅式を設計 画⾯‧外部からのAPI • 商品検索、注⽂確認、チェックアウトなど、画⾯や外部シス テムから呼び出す • HTTP APIの仕様をサービスごとに定義 業務イベントによる⾮同期連携 •

    注⽂完了、在庫更新、ポイント付与など • 監査ログや売上集計へ⾮同期で連携する サービス間の内部連携(gRPC) • 注⽂‧在庫‧決済などのサービス間で⾼速に処理を呼び出す • 複数サービスを跨ぐ処理では、同じtransaction_idを引き継 ぐ 再設計:API設計
  19. Nexus Architect サマリー Before / After ⽐較 指標 役割 Before

    After DDD準拠度 ドメイン設計の成熟度を示す指標 21.8% 86.8% MMI平均 モジュールの独立性・凝集度を示す指標 45.3% 77.4% 総合評価 マイクロサービス移行準備度の総合指標 33.6% 82.1% 主な改善事項 • 責務が OrderService、CheckoutSaga、ReturnSaga から13サービスへ分散され、構造が整理された • ⾦額や数量などの共通ルールをまとめたことで、同じ処理を何度も書かずに済むようになった • サービス同⼠が相⼿の内部モデルに直接依存しなくなり、変更の影響が広がりにくくなった
  20. 効果①:調査‧設計の初動を速くできる 従来 • コードやDBを⼈間が順番に読み解く • 調査結果を⼿作業で資料化する • レビューに必要な情報を後から集め直す Nexus Architect活⽤後

    • コード‧DB‧設定ファイルを横断して調査する • 主要クラス、依存関係、技術的負債をレポート化する • 調査結果をそのまま分析‧評価‧設計の⼊⼒にできる
  21. 実務では最⼩限単位から始める Nexus Architectの具体的なはじめ⽅ 1. 現状分析だけ実施してみる • コード構造とDB構成を整理する • 責務が集中している場所を⾒つける •

    AIの分析結果が事実と⼀致するか確認する 2. 課題の⼤きい領域と⼀つ選ぶ • 変更頻度が⾼い • 障害影響が⼤きい • 業務ルールが複雑 • 属⼈化している
  22. AIで速く作るのではなく、判断と整合性を仕組みにする Nexus Architectの価値 • コード‧DB‧業務‧運⽤を横断して現状を可視化 • MMI / DDD /

    レビュー観点で、課題と根拠を残す • 設計判断を属⼈化させず、再現可能なプロセスにする ⼈間が決めること • どの領域から始めるか • どこまで変更を許容するか • コスト‧納期‧リスクを踏まえた最終判断 まとめ