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
#QiitaBash TDDでAIに設計イメージを伝える
Search
sigma
May 28, 2025
Programming
2
650
#QiitaBash TDDでAIに設計イメージを伝える
【Qiita Bash - 増枠】最近ハマっている生成AI活用法を語ろう!
2025/05/28
https://increments.connpass.com/event/351227/
sigma
May 28, 2025
Tweet
Share
More Decks by sigma
See All by sigma
#QiitaBash 良い記事は誰かを救う!2025/04/14
ryosukedtomita
0
2
CI/CDのセキュリティ対策にOSSツールを使ってみる
ryosukedtomita
0
37
生成AIの世界で君たちはどう生きるか
ryosukedtomita
0
91
DevSecOps CI/CDツール導入のススメ
ryosukedtomita
1
120
Other Decks in Programming
See All in Programming
ドメイン駆動設計とXPで支える子どもの未来 / Domain-Driven Design and XP Supporting Children's Future
nrslib
0
340
AIにコードを生成するコードを作らせて、再現性を担保しよう! / Let AI generate code to ensure reproducibility
yamachu
6
5.4k
DevDay2025-OracleDatabase-kernel-addressing-history
oracle4engineer
PRO
5
1.5k
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
660
CursorとDevinが仲間!?AI駆動で新規プロダクト開発に挑んだ3ヶ月を振り返る / A Story of New Product Development with Cursor and Devin
rkaga
5
1.7k
ユーザーにサブドメインの ECサイトを提供したい (あるいは) 2026年函館で一番熱くなるかもしれない言語の話
uvb_76
0
150
Feature Flag 自動お掃除のための TypeScript プログラム変換
azrsh
PRO
4
540
JSAI2025 RecSysChallenge2024 優勝報告
unonao
1
220
衛星の軌道をWeb地図上に表示する
sankichi92
0
200
2025年のz-index設計を考える
tak_dcxi
13
5.1k
イベントソーシングとAIの親和性ー物語とLLMに理解できるデータ
tomohisa
1
150
Investigating Multithreaded PostgreSQL
macdice
0
120
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Being A Developer After 40
akosma
91
590k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
0
27
Bash Introduction
62gerente
613
210k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
450
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
None
用語の解説 Agentic Coding: AI Agent を使ってコー ディングすること TDD: テスト駆動開発
TDD でAI がうまく使えるようになるかも AI が思っているようなコードを出力しない AI の出力したコードを検証するのに時間がかかる TDD をとりいれることで解決できるかも
Agentic Coding AI をうまく使って生産性を上げたい プログラマの格差拡大
AI をうまく使えるようになるには 良いコードがわかる( コードレビュー力) AI にうまく指示を出せる具体的なプロンプト 仕組み化,自動化
Agentic Coding が うまくいかない例(TDD なし)
TDD を知らない私のAI を使った開発例 Qiita のいいね数を取得する スクリプトを作りたい
> Qiita API を使っていいね数を取得するコードを 書いて(node.js)
課題に感じたこと そもそも,どんなコードを書きたかったんだっけ? ( 動作確認が面倒) →AI と並走しながらコーディングが進む
Agentic Coding に TDD を取り入れる
TDD に対する誤解 私のTDD に対する食わず嫌い テストを先に書くのがめんどくさい 作ってからテストすればよい? TDD では 1 つずつテストを作る
1 つずつテストを通す リファクタをする
なぜ,AI をうまく使えなかったか コードを書く前になにも考えていない! →AI への指示が抽象的すぎる →AI にタスクを委任できない
テストを先に書くことのメリット コードを書く前に振る舞いを決定する コードを書く前に考えることの習慣化 → 良いプロンプトが書くためのトレーニング
テストをAI に通してもらうメリット AI へ具体的なゴールを提供できる → 「このテストが通るように実装して」 テストが通るまでをAI に委任できる →AI Agent
の活用 テストが通っているので人間のレビューコストを削減 リファクタもしやすい
望んだ設計が反映されている
AI をうまく使えるプログラマに近づくために, コードを書く前に要件を具体化できる必要性 TDD の考え方を取り入れよう 考えてからコードを書く習慣化 AI に対する具体的なゴールの提供 人間のレビューコストの削減 焦らず自力を鍛えるしかない
まとめ
どんなテストを書くのが効果的か? どういうコードにしたいのか? よいシステムプロンプトの書き方 テストリストを渡してTDD のサイクルを完全自動化 AI に足りないテストを補ってもらう セキュリティの観点? Future work
名前: 富田涼介 Qiita: sigma_devsecops 所属: NRI Secure 仕事: SI 開発/
保守,セキュリティ診断 ※ 発言はすべて個人の見解であり, 所属組織を代表するものではありません 自己紹介