# مشخصات درس‌نامه: متودولوژی‌های توسعه نرم‌افزار با AI (AI Software Methodologies & SDD) - **شناسه در سیلابس:** `L2.7` - **فصل:** فصل ۲: شروع مسیر Vibe Coding (Ch 2) - **نوع محتوا:** 📘 درس‌نامه متنی - **زمان تقریبی مطالعه:** ۱۲ دقیقه - **پیش‌نیازهای مستقیم:** `L2.6` (اصول مهندسی پرامپت) --- ## ۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy) دانشجو پس از مطالعهٔ این درس‌نامه باید بتواند: - [ ] **تحلیل/ارزیابی کند (Evaluate):** رویکرد غیرحرفه‌ای «پرامپت و دعا» (Prompt & Pray) را با رویکرد مهندسی و پایدار «توسعه مشخصات‌محور» (Spec-Driven Development - SDD) مقایسه کند. - [ ] **درک کند (Understand):** چرخهٔ چهار مرحله‌ای SDD شامل: **۱. مشخصات (Specify) $\rightarrow$ ۲. برنامه‌ریزی (Plan) $\rightarrow$ ۳. اجرای ایجنت (Execute) $\rightarrow$ ۴. راستی‌آزمایی انسان (Verify)** چگونه کار می‌کند. - [ ] **درک کند (Understand):** چرا ثبت تصمیمات در قالب اسناد شفاف (سند مشخصات یا PRD) مانع از سردرگمی هوش مصنوعی در پروژه‌های بزرگ می‌شود. - [ ] **به‌کار ببندد (Apply):** نقش خود به عنوان ناظر و معمار نهایی در حلقه بازخورد را بپذیرد؛ کدهای تغییریافته (Git Diffs یا تغییرات ایجنت) را پیش از تایید، مرور و راستی‌آزمایی کند. --- ## ۲. محدوده و مرزهای محتوا (Scope & Boundaries) ### آنچه باید پوشش داده شود (In-Scope): 1. **بیماری شایع توسعه شتاب‌زده با هوش مصنوعی (Prompt & Pray):** * پرامپت‌نویسی تصادفی و تکراری به این امید که شانس بیاوریم و باگ حل شود! * چرا این روش بعد از رسیدن پروژه به بیش از ۳ صفحه به یک فاجعه و قفل کامل پروژه تبدیل می‌شود. 2. **تولد پارادایم توسعه مشخصات‌محور (Spec-Driven Development):** * در دنیای وایب کدینگ حرفه‌ای، ارزان‌ترین و سریع‌ترین بخش کار تولید کد است (توسط هوش مصنوعی انجام می‌شود). * گران‌ترین و مهم‌ترین بخش، **روشن کردن دقیق نیت و رفتار مورد انتظار نرم‌افزار** است. * نوشتن مشخصات شفاف (چه کارهایی باید انجام شود، داده‌ها چه ساختاری دارند، سناریوهای کاربر چیست). 3. **چرخهٔ چهار مرحله‌ای حلقه SDD:** * **گام ۱: تدوین مشخصات (Specify):** نوشتن سند یا تعریف مرزهای تسک قبل از درخواست کد. * **گام ۲: طرح اقدام و برنامه‌ریزی (Plan):** ایجنت مراحل انجام تسک را می‌چیند و گام‌ها را برای بررسی ارائه می‌دهد. * **گام ۳: اجرای هوشمند توسط ایجنت (Execute):** ایجنت فایل‌ها را ویرایش و کدهای لازم را اضافه می‌کند. * **گام ۴: آزمایش و راستی‌آزمایی انسان (Verify):** کاربر خروجی را در مرورگر یا با تست می‌بیند، بررسی می‌کند و سپس تایید یا اصلاح می‌کند. 4. **نقش حیاتی انسان در صندلی تایید نهایی:** * هوش مصنوعی کد را پیشنهاد می‌دهد؛ شما مسئول بازبینی، تست و کلیک دکمه قبولی هستید. 5. **پیش‌درآمدی بر فصول بعدی دوره:** * در فصل ۴ نحوه نوشتن PRD واقعی با هوش مصنوعی را یاد خواهید گرفت؛ در فصل‌های ۶ و ۷ کدها با همین چرخه تولید می‌شوند و در پروژه‌های ۸ و ۱۴ پیاده‌سازی کامل محصول را تجربه خواهید کرد. 6. **کال‌اوت‌های Quera:** * `
`: چرا شرکت‌های پیشروی جهان و تیم‌های مدرن هوش مصنوعی در سال‌های ۲۰۲۵ و ۲۰۲۶ متدولوژی SDD را جایگزین روش‌های سنتی کرده‌اند؟ * `
`: مژده به دانشجویان: با این متدولوژی شما هرگز در میان صدها خط کد سردرگم نخواهید شد، زیرا نقشه همیشه مشخص است. ### آنچه نباید وارد آن شویم (Out-of-Scope): - ورود تفصیلی به نگارش تمپلیت‌های PRD، فیچربک‌لاگ یا ابزارهای مدیریت پروژه مثل Jira/Notion (فصل ۴). - تشریح تست‌های خودکار نرم‌افزاری با فریم‌ورک‌های Jest یا Pytest (فصل ۹). --- ## ۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms) | اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یک‌خطی ساده | | :--- | :--- | :--- | | Prompt & Pray | پرامپت و دعا | رویکرد غیرعلمی و تصادفی فرستادن پرامپت‌های کورکورانه به امید درست شدن خودکار کد | | Spec-Driven Development (SDD) | توسعه مشخصات‌محور | متدولوژی مهندسی که در آن تولید نرم‌افزار بر پایه اسناد مشخصات و برنامه اقدام شفاف استوار است | | Feedback Loop | چرخهٔ بازخورد | فرایند پیوستهٔ آزمایش خروجی ایجنت، مشاهده نتیجه و ارائه راهنمایی تکمیلی به هوش مصنوعی | | Verification | راستی‌آزمایی | بررسی و تست واقعی عملکرد نرم‌افزار توسط انسان پیش از پذیرش تغییرات ایجنت | | Product Requirements Document (PRD) | سند نیازمندی‌های محصول | سندی جامع که چرایی، اهداف و رفتار دقیق فیچرهای یک نرم‌افزار را پیش از ساخت توصیف می‌کند | --- ## ۴. جایگاه‌های تصاویر و نمودارها (Visual & Diagram Placeholders) > **راهنمای ایجنت نویسنده:** تمام تصاویر باید در پوشهٔ `images/` قرار گرفته و در قالب جدول تک‌خانه‌ای وسط‌چین با کپشن تفصیلی درج شوند: 1. **تصویر کاور درس:** `images/cover.png` * **موضوع:** کاور مدرن نمایش‌دهنده نقشهٔ معماری دیجیتال (Blueprint) که توسط دست انسان هدایت شده و هوش مصنوعی در حال اجرای خطوط آن است. 2. **مقایسه پرامپت و دعا در برابر توسعه مشخصات‌محور:** `images/prompt-and-pray-vs-sdd.png` * **موضوع:** تصویر مقایسه‌ای: سمت چپ آشفتگی، آزمون‌وخطای بی‌پایان و سرخوردگی (Prompt & Pray) در برابر سمت راست ریل‌گذاری منظم و گام‌به‌گام با سند مشخصات (SDD). 3. **چرخهٔ چهار مرحله‌ای حلقه SDD:** `images/sdd-four-step-loop.png` * **موضوع:** دیاگرام چرخشی ۴ مرحله: ۱. مشخصات (Specify) $\rightarrow$ ۲. برنامه (Plan) $\rightarrow$ ۳. اجرای ایجنت (Execute) $\rightarrow$ ۴. بررسی انسان (Verify). 4. **جایگاه انسان در فرماندهی بازخورد:** `images/human-in-the-loop.png` * **موضوع:** اینفوگرافیک مفهوم Human-in-the-Loop که انسان را در نقطه آغاز (تعیین هدف) و نقطه پایان (تایید کیفیت خروجی) نشان می‌دهد. 5. **نقشه راه SDD در امتداد فصول دوره:** `images/sdd-course-application.png` * **موضوع:** فلوچارت اتصال فصول دوره: فصل ۴ (طراحی سند و تسک) $\rightarrow$ فصل‌های ۶ تا ۸ (پیاده‌سازی مرحله‌ای) $\rightarrow$ پروژه‌های عملی ۱ و ۲. --- ## ۵. بخش‌بندی و ساختار محتوایی پیشنهادی درس‌نامه (`README.md`) 1. **تیتر اصلی:** `# متودولوژی‌های توسعه نرم‌افزار با AI و ورود به دنیای SDD` 2. **مقدمه ملموس:** چرا توسعه‌دهندگان مبتدی با هوش مصنوعی در بن‌بست گیر می‌کنند؟ 3. **جدول کاور درس** 4. **پدیده خطرناک «پرامپت و دعا» (Prompt & Pray):** تحلیل آسیب‌شناسانه سردرگمی در پروژه‌ها. 5. **ظهور متدولوژی توسعه مشخصات‌محور (SDD):** ارزش مشخصه‌نویسی شفاف در عصر هوش مصنوعی. 6. **چهار گام طلایی چرخه SDD:** تشریح مراحل Specify، Plan، Execute و Verify با یک سناریوی زنده. 7. **باکس نکته پیشرفته Quera (`
`):** چرا غول‌های فناوری متدولوژی SDD را قلب آینده مهندسی نرم‌افزار می‌دانند؟ 8. **انسان در حلقه فرماندهی (Human-in-the-Loop):** تفاوت ناظر فعال با تماشاگر منفعل. 9. **ارتباط SDD با مسیر شما در این دوره:** چگونه این متدولوژی ستون فقرات پروژه‌های کوئرا کالج خواهد بود. 10. **باکس اطمینان‌بخش Quera (`
`):** آرامش ذهن و تسلط کامل با اتکا به ریل‌گذاری مشخصات. 11. **جمع‌بندی درس‌نامه و آماده‌سازی برای آزمون پایانی فصل:** مرور کلیدی‌ترین اصول پیش از ورود به کوئیز. --- ## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer) - [ ] تفاوت شفاف رویکرد «پرامپت و دعا» با متدولوژی «توسعه مشخصات‌محور» شرح داده شده باشد. - [ ] چرخه ۴ مرحله‌ای SDD (مشخصات، برنامه، اجرا، راستی‌آزمایی) همراه با دیاگرام به خوبی مستند شده باشد. - [ ] نقش نظارتی انسان در پذیرش یا رد کدهای ایجنت به صراحت تاکید شده باشد. - [ ] پل ارتباطی این درس با فصول بعدی (به‌ویژه فصل ۴ و پروژه‌های عملی) برقرار شده باشد.