spec テンプレート 3-vendor ベストプラクティス調査
調査日: 2026-05-26
調査者: [email protected]
目的: ADR-0041 遡及リサーチ。_meta/templates/spec.md (20 行) の設計妥当性を業界標準と照合し 3 vendor で検証する。spec.md は current-spec.md の軽量版として位置づけられる汎用仕様テンプレート
調査モデル: Claude Opus 4.7 / Gemini 1.5 Pro (pending) / GPT-4o (pending)
0. 調査設問
- 20 行の軽量仕様テンプレートとして、最小限必要なセクションを満たしているか?
- current-spec.md (62 行) との役割分担は明確か?使い分け基準は?
- 「概要→詳細→制約→関連」の 4 セクション構成は業界標準と整合するか?
1. サマリー(3-vendor 統合結論)
注: 現時点は Claude 単独分析。Gemini/GPT 追加後に統合結論を更新する。
20 行の軽量テンプレートとして最小構成は妥当。採用継続。ただし current-spec.md との使い分けガイダンスと 1 セクション追加が必要。
| # | 改善項目 | 根拠 |
|---|---|---|
| 1 | 使い分けガイダンス追加 (テンプレ冒頭コメント) | spec vs current-spec の選択基準が不明確 |
| 2 | ## スコープ セクション追加 | IEEE 29148 最小 SRS でも Scope は必須 |
2. Vendor 別分析
2.1 Claude 分析
モデル: Claude Opus 4.7 (2026-05-26) 情報源: IEEE 29148 SRS Template, arc42 Building Block View, Lightweight Documentation Manifesto
現行テンプレートの構成評価
# <仕様タイトル>
**最終更新**: YYYY-MM-DD
## 概要
## 詳細
## 制約・前提
## 関連
IEEE 29148 最小構成との比較
| IEEE 29148 最小セクション | spec.md 対応 |
|---|---|
| Purpose | 概要 |
| Scope | 未記載 — current-spec では 2.1/2.2 で対応 |
| Definitions | — (小規模なら不要) |
| Functional Requirements | 詳細 |
| Constraints | 制約・前提 |
| References | 関連 |
Scope 不在: 「この仕様が何を含み何を含まないか」が不明確。current-spec.md が「含む/含まない」で解決しているが、spec.md には未導入。軽量版でも 1 行の箇条書きで十分なため追加推奨。
current-spec.md との使い分け基準
| 基準 | spec.md (軽量) | current-spec.md (詳細) |
|---|---|---|
| 対象 | 共有仕様・横断的定義 | 機能ドメイン仕様 |
| 想定配置 | domains/_shared/, data/ | domains/<feature>/ |
| 処理フロー | 不要 (定義中心) | 必須 (入力→処理→出力) |
| データ仕様テーブル | 不要 | 必須 |
| エラーハンドリング | 不要 | 必須 |
| 行数目安 | 20-50 行 | 50-200 行 |
この使い分けは現行の暗黙ルールを明文化したもの。テンプレート冒頭にコメントとして記載を推奨。
arc42 との整合
arc42 は Building Block View (Chapter 5) で階層化された仕様を推奨。spec.md は「白箱の内部ブロック定義」に相当する軽量記述として位置づけ可能。構成は arc42 の推奨と矛盾しない。
2.2 Gemini 分析
Status: PENDING
調査プロンプト (Gemini 1.5 Pro 用)
あなたはソフトウェアドキュメンテーションの専門家です。以下の「軽量仕様テンプレート」を評価してください。
テンプレート (spec.md, 20 行):
---
id: spec-<id>
type: spec
status: active
related:
- <関連ファイルのパス>
legacy_id: ""
---
# <仕様タイトル>
**最終更新**: YYYY-MM-DD
## 概要
## 詳細
## 制約・前提
## 関連
プロジェクト文脈:
- このテンプレートは詳細版 (current-spec.md, 62 行) とは別の軽量版として運用
- 主に横断的定義・共有仕様に使用 (domains/_shared/, data/ 配下)
- 機能ドメイン仕様には current-spec.md を使用
- Google Apps Script + Sheets の法人会計プロジェクト
評価軸:
- 20 行の軽量テンプレートとして最小限必要なセクションを満たしているか
- 詳細版 (current-spec.md) との使い分け基準は明確か
- 「概要→詳細→制約→関連」の 4 セクション構成は IEEE 29148 / arc42 と整合するか
- 改善案 (追加すべきセクション、使い分けガイダンスの要否)
2.3 GPT 分析
Status: PENDING
調査プロンプト (GPT-4o 用)
あなたはソフトウェアドキュメンテーションの専門家です。以下の「軽量仕様テンプレート」を評価してください。
テンプレート (spec.md, 20 行):
---
id: spec-<id>
type: spec
status: active
related:
- <関連ファイルのパス>
legacy_id: ""
---
# <仕様タイトル>
**最終更新**: YYYY-MM-DD
## 概要
## 詳細
## 制約・前提
## 関連
プロジェクト文脈:
- このテンプレートは詳細版 (current-spec.md, 62 行) とは別の軽量版として運用
- 主に横断的定義・共有仕様に使用 (domains/_shared/, data/ 配下)
- 機能ドメイン仕様には current-spec.md を使用
- Google Apps Script + Sheets の法人会計プロジェクト
評価軸:
- 20 行の軽量テンプレートとして最小限必要なセクションを満たしているか
- 詳細版 (current-spec.md) との使い分け基準は明確か
- 「概要→詳細→制約→関連」の 4 セクション構成は IEEE 29148 / arc42 と整合するか
- 改善案 (追加すべきセクション、使い分けガイダンスの要否)
3. 3-vendor 一致度分析
| 論点 | Claude | Gemini | GPT | 一致 |
|---|---|---|---|---|
| スコープセクション追加 | 推奨 | — | — | pending |
| 使い分けガイダンス | 必須 | — | — | pending |
| 4 セクション基本構成 | 妥当 | — | — | pending |
| 変更履歴セクション | 不要 (軽量維持) | — | — | pending |
一致率: 未確定 (1/3 vendor 完了)
4. 参照元
- ISO/IEC/IEEE 29148 SRS Template — ReqView — 2026-05
- arc42 Section 5: Building Block View — 2026-05
- Lightweight Documentation — Agile Alliance — 2026-05
5. プロジェクトへの示唆
- テンプレート冒頭に使い分けコメントを追加:
<!--
spec.md: 横断的定義・共有仕様向けの軽量テンプレート (20-50 行)
機能ドメイン仕様には current-spec.md (62 行) を使用すること
-->
- スコープセクションを軽量に追加:
## 概要
## スコープ
- <!-- この仕様が対象とする範囲 (1-3 行) -->
## 詳細
current-spec.md の「含む/含まない」分離までは不要。1-3 行の箇条書きで十分。