تعریف کار انجام شده در بین افراد متفاوت است. عدم وجود تعریفی واحد از این مفهوم می تواند باعث بروز مشکلات و سوء تفاهم هایی شود که نتیجه ای جز تجربه ی منفی کاربران و همچنین تاثیر منفی بر درآمد ها ندارد که اینها دلایل خوبی برای ایجاد یک دیدگاه مشترک درباره ی مفهوم "انجام شدن کار" هستند. برای اینکه این دیدگاه مشترک در یک سازمان یا تیم شکل بگیرد در دنیای مدیریت محصول مفهومی به نام Definition of Done وجود دارد که این مقاله سعی دارد آن را معرفی کند.
Definition of Done چیست ؟
این سند مجموعه موارد توافق شده ایست که به صورت یک چک لیست باید قبل از کامل شدن پروژه تکمیل شود. این لیست به طور مداوم با کارها انجام شده بررسی می شود تا کارها را از حالت "در حال انجام" به حالت "انجام" منتقل کند.
در تهیه و تنظیم مستند Definition of Done باید به موارد زیر توجه داشت :
· مفهوم “Done” باید برای تمام اعضای یک تیم یا سازمان یکی باشد و همه یک برداشت را از ”انجام شدن“ داشته باشند.
· DoD تمام نیاز های غیر عملکردی (non-functional) یک پروژه را در بر بگیرد.
· DoD یک لیست کلی از انتظارات باشد که در پایان هر پروژه برآورده شود.
با اینکه جزئیات یک مستند DoD در هر سازمان متفاوت است ولی یک نمونه ی ساده از آن می تواند شبیه به چک لیست زیر باشد:
· تست های برنامه نوشته شده باشند و همه ی آنها با موفقیت اجرا شوند.
· سورس کد برنامه مجددا بررسی و اصلاح شده باشد.
· کد برنامه با branch اصلی ادغام شده باشد.
· پروژه در محیط شبیه سازی شده تست شده باشد.
· مستند فنی و مستند نصب نوشته شده باشند.
سازمان ها و گروه های مختلف گزینه های خاص و متفاوتی را بررسی می کنند، اما در نهایت هدف همه ی آنها اجرای کامل برنامه و برطرف کردن تمامی نیازمندی ها بدون هیچ مشکلی است.
مستند DoD توسط چه کسی باید نوشته شود؟
تیم توسعه دهنده و تیم مهندسی معمولا نقش اصلی را در تعریف مستند DoD دارند، زیرا این مستند بیشتر برای تضمین عملکرد خوب و برآورده کردن اساسی ترین الزامات و نیازهای فنی است. و این وظیفه ی تیم توسعه است که نرم افزاری با کیفیت و ارزش بالا ایجاد کند.
مدیر محصول یا مشتری می تواند ورودی های یک مستند DoD را فراهم کند ولی نمی تواند در چگونگی پیاده سازی و اجرای آن تاثیر گزار باشد. آنها می توانند به تیم توسعه بگویند که من خروجی x را از این محصول می خواهم ولی نمی توانند بگویند که چگونه این کار را انجام دهید.
اگر مدیر محصول یا مشتری و یا کاربر به قسمتی از نرم افزار یا محصول بازخورد منفی داشته باشد تیم توسعه باید این مورد را در نظر بگیرد و آن را در تولید محصول لحاظ کند.
بهترین نمونه های این مستند با همکاری تیمی متشکل از مالک محصول، تیم توسعه و مدیر پروژه ایجاد شده است.
چگونه و چه زمان باید مستند DoD را نوشت؟
در ابتدای پروژه باید زمانی را اختصاص داد تا به تعریف خود از Definition of Done رسید، این مستند در تخمین زمان پایان کار نیز می تواند به شما کمک کند. در بعضی از منابع پیشنهاد شده است که این کار را به عنوان بخشی از جلسه ی شروع پروژه در نظر بگیرید. ولی تجربه نشان داده است که این کار به اندازه ی برخی دیگر از فعالیت های گروهی جالب و سرگرم کننده نیست و می تواند از انرژی تیم بکاهد. در نتیجه شاید بهتر باشد این کار را به صورت جداگانه و طی چند مرحله انجام دهید.
سپس این مستند را به صورت الکترونیکی و فیزیکی در اختیار کارکنان قرار دهید تا اهمیت زیاد آن برای همه مشخص شود. همچنین همیشه با آن به عنوان یک سند زنده رفتار کنید به این معنی که در فواصل منظم به آن مراجعه کرده و آن را به روز نگه دارید. توجه داشته باشید ارائه ی نسخه ی الکترونیکی به کارکنان، احتمال مراجعه به آن را افزایش می دهد.
همانطور که پیش تر گفته شد تعریف خوب از DoD سندی زنده، قابل مشاهده و مشارکتی است. علاوه بر این در تهیه ی این سند به موارد زیر نیز توجه داشته باشید:
· روشن و واضح بودن: مستند را به زبان ساده بنویسید تا همه توانایی درک آن را داشته باشند و هیچ ابهامی در آن وجود نداشته باشد.
· مختصر بودن: اگر موارد کوتاه و کم باشند همه می توانند آنها را به خاطر بسپارند.
· واقع بینانه بودن: آنچه را که واقعاً می خواهید انجام دهید و در توانایی شما هست ثبت کنید، نه آرزوهای خود را.
علت نوشتن مستند Definition of Done چیست؟
این مستند تضمین می کند که همه ی اعضای تیم از هر آن چه که تیم ارائه خواهد داد مطلع هستند. این شفافیت و هماهنگی، کیفیت را برای محصول و هدف سازمان تضمین می کند. وجود این مستند سرعت تیم را بیشتر می کند و باعث می شود زمان پایان کار مشخص شده و محصول به موقع تحویل داده شود. همچنین محصول با کیفیت تری ارائه خواهد شد.
جمع بندی
Definition of Done باعث ایجاد اعتماد در سراسر تیم و کل سازمان می شود. یک دیدگاه مشترک، کلی و صادقانه از نرم افزار با کیفیت، همه افراد سازمان را در یک مسیر قرار داده و از ایجاد ابهام در مورد محصول نهایی جلوگیری می کند. همچنین به عملکرد سازمان یا تیم در ایجاد یک محصول با کیفیت و استاندارد سرعت می بخشد. با توجه به دلایل گفته شده، مدیران محصول باید به تعریف Definition of Done اهمیت دهند.
منابع