امروزه در بسیاری از پروژههای نرمافزاری موفق از متدولوژی چابک (Agile) برای مدیریت پروژهها استفاده میشود. مدیریت پروژه چابک یکی از جدیدترین راهبردهای مدیریت پروژه است که بیشترین کاربرد آن در پروژههای توسعهی نرمافزار است.
در طی زمان، برای توسعهی این متدولوژیها چارچوبهای مختلفی تعریف شده که از محبوبترینِ آنها چارچوب اسکرام و روش کانبان است. اسپرینت هم در واقع هستهی اصلی اسکرام است. به بیان ساده، اسپرینت امکانی است برای استفادهی حداکثری اعضای تیم از «زمان»، به شکلی که بتوانند با همکاری و تعامل بیشتر، کارها را در زمانبندی تعریفشده به سرانجام برسانند.
به علت اهمیت بالای مدیریت پروژه چابک و کاربرد آن در سازمانهای فناوری اطلاعات، ما در این سری از مقالات ابزار، قصد داریم شما را با مفاهیم اسکرام، اسپرینت و تخته کانبان که مهمترین چارچوبها و روشهای مدیریت پروژه چابک هستند، آشنا کنیم. در ادامه نیز، به کاربرد این روشها در POB و امکاناتی که نرمافزار POB در اختیار کاربرانش قرار میدهد، میپردازیم.
اما، پیش از پرداختن به هریک از مفاهیم فوق، لازم است اشاره کنیم که چارچوب اسکرام و روش کانبان گرچه در ظاهر دو روش متفاوت برای مدیریت پروژه چابک هستند، اما میشود آنها را با یکدیگر ترکیب کرد. چنین امکانی به شما اجازه میدهد نقایص احتمالی یک روش را با مزایای روش دیگر پوشش دهید و بیشترین بهره را از تلفیق هر دو روش ببرید.
یک روش این کار، مدیریت اسپرینتها به کمک تخته کانبان است. این امکان را نرمافزارهایی در اختیار شما قرار میدهند که انعطافپذیری و سرعت از ویژگیهای بارزشان است. در چنین نرمافزارهایی میتوانید از مجموعهای از روشهای مؤثر برای مدیریت پروژه، در کنار یکدیگر، استفاده کنید و بهرهوری تیمتان را با مدیریت پروژه چابک به حداکثر برسانید.
اسکرام چیست؟
اسکرام یکی از پرکاربردترین چارچوبهای مدیریت پروژه چابک است که به ساخت، ارائه، توسعه و نگهداری محصولات پیچیده کمک میکند. درواقع، اسکرام یک چارچوب چابک برای حل موضوعات پیچیده است؛ موضوعاتی که دانش ما دربارهی آنها کافی و جامع نیست و فقط با گذر زمان و بر اثر تجربه، میتوانیم آن دانش را کامل و کاملتر کنیم. بنابراین، میشود گفت اساس این چارچوب بر نظریهی «تجربهگرایی» بنا شده است: نظریهای که دانش را حاصل تجربه میداند.
اصطلاح اسکرام را نخستین بار دو ژاپنی به نامهای هیروتاکا تاکوچی و ایکوجیرو نوناکا، در سال 1986، برای توسعهی محصول ـ در معنای کلی آن ـ به کار گرفتند. چند سال بعد، در دههی 1990، کن شوئبر و جف استرلند رسماً آن را به عنوان چارچوبی برای تولید و توسعهی محصولات نرمافزاری معرفی کردند.
کِن شوئبر جزو آن دسته از افرادی است که معتقد است اسکرام یک متودولوژی نیست، بلکه چارچوبی است که کار گروهی را در افراد تقویت میکند، سرعت میبخشد، خطاها را کاهش میدهد و به انتشار محصولی بهتر با سرعت بیشتر و بهرهوری بالاتر کمک میکند.
در اسکرام، برای بهبود پیشبینیپذیری و کاهش ریسکها از یک روش چرخشی، افزایشی استفاده میشود.
ارکان اسکرام
اسکرام دارای سه ویژگی اساسی که درواقع پایههای این بنا هستند:
- شفافیت (Transparency): افرادی که مسئول نتایج هستند باید بتوانند جنبههای مختلف فرآیند را واضح و شفاف مشاهده کنند. بنابراین، باید استاندارد مشترکی وجود داشته باشد تا همهی افراد از مشاهداتشان درک مشترکی داشته باشند.
- بازرسی (Inspection): کاربران، برای شناسایی ناسازگاریهای احتمالی، باید بتوانند پیوسته پیشرفت کار را در هر اسپرینت، در مقایسه با هدفِ آن اسپرینت، بازرسی کنند.
- سازگاری (Adaptation): چنانچه در مرحلهی بازرسی، جنبههایی از فرآیند همسو با اهداف نباشد و ادامهی آن روند غیرممکن باشد، باید آن فرآیند یا فرآیندها را در سریعترین زمان ممکن اصلاح کرد.
رویدادهای اسکرام
در اسکرام، چهار رویداد برای بازرسی و سازگاری در نظر گرفته شده است:
- برنامهریزی اسپرینت: در یک جلسهی برنامهریزی اسپرینت، با تعامل و همکاری بین اعضای تیم، برای کاری که باید در طی یک اسپرینت انجام شود برنامهریزی میشود.
- اسکرام روزانه: این یک رویداد روزانه است. به این صورت که تیم توسعه هر روز 15 دقیقه از وقت خود را صرف بازبینی کارهای انجامشده و برنامهریزی برای کارهای 24 ساعت آینده میکند.
- بازبینی اسپرینت: در انتهای هر اسپرینت، تیم اسکرام و ذینفعان در مورد کارهای انجامشده در اسپرینت با یکدیگر صحبت میکنند و در صورت نیاز، در مورد اصلاح و تعدیل آن تصمیمگیری میکنند.
- بازاندیشی اسپرینت: این مرحله پس از بازبینی اسپرینت قبلی و پیش از برنامهریزی برای اسپرینت بعدی انجام میشود. بنابراین این یک رویداد ماهانه است که طی آن، اعضای تیم عملکردِ خود و نتیجهی نهایی را بازرسی میکنند.
ارزشهای اسکرام
ارزشهای اسکرام که در تصویر زیر توضیح داده شده، عبارتاند از: شجاعت، تمرکز، تعهد، احترام و باز بودن. یک تیم اسکرام موفق تیمی است که بتواند ارزشهای فوق را به کار بگیرد و در تکتک افراد تیم درونی کند. تحقق همین ارزشهاست که به شفافیت، بازرسی و سازگاری اسکرام کمک کرده و موفقیت پروژه را تضمین میکند.
اسپرینت چیست؟
در مدیریت پروژه چابک به روش اسکرام، از مفهوم توسعه بر اساس تکرار استفاده میشود. یعنی کل زمان لازم برای انجام یک کار به زمانهای کوچکتری تقسیم میشود. هر یک از کارهایی که در هر مرحله از این زمانهای خُردشده انجام میشوند، بخشی از کار پروژه را جلو میبرند و تکمیل میکنند، اما شبیه یکدیگر هستند و گرچه هر تکرار در مقایسه با تکرار قبلی کاملتر است، باز هم میشود آنها را تکرار یکدیگر دانست. در اسکرام به هریک از این تکرارها، یک انتشار (Release) میگویند. این مرحلهی انتشار معمولاً یک بازهی زمانی طولانی مدت است. اما تقسیم زمانی دیگری هم در اسکرام وجود دارد که کوچکتر از بازههای انتشار است و به آن اسپرینت گفته میشود.
اسپرینتها که درواقع هستهی اصلی اسکرام هستند، به دورههای زمانی تکرارشوندهای در اسکرام گفته میشود که طی آنها، موضوع یا مشکلی، در فرآیند زمانی مشخصی، بررسی و حل میشود. به بیان ساده، اسپرینت امکانی برای استفادهی حداکثری از زمان است.
هر اسپرینت مانند یک جعبهی زمانیِ نهایتاً یکماهه است که در طی این مدت، کاری «تکمیل میشود». همچنین، هر اسپرینت بلافاصله پس از خاتمهی اسپرینت قبلی آغاز میشود.
در طی هر اسپرینت:
- هیچ تغییری که بخواهد هدف اسپرینت را به خطر بیاندازد صورت نمیگیرد.
- اهداف کیفی کاهش نمییابند.
- با دریافت اطلاعات بیشتر، مالک محصول و تیم توسعه ممکن است در مورد دامنه (Scope) مجدداً مذاکره کنند.
هر اسپرینت را میتوان یک پروژه در یک بازهی زمانی حداکثر یکماهه در نظر گرفت. بنابراین، مانند هر پروژهی دیگری، در هر اسپرینت هم باید کاری به سرانجام برسد و تکمیل شود.
اسپرینتها به مدت زمان یک ماه تقویمی محدود هستند. اگر مدت زمان یک اسپرینت بیش از حد طولانی شود، ممکن است تعریف آنچه که در حال ساخته شدن است تغییر کند و پیچیدگی و ریسک پروژه بالا برود. اسپرینتها، با تضمین بازرسی و سازگاری فرآیند با اهداف تعیینشدهی اسپرینت، قابلیت پیشبینیپذیری را افزایش میدهند. همچنین، هزینهی ریسک را به یک ماه تقویمی محدود میکنند.
روش کانبان چیست؟
یک مشکل رایج بین تیمهای پروژههای مختلف، عدم کارآیی است. موضوع این است که در بیشتر مواقع، هیچ بینش مشخصی دربارهی کاری که تیم انجام میدهد، وجود ندارد و دقیقاً معلوم نیست که چه چیزی بهرهوری آنها را پایین آورده است.
با استفاده از روش کانبان میتوانید مشخص کنید که تیم شما باید روند بهبود را دقیقاً از کجا آغاز کند. به این ترتیب، روش کانبان کارآیی شما و تیمتان را بیش از همیشه افزایش میدهد و میتواند شرایط را به نفع شما تغییر بدهد.
در ادامه، پس از توضیح چیستی تخته کانبان، به بررسی برخی اصول اولیه و جزئیات مهمی میپردازیم که شناخت آنها برای شما ضروری است.
معرفی تخته کانبان
تخته کانبان (Kanban Board) ابزاری برای تصویرسازی گردش کار و یکی از مؤلفههای اصلی روش کانبان در مدیریت پروژه چابک است.
تخته کانبان سفر دور و درازی را طی کرده تا به آنچه که امروز در اختیار ماست تبدیل شده است. واژهی «کانبان» ترکیبی از دو واژهی ژاپنی KAN به معنی «تصویری» و BAN به معنی «کارت» یا «تخته» است. اما استفاده از این اصطلاح، در حکم یک سیستم برنامهریزی تصویری در مدیریت پروژه، به سال 1940 و شرکت تویوتا برمیگردد. درواقع، شرکت تویوتا نخستین شرکتی بود که از روش کانبان در سیستم تولید محصول خود استفاده کرد.
چند دهه بعد، در سال 2007، دیوید اندرسون این ایده را توسعه داد. اندرسون روش کانبان را فرموله کرد و تخته کانبان را تدوین و به همگان معرفی کرد. البته خالی از لطف نیست که بدانید نخستین کسی که پیشنهاد کرد گردش کار را روی یک تختهی سفید تجسم کنیم همکار اندرسون، دَرِن دیویس، بود.
به این ترتیب، تختهی کانبان متولد شد و چنانکه امروز میبینیم به یکی از مفیدترین ابزارهای مدیریت پروژه چابک بدل شده است.
اجزای اصلی تخته کانبان
- کارتهای کانبان: این کارتها وظیفهی نمایش بصری وظایف و کارها را برعهده دارند. یعنی، روی هر کارت اطلاعاتی دربارهی وظیفهی مربوطه و وضعیتش (مانند مهلت انجام آن کار، فرد موظف، توضیحات و غیره) نوشته میشود.
- ستونهای کانبان: هر ستونِ روی تخته نمایانگر مرحلهی متفاوتی از گردش کار شماست. کارتها تا خاتمهی کامل کار، در گردش کار باقی میمانند.
- محدود کردن کار در حال انجام: آنها حداکثر میزان کار را در مراحل مختلف گردش کار محدود میکنند. با محدود کردن کار در حال انجام، به کمک اعضای تیم برای تمرکز بر روی کارهای فعلی، میشود کارها را سریعتر انجام داد.
- خطوط جداکننده در تخته کانبان: اینها خطوطی افقی هستند که میتوانید برای جدا کردن انواع مختلف فعالیتها، تیمها، نوع خدمات و غیره از آنها استفاده کنید.
اگر در استفاده از این روش تازهکار هستید، میتوانید با یک ساختار ساده کارتان را شروع کنید و آن را به سه بخش اساسی (کارهایی که باید انجام شود، کارهایی که در دست انجام است، کارهای انجامشده) تقسیم کنید که مراحل مختلف گردش کار را نشان میدهند. برای نقشهبرداری دقیقتر از روند خود، میتوانید به اندازهی زیرمجموعههای خود، جزئیات اضافه کنید تا بتوانید گردش کارتان را با حداکثر دقت، پیگیری و تجسم کنید. مثلاً میتوانید یک تخته کانبان با چندین ستون و خطوط جداکننده داشته باشید.
تخته کانبان در POB
چنان که پیشتر در مورد ویژگیهای نرمافزار POB صحبت کردیم، در ادامه نیز خواهید دید که چگونه میتوانید تخته کانبانهایی شامل موارد، کار، پروژه و تغییر، اقلام پیکربندی، صورتحساب، قرارداد و… را در این نرمافزار تعریف کنید. هر یک از این موارد میتوانند با توجه به رویکرد شما در استفاده از ابزار در حوزهی فرآیندهای سازمان، مبین موضوعاتی مانند مدیریت درخواستهای تغییر، مدیریت درخواستهای سرویس، مدیریت بستههای انتشار، ممیزی فرآیندهای متفاوت و غیره باشند.
نسخهی 1.10 نرمافزار POB به شما این قابلیت را میدهد که فهرستی از دادههای هر موجودیت را، در قالب یک تخته کانبانِ مدیریتپذیر و یا تنها نمایشی، ارائه دهید. اما، پیش از هر چیز باید مخاطب تخته کانبان، کارتهای تخته کانبان، ستونها و سطرهای تخته کانبان خود را شناسایی و تعریف کنید.
در بخش دوم این مقاله، هر یک از اجزای فوق را به تفصیل شرح داده و به شما نشان میدهیم که چگونه میتوانید با استفاده از قابلیت تخته کانبان POB، اسپرینتهای خود را به راحتی مدیریت کنید.
اگر به مباحث کاربردی و اخبار فناوری اطلاعات علاقهمندید، یادتان نرود آدرس ایمیلتان را در فوتر سایت (عضویت در خبرنامه) بنویسید تا شما را در جریان آخرین مطالب گروه فناوری پرند قرار دهیم.