دروازهی تأیید: چرا هر گام پروژه باید خروجی مستند داشته باشد
پروژههایی که فقط در پایان بازبینی میشوند، اشتباه را وقتی پیدا میکنند که اصلاحش گران شده است. دروازهی تأیید در پایان هر گام، اشتباه را همانجا متوقف میکند و به کارفرما کنترل واقعی میدهد.
یک الگوی تکراری در پروژههای نرمافزاری هست: کارفرما در جلسهی اول توضیح میدهد چه میخواهد، تیم چند ماه ناپدید میشود، و در پایان چیزی تحویل میشود که با انتظار فاصله دارد. در آن لحظه دو راه مانده: پذیرفتن چیز اشتباه یا پرداختن دوباره برای اصلاح.
دروازهی تأیید برای شکستن همین الگو است.
دروازهی تأیید یعنی چه
پروژه به چند گام تقسیم میشود. هر گام یک خروجی مستند دارد که کارفرما میبیند و تأیید میکند. تا تأیید نشود، گام بعد شروع نمیشود.
ساده است، ولی یک تغییر اساسی میسازد: اشتباه در همان گامی پیدا میشود که رخ داده است.
هفت گام و دروازههایشان
این ساختاری است که من در روش کار خودم دنبال میکنم:
| گام | خروجی | دروازه |
|---|---|---|
| درک | نقشهی مسئله | مسئله درست تعریف شده است |
| تعریف | سند نیازمندی، دامنهی نسخهی اول | دامنه و معیار موفقیت نهایی شد |
| معماری | نقشهی سامانه، قرارداد API، مدل داده | معماری و ریسکها پذیرفته شد |
| طراحی | جریان کاربر، نمونهی تعاملی | نمونه تأیید شد |
| ساخت | نسخههای فازبندیشده | هر فاز روی محیط پیشنمایش |
| اعتبارسنجی | گزارش آزمون | معیارهای پذیرش پاس شدهاند |
| انتشار | محصول زنده | زنده و زیر پایش |
هر خروجی، ورودی گام بعد است. نقشهی مسئله به PRD میرسد، PRD به معماری، و همینطور تا آخر.
چرا اشتباه دیر پیدا شده گران است
هزینهی اصلاح یک اشتباه با جلو رفتن پروژه چند برابر میشود:
- در گام تعریف: یک جمله در سند عوض میشود.
- در گام طراحی: چند صفحه دوباره طراحی میشود.
- در گام ساخت: کد بازنویسی میشود.
- بعد از انتشار: دادهی کاربران هم درگیر میشود.
دروازهها اشتباه را در ارزانترین نقطه نگه میدارند.
فایده برای کارفرما
- کنترل واقعی. در هر دروازه میتوانید مسیر را اصلاح، متوقف یا تأیید کنید. تعهد شما گامبهگام است، نه یکجا.
- دیدن پیشرفت واقعی. به جای «هشتاد درصد کار انجام شده»، یک خروجی مشخص جلوی شماست.
- ریسک قابلمدیریت. اگر پروژه باید متوقف شود، در گام دوم متوقف میشود نه در ماه ششم.
- مستندات بهعنوان دارایی. در پایان، علاوه بر محصول، همهی اسناد تصمیم را دارید.
فایده برای تیم
- ابهام کمتر. تیم میداند دقیقاً چه چیزی تأیید شده است.
- تغییر با قاعده. درخواست جدید وسط کار، با سند تأییدشده سنجیده میشود.
- دوبارهکاری کمتر. چیزی ساخته نمیشود که بعد دور ریخته شود.
دروازه با بوروکراسی فرق دارد
نگرانی رایج این است که این روش کار را کند کند. اگر بد اجرا شود، میکند. تفاوت در این چند نکته است:
- خروجی کوتاه. سندی که در یک نشست خوانده شود، نه یک کتاب.
- تأیید سریع. دروازه نباید هفتهها منتظر امضا بماند. یک نفر مشخص با اختیار تصمیم.
- معیار روشن. از قبل معلوم باشد «تأیید» یعنی چه.
- گامهای کوچک در ساخت. گام ساخت خودش به فازهای قابلنمایش تقسیم میشود؛ یک دروازهی بزرگ در پایان ساخت، همان مشکل قدیمی است.
این با چابکی تناقض ندارد
دروازهی تأیید به معنی برنامهریزی همهچیز از قبل نیست. گام ساخت میتواند کاملاً تکراری و انعطافپذیر باشد. چیزی که دروازهها تضمین میکنند این است که پیش از شروع ساخت، روی مسئله و مرزها توافق شده باشد.
چابکی دربارهی واکنش به یادگیری است، نه دربارهی شروع بدون فکر.
وقتی نیاز عوض میشود
نیاز در طول پروژه عوض میشود و این طبیعی است. با وجود اسناد تأییدشده، تغییر دیگر یک بحث مبهم نیست:
- تغییر با سند تأییدشده مقایسه میشود.
- اثرش بر دامنه، زمان و هزینه روشن میشود.
- تصمیم مکتوب گرفته میشود.
ابزاری که این ردیابی را ممکن میکند ماتریس ردیابی نیازمندی است.
همین سایت
این روش فقط توصیه نیست. همین سایت با همین هفت گام ساخته شده است: هر گام خروجی مستند داشت و تصمیمهای فنی آن به شکل ثبت تصمیم معماری نگه داشته شدهاند.
جمعبندی
دروازهی تأیید یک ایدهی ساده با اثر بزرگ است: هر گام یک خروجی، هر خروجی یک تأیید. اشتباه زود پیدا میشود، کارفرما کنترل دارد و هیچکس در پایان غافلگیر نمیشود.
برای پروژهای که به نظم نیاز دارد، هدایت پروژه و کیفیت را ببینید.