44 lines
2.3 KiB
Markdown
44 lines
2.3 KiB
Markdown
# راهنمای گردشکار توسعهٔ مبتنی بر مشخصات (Spec-Driven Development — SDD)
|
|
## دورهٔ وایب کدینگ — کوئرا کالج
|
|
|
|
در این مخزن، تمام محتواها، درسنامهها، تمرینهای داوری خودکار و آزمونهای تستی **باید** بر اساس متدولوژی **Spec-Driven Development (SDD)** تولید شوند.
|
|
|
|
---
|
|
|
|
## اصول کلیدی SDD در این مخزن
|
|
|
|
1. **قانون طلایی (No Spec, No Content):**
|
|
هیچ درسنامه (`lesson.md`)، هیچ کد مسئلهای (`problem.md`, `solution/`, `tests/`) و هیچ سوال تستی بدون داشتن یک فایل مشخصات (`spec.md`) تایید شده، نباید نوشته شود.
|
|
|
|
2. **سلسلهمراتب توسعه:**
|
|
```
|
|
[Syllabus / Spreadsheet]
|
|
│
|
|
▼
|
|
[Phase 1: Lesson / Exercise Spec (spec.md)]
|
|
│
|
|
▼ (User Review & Approval)
|
|
[Phase 2: Reference Implementation / Content Draft]
|
|
│
|
|
▼
|
|
[Phase 3: Automated Test Matrix & Verification]
|
|
│
|
|
▼
|
|
[Phase 4: Final Publish-Ready Review]
|
|
```
|
|
|
|
3. **تفکیک مسئولیت پوشهها:**
|
|
هر درسنامه یا تمرین در پوشهٔ اختصاصی خود در ساختار زیر قرار میگیرد:
|
|
- **درسنامه:** `chapters/ch<XX>-<name>/<YY>-<lesson-slug>/`
|
|
- `spec.md` (مشخصات و اهداف یادگیری)
|
|
- `README.md` (متن نهایی درسنامه کوئرا کالج)
|
|
- **تمرین داوری:** `chapters/ch<XX>-<name>/<YY>-<exercise-slug>/`
|
|
- `spec.md` (مشخصات ورودی/خروجی، سناریو، سنجههای داوری)
|
|
- `problem.md` (صورت مسئله برای دانشجو)
|
|
- `initial/` (کد و اسکلت اولیه)
|
|
- `solution/` (پاسخ مرجع و بهینه)
|
|
- `tests/` (مجموعه تستهای داوری خودکار)
|
|
- **تمرین تستی:** `chapters/ch<XX>-<name>/<YY>-<quiz-slug>/`
|
|
- `spec.md` (مشخصات مفهومی و توزیع گزینهها)
|
|
- `questions.json` یا `questions.md` (صورت سوال، گزینهها، پاسخ صحیح و تحلیل گزینههای گمراهکننده)
|