Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Implementation Slice Creation Guide

本ガイドは、複数のソフトウェアコンポーネントが関連・連携する横断的開発を管理するために <root>/docs/backlog/slices/ 配下に作成する「実装スライス」の記述内容とMarkdownテンプレートを定義するものです( 追跡対象 )。

概念定義(feature, 実装スライス)

  • 実装単位 (feature): 動作する機能の最小単位(任意の言語)。推奨粒度は 「関連する各ソフトウェアコンポーネントの仕様(SPEC)が1つずつ程度」 とします。
  • 実装スライス: 複数コンポーネントを横断して縦切りにした実装単位。各実装スライスファイル(docs/backlog/slices/<slice-name>.md。ファイル名は kebab-case)が1つの実装スライスを表します( 追跡対象 )。
  • 機能仕様の参照規則: 本実装スライスで関連する各コンポーネントの増分機能仕様書(specs/incremental/<SPEC-I-ID>.md)へのリンクを対象コンポーネント表に記述します。
  • 実装計画の参照規則と特別例外: 本実装スライスで参照する各コンポーネントの実装計画は非追跡対象となり、ファイル名・ID は <AppID>-<SPEC-I-ID>.md(例: AUTH-SERVICE-SPEC-I-001.md)とします。基本として追跡対象から非追跡対象へのリンクは禁止されていますが、実装スライスから実装計画へのリンクは特別に許可されます。なお、実装計画のステータスが完了(DONE)になったときは、リンクを解除して - とします。
  • 単方向参照規則: 実装スライスからは、親ユースケース(docs/usecases/USECASE-XXX.md)および対象 feature(<UseCaseID>:<FeatureID> 形式。例: USECASE-001:F-1)への参照(リンク)をヘッダー等に記述します。

フロントマターとステータス管理

  • 標準項目(name, description, timestamp, ai)に加え、status, review キーを記述します。
  • ステータス値(status)、レビューメタデータ(review)、ライフサイクル遷移、完了条件評価、およびユースケース台帳同期ルールについては、document-status-guide.md を参照してください。

Section & Column Guidelines

実装スライスファイルには以下の4つのセクションを必ず記述します。

1. 概要 (Overview)

  • 複数コンポーネントにまたがる横断的開発の概要とアプローチを記述します。

2. 目的 (Purpose)

  • 本実装スライスで達成すべき全体目標や価値を記述します。

3. 完了条件 (Completion Criteria)

  • 本実装スライス全体が完了したとみなす具体的な達成条件をチェックリスト形式(- [ ])等で記述します。

4. 対象コンポーネント表 (Slice Table)

  • 関連する各コンポーネントの機能仕様と実装計画を管理するテーブルを以下の列フォーマットで記述します。
    • AppID: ソフトウェアコンポーネントの AppID (※ <root>/GEMINI.project.md で定義されたAppID)
    • 概要: 該当コンポーネントでの実装概要
    • 機能仕様: 増分機能仕様書ファイル(specs/incremental/<SPEC-I-ID>.md 等)へのリンク
    • 実装計画: 実装計画ファイル(docs/backlog/implementations/<AppID>-<SPEC-I-ID>.md 等)へのリンク。ステータスが DONE(完了)のときは - を記述
    • ステータス: 開発進行に応じたステータス(SPEC → DESIGN → PLAN → TODO | WIP | REVIEW:WIP | DONE | CLOSE)を記述します(※ 不具合対応等で仕様書・設計書が不要な場合は PLAN または TODO から開始)。
    • 依存: 前提となる依存対象を <AppID>:<SPEC-I-ID> または <AppID>:<実装計画> の形式で記述(依存がない場合は NONE)
    • 更新日時: 最終更新日時(YYYY-MM-DD HH:mm)

Template

以下は実装スライスを作成する際の標準Markdownテンプレートです。

---
name: slice-auth-feature.md
description: <実装スライスの1行概要>
timestamp: YYYY-MM-DD
ai: ai-coauthored
status: DRAFT # DRAFT | REVIEW:DRAFT | TODO | WIP | REVIEW:WIP | DONE
review:
  result: "" # ACCEPTED | REJECTED
  timestamp: "" # YYYY-MM-DD
  reason: "" # REJECTED時の1行理由サマリー
---

# Implementation Slice: <機能・プロジェクト名>

**親ユースケース**: [`USECASE-001`](../../usecases/USECASE-001.md)
**対象 Feature**: `USECASE-001:F-1` (`user-login`)

## 概要

<複数ソフトウェアコンポーネントを横断する開発の概要を記述します。>

## 目的

<本実装スライスにより達成される全体ゴールやビジネス/技術的価値を記述します。>

## 完了条件

-   [ ] <実装スライス全体の完了条件1>
-   [ ] <実装スライス全体の完了条件2>

## 対象コンポーネント表

| AppID | 概要 | 機能仕様 | 実装計画 | ステータス | 依存 | 更新日時 |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- |
| `AUTH-SERVICE` | 認証トークン発行API実装 | [`SPEC-I-001`](../../backend/auth-service/specs/incremental/SPEC-I-001.md) | [`AUTH-SERVICE-SPEC-I-001`](../implementations/AUTH-SERVICE-SPEC-I-001.md) | WIP | `USER-SERVICE:SPEC-I-002` | 2026-09-03 |
| `USER-SERVICE` | ユーザー情報参照API拡張 | [`SPEC-I-002`](../../backend/user-service/specs/incremental/SPEC-I-002.md) | - | DONE | NONE | 2026-09-03 |