1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

仕様駆動開発を「ツールなし」でやる:Markdownで回すフォルダ構成テンプレート

1
Last updated at Posted at 2026-10-05

連載「業務SEのための仕様駆動開発」第2回

SDDのツールが次々に出てきて、どれを覚えればいいのか分からない

仕様駆動開発(SDD:Spec-Driven Development)という言葉を見かけるようになって、しばらく経ちました。Kiro、cc-sdd、GitHub Spec Kit と、関連するツールも次々に出てきています。

気になって調べてみるものの、ツールごとにコマンドもファイル名も違います。どれを選べばいいのか、覚えたところで来年も使えるのか。そう考えて、手が止まっている方も多いのではないでしょうか。

私は、仕様駆動開発の専用ツールを使わずに、この進め方をしています。使っているのは、フォルダとMarkdownのファイルだけです。今回は、その置き方を紹介します。

結論:SDDの中身は「順番」。順番を守れば、ツールがなくても回せる

ツールの画面やコマンドは違っても、仕様駆動開発のツールがやっていることは共通しています。いきなりコードを書かせず、要件、設計、タスクのように、文書を順番につくらせることです。

つまり、ツールの本体は「順番を守らせる仕組み」です。順番を自分で守れるなら、ツールは必須ではありません。

そして、この「決めてから作る」順番は、エンジニアにとって目新しいものではありません。ウォーターフォールです。私は、仕様駆動開発とは、ウォーターフォールの順番をAIに守らせるやり方だと考えています。

5つの工程で進める

私は、次の5つの順番で進めます。

  1. 目的確定
  2. 設計
  3. テスト作成
  4. 実装
  5. テスト

ツールによって流れは少しずつ違いますが、私は「テスト作成」を、実装の前の独立した工程として置いています。先に合格ラインを文書にしておくと、AIが作ったものを人が判定できるからです(テスト作成の話は第3回で扱います)。

目的確定は、前回紹介した「目的・合格ライン・制約」を決める工程です。ツールでいえば「要件」の文書にあたるところですが、私はその手前の「何のためにやるのか」から文書にします。要件は、目的が決まってから出てくるものだからです。

型:フォルダとファイルの置き方

私は、次のような構成でフォルダをつくっています。コピーして使ってください。

プロジェクト/
├── input/                 # 渡された資料(既存の仕様書、画面の画像、データのサンプルなど)
├── output/
│   ├── 01_目的確定.md
│   ├── 02_設計.md
│   ├── 03_テスト作成.md
│   ├── 04_テスト結果.md
│   ├── 要作業一覧_進捗.md   # 課題ごとの進み具合(%)
│   └── 引き継ぎ.md          # 作業を離れるときの申し送り
├── src/                   # プログラム
└── 履歴.md                # いつ、何を決めて、何をしたか

ポイントは3つです。

1. 工程の文書には、番号をつける

01_ 02_ と番号を振るだけで、どこまで進んだかがファイル一覧で分かります。AIに対しても「02_設計.md を読んで、03_テスト作成.md をつくって」と、ファイル名で指示できるようになります。

そして、前の文書を人が読んで「これでいい」と言うまで、次の文書に進ませません。 ツールがやってくれる順番の管理を、ここで人が引き受けるわけです。

2. 管理用のファイルを3つ置く

工程の文書とは別に、次の3つを置いています。

  • 履歴:いつ、何を決めて、何をしたか。後から「なぜこうなったんだっけ」と思ったときに見る
  • 引き継ぎ:作業を離れるときの申し送り。いま何をしていて、次に何をするか
  • 要作業一覧・進捗:課題の一覧と、それぞれの進み具合

この3つが効くのは、AIは、会話が変わると前回のことを覚えていないからです。翌日に新しい会話を始めても、まず引き継ぎを読ませれば、前回の続きから始められます。別のAIに渡すときも同じです。

引き継ぎに書くのは、長い報告ではありません。たとえば「設計はOKが出た。次はテスト作成。画面に出す項目の並び順だけ、まだ決まっていない」くらいです。これだけでも、AIは次に何をすべきかが分かり、人も「そうだった」と思い出せます。

3. ルールも文書にしておく

フォルダの置き方や「OKが出るまで次に進まない」といったルールも、文字にしておきます。Claude Codeなら、プロジェクトの CLAUDE.md に書いておくと、会話のたびに読み込まれます。毎回同じ説明をしなくて済みます。

たとえば、次のように書きます。コピーして、案件に合わせて直してください。

# CLAUDE.md

- 返答と文書は日本語で書く
- 工程の文書は output/ に、01_目的確定.md から番号順に置く
- 前の工程の文書に人のOKが出るまで、次の工程に進まない
- 仕様書に書いていないことは、勝手に足さずに質問する
- 既存のコードの書き方(名前の付け方、インデント)に合わせる
- 作業の最後に、変更したファイルと変更した理由をまとめる

箇条書きで数行あれば十分です。

ツールを否定したいわけではありません

チームでKiroやcc-sddを使うと決まっているなら、それに乗るのがいいと思います。ツールには、順番を自動で守らせてくれる便利さがあります。

ただ、ツールは変わります。1年後に同じツールが同じ形で使えるとは限りません。一方、Markdownの文書は、どのAIにも、後から来た人にも、そのまま渡せます。ツールが変わっても、文書は残ります。

だから私は、ツールより先に「順番」と「文書」を身につけることをおすすめしています。順番が身についていれば、どのツールに移っても、中で何が起きているかが分かります。

私の場合:専用ツールなしで、案件を回してきました

私は、仕様駆動開発の専用ツールに頼らず、このフォルダと文書だけで複数の案件を回してきました。

文書が残っていると、判断の理由も後から追えます。「なぜこの順番にしたのか」「なぜこの案をやめたのか」は、履歴を見れば分かります。

まとめ

  • 仕様駆動開発のツールがやっているのは、文書を順番につくらせること
  • その順番は、エンジニアが知っているウォーターフォールと同じ
  • フォルダと番号つきのMarkdownファイルで、順番は自分で守れる
  • 履歴・引き継ぎ・進捗の3ファイルを置くと、会話が変わっても続きから再開できる

次回は、5つの工程のうち、いちばん飛ばされがちな「テスト作成」を扱います。実装の前に、テスト仕様書をAIに書かせる理由と、業務システム向けのテスト観点表を紹介します。

連載「業務SEのための仕様駆動開発」

一覧はこちら → https://qiita.com/sha44444/stocks/3c9167054a4a82837bb3


この連載では、仕様駆動開発の「型」を1回に1つずつ紹介しています。
5つの工程を実案件でどう回しているか(各工程でAIに渡す依頼文、変更が入ったときの回し方、通しの実例)は、1冊の本にまとめました。第1章は無料で読めます。
→ https://zenn.dev/shin4/books/31499dd20de8ac

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?