انواع روش های مدیریت پروژه در توسعه نرم افزار

مدیریت پروژه و روش های آن چیست؟بکارگیری دانش، مهارت ها، ابزارها و تکنیک ها در فعالیت های پروژه جهت رسیدن به اهداف پروژه، بهترین معرفی برای مدیریت پروژه است. بسیاری از کسب و کارها از طریق تکمیل پروژه ها به اهداف خود دست می یابند. معمولا در پروژه ها با محدودیت زمان، بودجه و چالش های مدیریت منابع انسانی رو به رو هستیم. مدیران پروژه، لازم است تمام این عوامل را شناسایی، کنترل و مدیریت کرده و هنگام نیاز، اقدامات اصلاحی را انجام دهند.مهارت های تصمیم گیری در کسب و کار، مهارت های حل مسئله ، ابزارهای خلاقیت و خلق مدل کسب و کار از جمله مواردی هستند که با مدیریت پروژه و دستیابی به اهداف پروژه ارتباط تنگاتنگ دارند.روش های مدیریت پروژهآشنایی با ابزارها، نرم افزارهای مدیریت پروژه و روش های اصلی مدیریت پروژه میتوانند در موفقیت پروژه هایتان مفید واقع شوند.1. مدیریت پروژه بر اساس استاندارد PMBOKیکی از روش های مدیریت پروژه، پمباک (Project Management Body of Knowledge) نام دارد. این روش بر مهارت های متداول مدیریت پروژه مانند بودجه بندی و مدیریت ورودی ها و خروجی ها تمرکز دارد. PMBOK یا همان پمباک اغلب در ایالت متحده مورد استفاده قرار میگیرد.­­­مزایای مدیریت پروژه بر اساس استانداردPMBOK :دستیابی به اهداف کسب و کار سازمانبرآورده کردن انتظارات ذینفعانافزایش شانس موفقیت سازمانتحویل محصول مناسب در زمان مناسبحل کردن مسائل و مشکلات سازمانپاسخ دادن به موقع به ریسک هابهینه سازی استفاده از منابع سازمانایجاد توازن بین محدودیت های پروژه2. مدیریت پروژه بر اساس استاندارد PRINCE2مورد دیگر"PRINCE2" نام دارد که به معنی پروژه ها در محیط کنترل شده میباشد. این رویکرد معتبر به طور گسترده در ایالت متحده و سایر کشورهای انگلیسی زبان مورد استفاده قرار میگیرد و جهت تعیین نقش افراد، حفظ خطوط ارتباطی باز، مدیریت خطرات پروژه و تعیین هزینه های پایه به کار میرود.برخی از مزایای بکـارگیری PRINCE2 بـرای مـدیران و سهامداران پروژه عبارتند از:شروع، پیشروی و پایان کنترل شده پروژهبازنگری منظم در پیشرفت پروژه و میـزان انطبـاق آن با برنامه و نمونه تجاری از پیش تعریف شدهدارا بودن نقاط تصمیم گیری قابل انعطافمدیریت و کنترل اتوماتیک انحرافات از برنامهقراردادن سهامداران و مدیران پروژه در یک موقعیـت زمانی و مکانی صحیحایجاد کانال ارتباطی صحیح ما بـین پـروژه، مـدیریت پروژه و اجرای آن3. مدیریت پروژه بر اساس استاندارد APMیا اجایل یا چابکروش محبوب دیگر در مدیریت پروژه (APM- Agile Project Management) نام دارد. این روش اغلب برای پروژه هایی در محیط های پیچیده و درحال تغییر به خوبی کارساز است. چراکه این امکان را برای افراد فراهم میکند تا واکنش منعطفی را در مقابل الزامات و نیازهای در حال تغییر داشته باشند.مزایای مدیریت پروژه APM· نرم افزار سریعتر نصب و راه اندازی می شود بنابراین مشتری شما ارزش محصول را زودتر دریافت می کند.· منابع کمتری به هدر می دهید چرا که همیشه بر روی وظایف به روز کار می کنید· با تغییرات بهتر تطابق پیدا می کنید و سریع تر به آنها پاسخ می دهید.· زمان برگشت های سریع تر و انعطاف پذیری بیشتری دارید.· مشکلات و نقص های نرم افزار را سریعتر شناسایی و برطرف می کنید.· زمان کمتری را صرف بوروکراسی سازمانی و چنین کارهای بی معنایی می کنید.· یک اجتماع بزرگ استفاده گنندگان از مدیریت چابک وجود دارد که شما می توانید با آنها به تسهیم دانش بپردازید.· می توانید بازخوردهای فوری از نتایج کار خود دریافت کنید که این امر باعث بهبود روحیه تیمی نیز می شود.· توسعه دهندگان با استفاده از بازخورد تضمین کیفیت (QA feedback) می توانند توانایی کد زدن خود را بهبود بخشند.· نیازی نیست نگران بهینه سازی های قبل از موعد باشید.· می توانید ایده هایی که حین کار به ذهنتان می رسد را آزمایش کنید چرا که هزینه ی این کار بسیار کم است.معایب مدیریت پروژه APMبا این حال که مدیریت APM مزایای بسیاری دارد اما آگاهی از محدودیت ها و ریسک هایی که به همراه دارد نیز بسیار مهم است. در ادامه چند مورد از این دست را برشمردیم:• فرآیند مستند سازی اطلاعات در مدیریت به سبک اجایل به حاشیه کشانده می شود که این امر هماهنگی و انطباق اعضای جدید با گروه را مشکل می کند.• اندازه گیری میزان پیشزفت کار در مدیریت چابک بسیار دشوارتر از مدیریت آبشاری است چرا که پیشرفت پروژه در دل چندین چرخه صورت می گیرد.• مدیریت اجایل نیازمند گرفتن زمان و انرژی بیشتری از همه ی اعضای درگیر در پروژه است چرا که توسعه دهندگان و مشتریان باید به طور دائم با یکدیگر تعامل داشته باشند.• وقتی کار تیم توسعه دهنده تمام می شود آنها نمی توانند درگیر پروژه دیگری شوند. چرا که به زودی حضور آنها در تیم نیاز می شود.• پروژه ها می توانند تا ابد ادامه پیدا کنند چرا که هیچ خزش دامنه مشخص و محدوده خاصی برای ویژگی های محصول وجود ندارد.• مشتریانی که بودجه و فهرست مشخص و از پیش تعیین شده ای برای پروژه خود در نظر گرفته اند نمی توانند متوجه شوند پروژه در نهایت چقدر برایشان هزینه خواهد داشت که این امر چرخه فروش را دشوار خواهد کرد.(اینکه برای دانستن هزینه واقعی پروژه باید تا پایان آن صبر کرد چیزی نیست که مشتریان از شنیدن آن خوششان بیاید.• محصولات به طور کلی از لحاظ تجربه کاربری و طراحی دارای نقصهایی هستند که منجر به این می شود که شما بیشتر بر روی محصول کار کنید• ممکن است تیم برای تحویل عملکرد های جدید به حاشیه کشیده شود و این امر به قیمت قصور فنی (technical debt) در پروژه شما و افزایش مقدار کار برنامه ریزی نشده تمام می شود.• امکاناتی(features) که قابل برنامه ریزی دریک یا حتی چند چرخه مدیریت چابک نباشند اصلا اجرا نمی شوند چرا که قابل انطباق با ماهیت مدیریت اجایل نیستند.• شما نیازمند یک دیدگاه بلند مدت برای محصول خود هستید و به طور فعال باید ارتباط برقرار کردن با آن کار کنید.• محصولات پیوستگی ندارند و تجربه کاربر از محصول نیز به صورت تقسیم شده و تکه تکه است چرا که طراحی محصول و تکمیل هر یک از ویژگی ها به صورت تقسیم شده است. هر چه زمان تولید محصول بیشتر باشد بخش های نرم افزار پیوستگی کمتری دارند.• چرخه های کوتاه مدت زمان زیادی برای فرآیند تفکر در مورد طراحی محصول باقی نمی گذارند بنابراین توسعه دهندگان باید براساس بازخوردخای منفی و تجربه بارها و بارها به توسعه مجدد بپردازند.