stet
← 記事一覧
個人開発

IDD のつもりで SDD をやっていた

Eiichiro Iriguchi  ·  2026.03.22  ·  4分

はじめに

意図駆動開発(IDD: Intent Driven Development)を調べていたら、「自分がやっていることってこれじゃないか?」と思った。

でも実際に自分の開発ログを振り返ると、話は逆だった。走り出しだけ IDD で、中盤以降は完全に SDD に引き戻されていた。 しかもそれは意識的な選択ではなく、気づいたらそうなっていた。

そこで DEBUG-ZERO というカードゲームのソロ開発を題材に、自分のワークフローを正直に解剖してみた。


IDD と SDD の違い

最初に整理しておく。

SDD(Spec Driven Development) は仕様書を起点にする開発スタイルで、「こういう機能を、こういう構造で、こう実装する」という How まで文書化する。

IDD(Intent Driven Development) は「なぜこれが必要で、何を達成したいか」という Why と What だけを定義し、How(実装方法)は AI に委ねる考え方。2026 年に入ってから日本の Zenn でも議論が活発になってきた。

比較するとこんな感じ:

観点

SDD

IDD

起点

仕様書(How が混入しやすい)

Intent(Why + What のみ)

ドキュメント管理

コードと同期 → 乖離が増大

記録(追記のみ)→ 常に正

AI との相性

How が仕様に残ると AI が混乱

How を AI に委ねるため相性が良い


自分のワークフロー(建前)

DEBUG-ZERO を開発するとき、自分のフローの入口はこんな構造だった。

自分: Why + What を伝える(「こういう理由で、こういう機能が欲しい」)
AI:   How(タスクリスト)を生成
自分: タスクリストを確認・承認・順次実行

一見すると IDD っぽい。Why と What は自分が決めて、How は AI に生成させている。ここだけ切り取れば IDD と言えなくもない。


実際に何が起きていたか

問題はその続きだ。

「じゃあ要件定義を書いて」「次は基本設計をまとめて」「詳細設計も出して」——DEBUG-ZERO の docs ディレクトリには、require.md・base-design.md・detail-design.md が順番に並んでいる。

これは SDD の教科書通りの流れだ。

走り出しで意図を伝えた後、気づいたら AI に SDD のプロセスをそのまま実行させていた。要件定義書があり、基本設計書があり、詳細設計書がある。コードが「今どうなっているか」を示し、ドキュメントが「どう実装するか」を規定する。How がドキュメントに入り込んでいる。


語彙ごと AI に渡していた

この失敗の根っこは「語彙」にあると思っている。

「要件定義してほしい」「設計書を書いて」という言葉を AI に渡した時点で、SDD のメンタルモデルをそのまま実行させていた。これらの言葉は How をドキュメント化するという行為を内包している。IDD を意識していても、使う語彙が SDD であれば、出力は SDD になる。

IDD で AI に渡すべきは「なぜこれを作るのか、何ができればいいのか」だ。「要件定義して」は指示ではなく、SDD の作業工程名を呼び出しているに過ぎない。


気づいたらそうなっていた

しかもこれは意識的な選択ではなかった。

IDD を試みようとしていたのに、手が動くうちに「設計書を書こう」という発想になっていた。エンジニアとして設計フェーズがあることを当たり前だと思っているので、その手癖がそのまま出た。

これは自分だけの話ではないと思う。IDD を意識しても、「設計してから作る」という習慣は言語化されていないレベルで染み込んでいる。語彙を変えないと、メンタルモデルは変わらない。


次の実験

次に試すなら、Why/What を渡した後はタスクの確認すらせず一度流してみようと思っている。「要件定義して」「設計して」という語彙を使わず、意図だけ渡してどこまで AI が動くかを見る。うまくいかない箇所が出てくるはずで、そこが自分の手癖が出るポイントになる。

破綻した場所を記録する方が、「IDD を意識しよう」と念じるより実態に近いところから改善できる気がしている。


まとめ

  • 走り出しだけ IDD、中盤以降は SDD。 「IDD と SDD の中間」というより、フェーズによって完全に切り替わっていた
  • 根本の原因は「語彙」だった。「要件定義して」「設計書を書いて」という言葉を使う時点で SDD のメンタルモデルを実行させていた
  • これは意識的な選択ではなかった。IDD を意識していても、開発プロセスの手癖は語彙のレベルで染み込んでいる
  • IDD に近づけるには、AI への指示から「SDD 工程名」を取り除くことが第一歩

自分のワークフローを「IDD だ」と思っていたが、実態は「IDD のつもりで SDD をやっていた」だった。


参考