| name | aidlc-application-design |
| description | Use when component and service structure needs to be designed before implementation, as a conditional INCEPTION stage after workflow-planning. |
| metadata | {"version":"0.6.0","author":"Jay","category":"ai-dlc-workflow","invoke_mode":"orchestrator-only","return_behavior":"stop-no-gate","output_path":"devflow-docs/inception/application-design.md","skill_nature":"hybrid","lifecycle":"active","model_dependency":"๋ชจ๋ธ์ด ์ปดํฌ๋ํธ ๊ฒฝ๊ณ๋ฅผ ์์๋ก ๊ฒฐ์ ํจ","amplification_notes":"๋๋ฉ์ธ entity + ์๋น์ค ๊ตฌ์กฐ ๋ช
์์ ๋ถํด"} |
aidlc-application-design
Purpose
Design the component and service structure before implementation begins.
Execution Modes
LIST Mode (๊ธฐ๋ณธ)
์ผ๋ฐ ํธ์ถ. ์ปดํฌ๋ํธ ๋ชฉ๋ก๋ง ์์ฑํ๊ณ STOP.
๋ชจ๋ depth์์ application-design.md์ ์ปดํฌ๋ํธ ๋ชฉ๋ก์ ์ ์ฅํ๋ค (Minimal ํฌํจ).
DETAIL Mode
ํธ์ถ ํ
์คํธ์ DETAIL ํค์๋ ํฌํจ ์ ํ์ฑํ:
"aidlc-application-design: DETAIL โ ์น์ธ๋ ๋ชฉ๋ก์ผ๋ก ์์ธ ์ค๊ณ ์งํ"
DETAIL ๋ชจ๋์์๋:
devflow-docs/inception/application-design.md ์ฝ๊ธฐ (๋ชฉ๋ก ๋จ๊ณ ๊ฒฐ๊ณผ)
- depth์ ๋ฐ๋ผ ์์ธ ์ค๊ณ ์งํ:
- Standard: ์ฃผ์ ์ธํฐํ์ด์ค + ์์กด์ฑ
- Comprehensive: ์ ์ฒด ์ธํฐํ์ด์ค + ์์กด์ฑ + ๋ฐ์ดํฐ ์์ + ์ํธ์์ฉ ๋ค์ด์ด๊ทธ๋จ
application-design.md ์
๋ฐ์ดํธ ํ STOP
depth ํ์ธ (Primary): ํธ์ถ ํ
์คํธ์ Depth: [level] ํจํด์ด ์์ผ๋ฉด ๊ทธ ๊ฐ์ ์ฌ์ฉ.
depth ํ์ธ (Fallback): ํธ์ถ ํ
์คํธ์ ์์ผ๋ฉด devflow-docs/inception/workflow-plan.md์ ## Stage Depths โ application-design ํ์์ ์ฝ๋๋ค.
Minimal depth: LIST Mode๋ง ์คํ. DETAIL ํธ์ถ ์์.
Execute
Step 1: Load context
Read the following files (if they exist):
devflow-docs/inception/requirements.md โ functional and non-functional requirements
devflow-docs/inception/workspace.md โ greenfield/brownfield context
Step 2: Generate component list (LIST Mode)
DETAIL ๋ชจ๋์ธ ๊ฒฝ์ฐ Step 4๋ก ๊ฑด๋๋ด๋ค.
๊ฐ ์ ์ปดํฌ๋ํธ์ ๋ํด ์๋ ์ ๋ณด๋ง ์์ง (์์ธ ์ค๊ณ๋ DETAIL ๋ชจ๋์์):
- Name: ์ปดํฌ๋ํธ๋ช
- Responsibility: ํ ์ค ์ฑ
์
- Type: Service | Repository | Adapter | Controller | Util ์ค ํ๋
๋ฐํ ํ์:
## ์ปดํฌ๋ํธ ๋ชฉ๋ก (์ด์)
| ์ปดํฌ๋ํธ | ์ฑ
์ | ํ์
|
|---------|------|------|
| [Name] | [ํ ์ค ์ฑ
์] | [Type] |
์ด [N]๊ฐ ์ปดํฌ๋ํธ
Step 3: Save LIST artifact and STOP (LIST Mode)
LIST ๋ชจ๋์์๋ ์ปดํฌ๋ํธ ๋ชฉ๋ก์ devflow-docs/inception/application-design.md์ ์ ์ฅ ํ STOP.
Minimal depth ํฌํจ ๋ชจ๋ depth์์ ์ ์ฅ ํ์ (์ดํ ์คํฌ์ด ์ด ํ์ผ์ ์ฐธ์กฐ).
# Application Design
**Mode**: LIST (๋ชฉ๋ก ๋จ๊ณ)
**Timestamp**: [ISO 8601]
## ์ปดํฌ๋ํธ ๋ชฉ๋ก
| ์ปดํฌ๋ํธ | ์ฑ
์ | ํ์
|
|---------|------|------|
| [Name] | [ํ ์ค ์ฑ
์] | [Type] |
session-summary ์ค๊ฐ ๊ธฐ๋ก: LIST ์๋ฃ ํ session-summary.md์ ## Completed Work์ [~] application-design โ LIST ์๋ฃ ([N]๊ฐ ์ปดํฌ๋ํธ) ์
๋ฐ์ดํธ.
โ Return to Orchestrator (๋ชฉ๋ก ๋ฐํ)
Step 4: DETAIL Mode โ ์์ธ ์ค๊ณ
DETAIL ๋ชจ๋์์๋ง ์คํ.
Standard depth:
๊ฐ ์ปดํฌ๋ํธ์ ๋ํด:
- Public interface: ์ฃผ์ ๋ฉ์๋/API (2-3๊ฐ)
- Dependencies: ์์กดํ๋ ์ปดํฌ๋ํธ
Comprehensive depth:
๊ฐ ์ปดํฌ๋ํธ์ ๋ํด:
- Public interface: ์ ์ฒด ๋ฉ์๋/API (์
๋ ฅ, ์ถ๋ ฅ, ์์ธ)
- Dependencies: ์์กด ์ปดํฌ๋ํธ ๋ฐ ๋ฐฉํฅ
- Data it owns: ์ด ์ปดํฌ๋ํธ๊ฐ ์์ ํ๋ ๋ฐ์ดํฐ
- Interactions: ์ฃผ์ ์ํ์ค (ASCII ๋ค์ด์ด๊ทธ๋จ, ๊ธฐ๋ณธ ASCII ์ ์ฉ:
+, -, |, ^, v, >, <)
application-design.md๋ฅผ ์
๋ฐ์ดํธํ์ฌ ์์ธ ์น์
์ถ๊ฐ:
## ์ปดํฌ๋ํธ ์์ธ ์ค๊ณ
### [ComponentName]
**Responsibility**: [ํ ์ค]
**Interface**: [๋ฉ์๋ ๋ชฉ๋ก]
**Dependencies**: [์์กด ์ปดํฌ๋ํธ]
**Data Owned**: [์์ ๋ฐ์ดํฐ] (Comprehensive๋ง)
**Interactions**: [ASCII ๋ค์ด์ด๊ทธ๋จ] (Comprehensive๋ง)
Step 5: NFR Design Patterns (์ค์ผ์คํธ๋ ์ดํฐ ์ ํธ ์)
ํธ์ถ ํ
์คํธ์ NFR Design ํฌํจ ํค์๋๊ฐ ์์ ๋๋ง ์คํ.
์์ผ๋ฉด ์ด Step์ ์คํตํ๊ณ Review๋ก ์งํ.
ํต์ฌ ์์น: Claude๋ ์ ๋ณด ์ ๋ฆฌ์์ด์ง ์์ฌ๊ฒฐ์ ์๊ฐ ์๋๋ค. NFR ์ค๊ณ์๋ ์ ๋ต์ด ์๊ณ ํธ๋ ์ด๋์คํ๋ง ์กด์ฌํ๋ค.
devflow-docs/inception/nfr-requirements.md ์ฝ๊ธฐ
- ๊ฐ NFR ์นดํ
๊ณ ๋ฆฌ์ ๋ํด ์ปดํฌ๋ํธ ์ค๊ณ์ ์ฐ๊ณ๋ ํจํด ์ต์
ํ
์ด๋ธ ์์ฑ:
- ๊ฐ ํจํด์ ์ฅ์ , ๋จ์ , ๋น์ฉ ์ํฅ์ ๋ณ๋ ฌ ์ ์
- "๊ถ์ฅ ํจํด: X" ํ์ ์ฌ์ฉ ๊ธ์ง โ ์ต์
๋ง ์ ์
โ ๏ธ ์ด ์ ํ์ ๊ธฐ์ ๋ด๋น์์ ์์๋ฅผ ๊ถ์ฅํฉ๋๋ค ๊ฒฝ๊ณ ํฌํจ
application-design.md์ ## NFR Design Patterns ์น์
์ถ๊ฐ
์ฐ์ถ๋ฌผ ํ์:
## NFR Design Patterns
> โ ๏ธ NFR ํจํด ์ ํ์ ์ด์ ํ๊ฒฝ๊ณผ ๋น์ฉ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค.
> ๊ธฐ์ ๋ด๋น์์ ์์๋ฅผ ๊ถ์ฅํฉ๋๋ค.
### [NFR ์นดํ
๊ณ ๋ฆฌ]: [์๊ตฌ์ฌํญ ๊ฐ]
| ํจํด | ์ฅ์ | ๋จ์ | ๋น์ฉ ์ํฅ |
|------|------|------|----------|
| [ํจํด A] | [์ฅ์ ] | [๋จ์ ] | [๋น์ฉ] |
| [ํจํด B] | [์ฅ์ ] | [๋จ์ ] | [๋น์ฉ] |
| [ํจํด C] | [์ฅ์ ] | [๋จ์ ] | [๋น์ฉ] |
Review
conventions Review Workflow ์ ์ฉ.
- ์ฐ์ถ๋ฌผ: devflow-docs/inception/application-design.md
- ๋ฆฌ๋ทฐ์ด: artifact-reviewer-prompt.md
session-summary ์ค๊ฐ ๊ธฐ๋ก: DETAIL ๋ชจ๋์์ ๊ฐ ์ปดํฌ๋ํธ ์์ธ ์ค๊ณ ์๋ฃ ์ [~] application-design โ DETAIL [N]/[M] ์ปดํฌ๋ํธ ์๋ฃ ์
๋ฐ์ดํธ.
Return to Orchestrator
conventions ํ์ค ํ์. ๋ฐํ ํ๋:
LIST Mode:
- ์ค๊ณ๋ ์ปดํฌ๋ํธ: [count]๊ฐ
- ๋ชฉ๋ก: [์ปดํฌ๋ํธ๋ช
๋์ด]
- ์ฐ์ถ๋ฌผ: devflow-docs/inception/application-design.md (๋ชฉ๋ก ๋จ๊ณ)
- ๋ฆฌ๋ทฐ: [โ
์น์ธ๋จ | โญ ์คํต (Minimal)]
DETAIL Mode:
- ์์ธ ์ค๊ณ ์๋ฃ: [count]๊ฐ ์ปดํฌ๋ํธ
- NFR Design Patterns: [count]๊ฐ ์นดํ
๊ณ ๋ฆฌ (NFR ์ ํธ ์)
- ์ฐ์ถ๋ฌผ: devflow-docs/inception/application-design.md (์
๋ฐ์ดํธ๋จ)
- ๋ฆฌ๋ทฐ: [โ
์น์ธ๋จ | โญ ์คํต (Minimal)]
Common Issues
No clear component boundaries
์์คํ
์ด ๋จ์ผ ์ปดํฌ๋ํธ๋ก ์ถฉ๋ถํ๋ฉด:
- ๋จ์ผ ์ปดํฌ๋ํธ๋ก ์ค๊ณ
- "Single-component system โ no decomposition needed" ๊ธฐ๋ก