توسعه نرم افزاری چابک

ارسال شده توسط: dapnaadmin دیدگاه : 0 دیدگاه

وسعه نرم‌افزاری چابک یا Agile زمانی مطرح شد که بسیاری از پروژه‌های نرم افزاری یا تولید محصول با شکست مواجه می‌شدند. زمانبندی نا مناسب، کیفیت پایین در تولید نرم افزار، عدم ارتباط با مشتری، تحلیل نادرست نیازمندی‌ها، عدم بررسی کافی نرم افزار، از عمده‌ترین دلایل شکست پروژه‌های نرم افزاری بود.

در فوریه سال ۲۰۰۱، گروهی از توسعه‌دهنده نرم‌افزار دور هم جمع شدند تا تجربیات خود را از علل ناکامی پروژه‌های نرم افزاری به اشتراک بگذارند. آن‌ها معتقد بودند که این صنعت نیازمند یک تغییر اساسی در رویکرد توسعه نرم‎افزار است. آن‌ها برای توصیف رویکردی که اکنون به عنوان «توسعه چابک نرم‌افزار» شناخته می‌شود، مانیفستی برای توسعه چابک نرم‌افزار منتشر کردند که بر ۱۲ اصل استوار است:

۱. بالاترین اولویت، جلب رضایت مشتری با تحویل به موقع و مستمر نرم افزاری ارزشمند است.

۲. استقبال از تغییر نیازمندی‌ها، حتی در اواخر فرآیند توسعه. فرآیندهای چابک، تغییر را در جهت مزیتِ رقابتی مشتری مهار می‌کنند.
۳. تحویل به موقع بخش‏‎هایی از نرم‌افزار قابل استفاده (با فواصل زمانی کوتاه‌تر هفتگی نسبت به ماهانه)
۴. ذی نفعان کسب و کار و توسعه دهنده‌ها می‌بایست به صورت روزانه در طول پروژه با هم کار کنند.
۵. پروژه‌ها به دست افراد باانگیزه سپرده شود، فضا و امکانات لازم به آن‌ها داده شود تا کارها را به‌درستی انجام دهند.
۶. کارآمدترین و موثرترین روش انتقال اطلاعات به تیم توسعه و تبادل آن در میان اعضای تیم، گفتگوی چهره به چهره است.
۷. نرم افزار قابل استفاده، اصلی‌ترین معیار سنجش پیشرفت است.
۸. فرآیندهای چابک توسعه پایدار را ترویج می‌دهند؛ حامیان مالی، توسعه دهندگان و کاربران باید بتوانند سرعت پیشرفت ثابتی را برای مدت نامحدودی حفظ کنند.
۹. توجه مستمر به برتری فنی و طراحی خوب
۱۰. سادگی – هنر به حداکثر رساندن مقدار کار انجام نشده – ضروری است.
۱۱. گروه‌های خودسازمان‌دهی شده.
۱۲. انطباق با تغییرات و محدودیت‌ها به‌طور منظم.

متدولوژی Agile مجموعه روش‌هایی است که باعث می‌شود تا نرم‌افزار تولیدشده کاملاً با نیازهای مشتریان مطابقت داشته باشد. در این روش محصول به‌صورت فازبندی به مشتری تحویل داده می‌شود. درواقع مشتری با گروه پروژه کاملاً در ارتباط است. از دیدگاه این متدولوژی، مشتری یکی از مهم‌ترین افراد در تولید پروژه است، چراکه پروژه برای مشتری است و تنها کسی است که از نیازمندی‌های واقعی نرم‌افزار مطلع است. درنهایت باید گفت که محصول نهایی دقیقاً همان چیزی خواهد بود که مدنظر اوست.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *