User StoryからAPI設計に分解する
Target
User Storyの実装に必要なAPIを特定する。調査の結果、既存のAPI設計とGapが存在していた場合はそれを解消するようにOpenAPI定義を更新する。
Prompt Example
#file:US-001_注文確定時の在庫ロック.md の内容を読み込み、このユーザストーリーを実現するために必要なAPIを列挙してください。
breakdown-user-story-to-apiagent を利用する- 実装したいユーザストーリーの定義ファイルを指定する
Phase 1: User Story Analysis
Input
- ユーザストーリー
- OpenAPI定義
Process
- 指定されたユーザーストーリーで必要となるAPIを推論
- 推論で導いたAPIと近似するAPIが既存のOpenAPI定義の中にあるかを確認
- 近似するAPIを発見した場合、そのAPI設計のままでユースケースを実現できるかを確認
- 必要なAPIを一覧化し、
.ai-memory/breakdown-user-story-to-api/YYYYMMDD.mdファイルに保存- 同名のファイルが存在する場合は
YYYYMMDD-N.mdのように連番を付与して別ファイルに保存する - 既存のAPI設計のままで実現できない場合APIが存在した場合はそのGapの内容と修正案を記載する。
- 同名のファイルが存在する場合は
- ファイルの内容をレビューする
Output
- Markdownファイル
Checklist
- Business Ruleに沿ったビジネスロジックを作成している
- データモデルは
doc/dataフォルダに配置されている設計書と平仄が取れている - データモデルに合わせてInput Validationが実装されるTaskになっている
-
doc/architecture/backend-dev-guide.mdに記載されているルールに準拠した設計修正案になっている
Phase 2: Update API doc
Input
- Phase 1で作成したmarkdownファイル
Process
- インプットに記載されているAPI設計のGap修正案を確認する
- 確認した修正案を元にOpenAPI定義を修正する
- 修正されたOpenAPI定義のスキーマが正しいことを
redocly lintコマンドを用いて検証する
Output
- 修正されたOpenAPI定義
Checklist
- Business Ruleに沿ったビジネスロジックを作成している
- データモデルは
doc/dataフォルダに配置されている設計書と平仄が取れている - データモデルに合わせてInput Validationが実装できるOpenAPI定義となっている
-
doc/architecture/backend-dev-guide.mdに記載されているルールに準拠した設計修正案になっている - OpenAPI定義以外の設計書の修正を行なっていない