یکی از موضوعاتی که در اسکرام ممکنه سوالات زیادی رو به وجود آورده باشه مفهوم DoD یا همون Definition of Done هست که قصد دارم توی این مقاله این موضوع رو باز کنم و آخر این مقاله نگاه جامعی به این مفهوم داشته باشیم.
در Scrum Guide تعریف DoD اینطوری گفته شده:
وقتی به یک کاری که روی محصول انجام گرفته میگیم «انجام شده»، باید معنی این عبارت رو بدونیم و مشخص باشه که به چه کاری میگیم «انجام شده». البته که ممکنه این تعریف برای هر تیم اسکرام کاملا متفاوت باشه و هرتیم تعریف متفاوتی از کار انجام شده داشته باشه. هدف این تعریف در تیم اسکرام اینه که زمانی که یک کار به حالت «انجام شده» تغییر وضعیت میده مشخص و شفاف باشه.
به طور خلاصه DoD یک تعریف مشترک در تیم اسکرامه در مورد آنچه که باید انجام بگیره تا محصول قابل انتشار بشه.
همچنین میتونیم برای هر کاری در جهان که قابل تحویل گرفتنه، یک DoD داشته باشیم. بیاید با چندتا سوال ساده در مورد موضوعاتی که میتونیم توی جهان واقعی پیداشون کنیم، این موضوع رو اثبات کنیم:
این چهارتا سوال بخش کوچکی از سوالاته که میتونیم بهشون یک DoD اختصاص بدیم و بگیم که چه زمانی این کارها به حالت «انجام شده» تغییر وضعیت دادن.
به طور خاص وقتی در مورد توسعه یک محصول صحبت میکنیم لازمه که DoD رو به سه قسمت تقسیم کنیم:
البته همونطور که بالا هم گفتیم در هر تیم اسکرام ممکنه این تعریف و حتی این سه قسمت متفاوت باشن و به طور مثال در یک تیم صرفا توسعه محصول از لحاظ کیفی بررسی بشه و اگر کیفیت لازم رو داشت، به «انجام شده» تغییر وضعیت بده (طبق تجربهای که از بررسی تیمهای اسکرام مختلف داشتم، معمولا تیم فنی، توسعه یک محصول رو صرفا از لحاظ کیفی بررسی میکنه و بررسی دو مورد باقیمانده به عهده تیمهای دیگه سپرده میشه).
بریم باهم این سه قسمت رو بررسی کنیم و نگاه کاملتری نسبت بهشون داشته باشیم:
توی این بخش، توسعه یک محصول از لحاظ عملکردی بررسی میشه. چطور؟ اینطوری که باید ببینیم آیا توسعهای که انجام گرفته، ارزشی رو خلق کرده یا نه؟ که این مورد رو میتونیم با نوشتن یوزر استوری User Story بررسی کنیم. (یک تعریف خلاصه از یوزر استوری بدم برای افرادی که ممکنه با این تعریف آشنا نباشن: یوزر استوری یا همون داستان کاربر، نیازهای کاربر رو در قالب پرسش سوالهائی که معمولا با «چه کسی»، «چه چیزی» و «چرا» شروع میشن بیان میکنه - در ادامه این مقاله چندتا یوزر استوری رو باهم بررسی میکنیم و بیشتر آشنا میشی باهاش)
همونطور که توی عکس بالا مشخصه، هر یوزر استوری شامل سه بخشه که قراره سه تا موضوع رو مشخص کنه.
مثالمون توی این قسمت به این صورته که یک سرویس فروش بلیط هواپیما داریم و قراره که به مشتری بلیطهای خریداری شدهش رو نمایش بدیم:
کیفیت متعلق به تیم توسعه است تا اطمینان حاصل بشه که محصول از حداکثر کیفیت برخورداره. استانداردهای کیفیت و اندازهگیری اونها میتونه ذهنی باشه و یک توافقی بین تیم باشه و یا میتونه بر اساس دادههای دریافتی باشه. کیفیت رو با معیارها و خطکشهای مختلفی میشه تست کرد که از نمونههای رایجش میتونیم به نوشتن یونیت تست، استفاده از دیزاین پترنها، استفاده از استانداردهای تعریف شده و... اشاره کنیم.
این مولفه، ویژگیها یا ویژگیهای یک محصول هستند که ممکنه ارزش مستقیم تجاریای به محصول اضافه نکنن، اما بدون اونها محصول نمیتونه حرکت کنه و مسیرش رو ادامه بده. این ویژگیهای تضمین کیفیت محصول رو میتونیم تحت مؤلفه کیفیت هم در نظر بگیریم. از مثالهای این مولفه هم میتونیم به موارد زیر اشاره بکنیم:
و...
این موارد ممکنه خیلی به چشم نیان و مورد اول و دومی تیم رو بیشتر درگیر کنه ولی با توجه نکردن بهشون ممکنه یک محصول به طور کامل نابود بشه. به همین دلیل نیازه که برای بررسی کردن این موارد زمان کافی گذاشته بشه تا محصول به بهترین نسخه خودش برسه.
مهمترین منبعی که برای این مقاله استفاده کردم و سعی کردم ترجمه روانش رو در اختیارتون بزارم «لینک» هست و از سایت اسکرامه.
خوشحال میشم اگر نکتهای داری که فکر میکنی این متن رو بهتر میکنه، نقدی داری و احساس میکنی جائی رو اشتباه گفتم و یا نظری نسبت به این نوشته داری، توی کامنتها بخونمش.
برای ارتباط گرفتن با من میتونی از این لینک استفاده کنی.
توی کانال تلگرامم محتوای مربوط به حوزه تکنولوژی میزارم، اگر فکر میکنی به دردت میخوره خوشحال میشم اونجا ببینمت :)