11 KiB
11 KiB
مشخصات درسنامه: متودولوژیهای توسعه نرمافزار با 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):
- بیماری شایع توسعه شتابزده با هوش مصنوعی (Prompt & Pray):
- پرامپتنویسی تصادفی و تکراری به این امید که شانس بیاوریم و باگ حل شود!
- چرا این روش بعد از رسیدن پروژه به بیش از ۳ صفحه به یک فاجعه و قفل کامل پروژه تبدیل میشود.
- تولد پارادایم توسعه مشخصاتمحور (Spec-Driven Development):
- در دنیای وایب کدینگ حرفهای، ارزانترین و سریعترین بخش کار تولید کد است (توسط هوش مصنوعی انجام میشود).
- گرانترین و مهمترین بخش، روشن کردن دقیق نیت و رفتار مورد انتظار نرمافزار است.
- نوشتن مشخصات شفاف (چه کارهایی باید انجام شود، دادهها چه ساختاری دارند، سناریوهای کاربر چیست).
- چرخهٔ چهار مرحلهای حلقه SDD:
- گام ۱: تدوین مشخصات (Specify): نوشتن سند یا تعریف مرزهای تسک قبل از درخواست کد.
- گام ۲: طرح اقدام و برنامهریزی (Plan): ایجنت مراحل انجام تسک را میچیند و گامها را برای بررسی ارائه میدهد.
- گام ۳: اجرای هوشمند توسط ایجنت (Execute): ایجنت فایلها را ویرایش و کدهای لازم را اضافه میکند.
- گام ۴: آزمایش و راستیآزمایی انسان (Verify): کاربر خروجی را در مرورگر یا با تست میبیند، بررسی میکند و سپس تایید یا اصلاح میکند.
- نقش حیاتی انسان در صندلی تایید نهایی:
- هوش مصنوعی کد را پیشنهاد میدهد؛ شما مسئول بازبینی، تست و کلیک دکمه قبولی هستید.
- پیشدرآمدی بر فصول بعدی دوره:
- در فصل ۴ نحوه نوشتن PRD واقعی با هوش مصنوعی را یاد خواهید گرفت؛ در فصلهای ۶ و ۷ کدها با همین چرخه تولید میشوند و در پروژههای ۸ و ۱۴ پیادهسازی کامل محصول را تجربه خواهید کرد.
- کالاوتهای Quera:
<details class="violet">: چرا شرکتهای پیشروی جهان و تیمهای مدرن هوش مصنوعی در سالهای ۲۰۲۵ و ۲۰۲۶ متدولوژی SDD را جایگزین روشهای سنتی کردهاند؟<details class="green">: مژده به دانشجویان: با این متدولوژی شما هرگز در میان صدها خط کد سردرگم نخواهید شد، زیرا نقشه همیشه مشخص است.
آنچه نباید وارد آن شویم (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/قرار گرفته و در قالب جدول تکخانهای وسطچین با کپشن تفصیلی درج شوند:
- تصویر کاور درس:
images/cover.png- موضوع: کاور مدرن نمایشدهنده نقشهٔ معماری دیجیتال (Blueprint) که توسط دست انسان هدایت شده و هوش مصنوعی در حال اجرای خطوط آن است.
- مقایسه پرامپت و دعا در برابر توسعه مشخصاتمحور:
images/prompt-and-pray-vs-sdd.png- موضوع: تصویر مقایسهای: سمت چپ آشفتگی، آزمونوخطای بیپایان و سرخوردگی (Prompt & Pray) در برابر سمت راست ریلگذاری منظم و گامبهگام با سند مشخصات (SDD).
- چرخهٔ چهار مرحلهای حلقه SDD:
images/sdd-four-step-loop.png- موضوع: دیاگرام چرخشی ۴ مرحله: ۱. مشخصات (Specify)
\rightarrow۲. برنامه (Plan)\rightarrow۳. اجرای ایجنت (Execute)\rightarrow۴. بررسی انسان (Verify).
- موضوع: دیاگرام چرخشی ۴ مرحله: ۱. مشخصات (Specify)
- جایگاه انسان در فرماندهی بازخورد:
images/human-in-the-loop.png- موضوع: اینفوگرافیک مفهوم Human-in-the-Loop که انسان را در نقطه آغاز (تعیین هدف) و نقطه پایان (تایید کیفیت خروجی) نشان میدهد.
- نقشه راه SDD در امتداد فصول دوره:
images/sdd-course-application.png- موضوع: فلوچارت اتصال فصول دوره: فصل ۴ (طراحی سند و تسک)
\rightarrowفصلهای ۶ تا ۸ (پیادهسازی مرحلهای)\rightarrowپروژههای عملی ۱ و ۲.
- موضوع: فلوچارت اتصال فصول دوره: فصل ۴ (طراحی سند و تسک)
۵. بخشبندی و ساختار محتوایی پیشنهادی درسنامه (README.md)
- تیتر اصلی:
# متودولوژیهای توسعه نرمافزار با AI و ورود به دنیای SDD - مقدمه ملموس: چرا توسعهدهندگان مبتدی با هوش مصنوعی در بنبست گیر میکنند؟
- جدول کاور درس
- پدیده خطرناک «پرامپت و دعا» (Prompt & Pray): تحلیل آسیبشناسانه سردرگمی در پروژهها.
- ظهور متدولوژی توسعه مشخصاتمحور (SDD): ارزش مشخصهنویسی شفاف در عصر هوش مصنوعی.
- چهار گام طلایی چرخه SDD: تشریح مراحل Specify، Plan، Execute و Verify با یک سناریوی زنده.
- باکس نکته پیشرفته Quera (
<details class="violet">): چرا غولهای فناوری متدولوژی SDD را قلب آینده مهندسی نرمافزار میدانند؟ - انسان در حلقه فرماندهی (Human-in-the-Loop): تفاوت ناظر فعال با تماشاگر منفعل.
- ارتباط SDD با مسیر شما در این دوره: چگونه این متدولوژی ستون فقرات پروژههای کوئرا کالج خواهد بود.
- باکس اطمینانبخش Quera (
<details class="green">): آرامش ذهن و تسلط کامل با اتکا به ریلگذاری مشخصات. - جمعبندی درسنامه و آمادهسازی برای آزمون پایانی فصل: مرور کلیدیترین اصول پیش از ورود به کوئیز.
۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- تفاوت شفاف رویکرد «پرامپت و دعا» با متدولوژی «توسعه مشخصاتمحور» شرح داده شده باشد.
- چرخه ۴ مرحلهای SDD (مشخصات، برنامه، اجرا، راستیآزمایی) همراه با دیاگرام به خوبی مستند شده باشد.
- نقش نظارتی انسان در پذیرش یا رد کدهای ایجنت به صراحت تاکید شده باشد.
- پل ارتباطی این درس با فصول بعدی (بهویژه فصل ۴ و پروژههای عملی) برقرار شده باشد.