موضوع مقاله: مدیریت پروژه نرم‌افزاری | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # مدیریت پروژه نرم‌افزاری | مقدمه: مدیریت پروژه نرم‌افزاری هنر و دانش برنامه‌ریزی و رهبری پروژه‌های نرم‌افزاری است. | ## بخش 1: مدیریت پروژه نرم‌افزاری | مدیریت پروژه نرم‌افزاری شاخه‌ای از مدیریت پروژه است که با دانش تولید نرم‌افزار درهم آمیخته‌است و در حقیقت زیرمجموعه مهندسی نرم‌افزار به شمار می‌رود. تاریخچه تاریخچه مدیریت پروژه‌های نرم‌افزاری با تاریخچه تولید نرم‌افزار در هم آمیخته‌است. اما با معرفی مفهوم برنامه‌نویسی شیءگرا در سال ۱۹۶۰ (میلادی) برنامه‌نویسی با این رویکرد مورد استقبال شرکت‌های توسعه نرم‌افزار قرار گرفت و در دهه‌های ۱۹۷۰ و ۱۹۸۰ روند تولید و توسعه نرم‌افزار رشد سریعی را تجربه کرد. در این زمان، شرکت‌های تولیدکننده نرم‌افزار تلاش می‌کردند تا با استفاده از روش‌های کلاسیک مدیریتی، پروژه‌های نرم‌افزاری را رهبری کنند. اما به زودی و با کند شدن سرعت تولید نرم‌افزار و بروز مشکلات جدی در آزمایش و نیز تغییرات به‌وجود آمده در نیازمندی‌های مشتریان مشخص شد که روش‌های سنتی مدیریت پروژه برای رهبری تیم‌های نرم‌افزاری مناسب نیست. پس از آن، طرح اجرایی پروژه برای تشریح وظایف سطوح مدیریت عالی و میانی تدوین می‌شود. | ## بخش 2: مدیریت پروژه نرم‌افزاری | شرح وظایف مدیر پروژه نرم افزاری مدیر پروژه باید ضمن مشخص کردن اهداف، برای پیشرفت طرحِ در حال برنامه نویسی و به نتیجه رسیدن آن در بازه زمانی مورد نظر، در تلاش باشد. این متخصص، همچنین مشخص کردن وظایف کارکنان و نظارت دقیق بر روند عملکرد و پیشرفت آن‌ها را به عنوان بخش دیگری از وظایف خود، در دستور کار قرار می‌دهد. گزینش و انتخاب برنامه نویسان مناسب، مجرب و متعهد برای تیم کاری، از دیگر وظایف حساس او محسوب می‌شود زیرا میان کیفیت کار اعضای تیم با کیفیت محصول نهایی ارتباط مستقیم وجود دارد. او همچنین باید بعد از برنامه ریزی دقیق برای اهداف اولیه و نهایی پروژه، به مشخص کردن هزینه و تعیین بودجه لازم و ابلاغ آن به کارفرمای خود اقدام کند. اطمینان از روند پیشروی به موقع پروژه مطابق با بودجه، از دیگر فعالیت‌هایی است که مدیریت باید بر آن نظارت داشته باشد. ایجاد هماهنگی و تعادل در عملکرد بین تمام اعضای توسعه برنامه نویسی و نظارت مستمر بر فعالیت آن‌ها از سایر وظایف این نیروی متخصص محسوب می‌شود. | ## بخش 3: مدیریت پروژه نرم‌افزاری | ارتباط با مشتریان و مدیران، به حداقل رساندن ریسک‌ مدیریت طرح، تشکیل اسناد پروژه و نگهداری از آن‌ها، تست عملکرد طرح با استفاده از تکنیک‌ها و ابزار موجود، ارائه گزارش عملکرد و بازدهی به بخش ریاست، ایجاد انگیزه در بین اعضای تیم، اجرای بدون نقص طرح‌ها، هماهنگی بین اعضای تیم داخلی و کادر بیرونی، مدیریت قوی در توسعه و تحویل نرم افزارها و رسیدگی به مشکلات کاری اعضای گروه از دیگر وظایف مدیر پروژه نرم افزار است. Issue در مهندسی نرم‌افزار، Issue (مشکل) بخشی از کار است که در صورت حل (مانند رفع یک اشکال نرم‌افزاری (باگ)، مستندسازی یک کامپوننت یا تحلیل نیازمندی تازه)، عملکرد سامانه نرم‌افزاری بهبود می‌یاد. این دسته‌بندی معمولاً به صورت زیر است: بحرانی: مشکلات یا کارهای تعریف‌شده در این دسته مواردی هستند که در شیوه عملکرد سامانه تأثیر حیاتی دارند و عدم پاسخگویی به آنها ممکن است باعث به خطر افتادن سامانه شود. میانی: مشکلات و موارد این دسته در رده دوم اهمیت در زمان‌بندی اجرا و پاسخگویی قرار می‌گیرند. پایین: مواردی که در این دسته قرار می‌گیرند از سطح اهمیت پایین‌تری نسبت به دو دسته قبلی قرار می‌گیرند. باید توجه داشت که انباشته شدن و عدم پاسخگویی به موارد کم‌اهمیت ممکن است سامانه را با یک خطر بحرانی مواجه کند. | ## جمع‌بندی | در بسیاری از شرکت‌های نرم‌افزاری وظیفه استخراج و دسته‌بندی مشکلات نرم‌افزاری بر عهده تیم یا مسئول تضمین کیفیت است.