Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
レガシーシステムの機能調査・開発におけるAI利活用
Search
takuya ohtonari
June 11, 2025
Programming
0
760
レガシーシステムの機能調査・開発におけるAI利活用
takuya ohtonari
June 11, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osc25hi-duckdb
takahashiikki
0
230
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
160
gunshi
kazupon
1
140
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
120
クラウドに依存しないS3を使った開発術
simesaba80
0
220
生成AI時代を勝ち抜くエンジニア組織マネジメント
coconala_engineer
0
37k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
150
Go コードベースの構成と AI コンテキスト定義
andpad
0
150
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.3k
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
180
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
220
Patterns of Patterns
denyspoltorak
0
420
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
730
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
230
Claude Code のすすめ
schroneko
67
210k
WENDY [Excerpt]
tessaabrams
9
35k
Darren the Foodie - Storyboard
khoart
PRO
1
2.1k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
200
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
220
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
How GitHub (no longer) Works
holman
316
140k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
92
Abbi's Birthday
coloredviolet
0
4.2k
Transcript
レガシーシステムの 機能調査・開発における AI 利活用 1 / 15
本 LT の内容 レガシーシステムの調査や開発においてふりかえって考えたときに AI に頼って正解だったと思えることを共有します 話すこと 本 LT におけるレガシーシステムとは
利用した AI ツールや利用方法 話さないこと AI を利用できるようにするまでの過程や手順 AI 同士の比較結果 2 / 15
お伝えしたいこと まずは認知負荷を下げる方法を考えよう! 3 / 15
大隣 卓也 バックエンドエンジニア / 広く浅く何でも屋 所属: オイシックス・ラ・大地株式会社 # ゲーム #
ポタリング # 謎解き # リアル脱出ゲーム # 音楽 4 / 15
本 LT における「レガシーシステム」 色々と暗黙的で認知負荷が非常に高い状態 明確な仕様がない・わからない テストケースや自動テストが積み上げられておらず、毎回ゼロから作成している 何故、そうなっているのか、そうしたのか、読み解くことができないソースコード 5 / 15
この LT を届けたい人たち 猫の手も借りたい、でも… Agent モードの処理が先に進まない そもそも目の前のお仕事が手一杯で AI と試行錯誤する余裕がない 最終的に人間が責任をもたないといけないため、任せっきりにできない
使いこなせずお金と時間だけ浪費していく不安がある 人間にとって認知負荷が高い状態は AI にとっても同様に認知負荷が高いことも 6 / 15
実例紹介 おまかせできるようにするために AI と伴走する 難しく考えず「これだけでもいいんだ」を実感する 7 / 15
参考)弊社における AI 事情 今回紹介する内容は、以下を利用した結果です 利用できる AI ツール Gemini NotebookLM GitHub
Copilot Amazon Bedrock モデルは割愛します 利用している環境 Visual Studio Code IntelliJ IDEA 基本的にはローカル環境で利用したお話です 8 / 15
ノイズを減らして認知負荷を下げていく 例) 「長期間、コメントアウトされているソースコードを削除してください」 PR レビューの負荷も小さい 心理的負担、時間を軽減できる Ask モードで利用する場合 削除したソースコードを出力してくれる コピペして差分チェック
Agent モードで利用する場合 区切りをつけて任せるとうまくいく パッケージ単位など 別案)明らかに不要になったコンパイルスイッチの削除を依頼する、など 9 / 15
とりあえずユニットテストを作らせてみる 例) 「このファイルのユニットテストを作成してください」 作成されたユニットテストをベースにコードを読み込んでいく ある程度の使い方がざっくりと理解しやすくなる AI に更に修正させる 作成させたユニットテストに対して 「このファイルの問題点を指摘してください」 カバレッジレポートをコンテキストに追加して
「テストカバレッジを高めてください」 人間の手で修正して学ばせる 理想的な形にリファクタリングする ルールを記載したファイルを作成して 次回以降、コンテキストに指定する 一切読まずに呼吸をするように指示を出すのがコツ 10 / 15
読みやすい形に整理させてみる 例) 「このファイルについて説明してください。 以下のアウトラインに従い markdown 形式で出力してください。 」 アウトラインをテンプレート化してテンプレートも育てていく アウトラインの例 はじめに
主な特徴・役割 画面 画面遷移 依存関係 ドキュメントに残して人間が育てていく AI は出力内容が安定しないため ある程度満足なものが出力されたら残す 今度は AI のインプットにできる状態を目指す 11 / 15
SQL を作らせてみる 例) 「< テーブル名> の < カラム名> を更新する SQL
を作成してください」 IntelliJ の Database Tool Window で Schema を表示できる状態で指示を出す Schema に対応した SQL を作成してくれる 大体の CRUD を出力できる 複雑な SQL も言語化できれば作成してくれる SQL をファイル化しておくと吉 参照して他の SQL をベースに出力してくれる 12 / 15
参考)失敗例 失敗例) 非常に大きなサイズのファイル(数千行〜数万行)に対して調査指示 何故か別のファイルの調査結果を出してきた 13 / 15
参考)失敗例 ワークスペース全体に対して以下のような指示 「〇〇の処理を行っている箇所を特定して」 AI からの回答は以下のような結果になりました このような単語を用いることが多いです(関連キーワードが羅列される) ワークスペース内で関連キーワードを検索してみましょう 一般的なシステムではこのような場所で実装されることが多いです(テーブル名や処理名が羅列される) 具体的なファイルを確認してお教えできますので、関連するファイルを教えて下さい その関連するファイルを教えてほしいのですよ…
14 / 15
ご清聴ありがとうございました 15 / 15