برنامه نویسی مفرط یا افراطی که معمولا به اختصار XP نامیده می شود، توسط Kent Beck در دهه 1990 میلادی ارائه شد. کن بک که یکی از امضا کنندگان مانفیفست چابک نیز می باشد، XP را اینگونه معرفی می نماید:
برنامه نویسی مفرط رشته ای از توسعه نرم افزاری بر اساس ارزش هایی مانند سهولت، ارتباطات، بازخورد، شهامت و احترام است.
برنامه نویسی مفرط بعنوان یک متدولوژی توسعه نرم افزار کم حجم توصیف می شود که با هدف ارائه نرم افزار با کیفیت و سودمند، افراد را سازمان دهی می نماید.
متدولوژی XP که مخفف عبارت Extreme Programming میباشد، شامل نوشتن تستهای واحد قبل از برنامه نویسی و نگه داشتن همه تستها در همه زمانها است. تستهای واحد به صورت خودکار انجام میشوند و نقص را زود برطرف میکنند. بنابراین هزینهها را کاهش میدهد. از طرفی شروع کار با یک طراحی ساده و به اندازه برای کدگذاری که دارای ویژگیهای موجود و طراحی مجدد در صورت لزوم باشد، خواهد بود.
در این روش برنامهنویسی به صورت جفت یا دونفره (Pair Programming)، با دو برنامهنویس در یک صفحه، طرحریزی میشود. در حالی که یکی از آنها در حال کار است، دیگری دائماً بررسی میکند و ورودیهایی را فراهم میکند. همچنبن در حین روز این جفت برنامه نویس با هم جا به جا می شوند و در حین Iteration جفت برنامه نویس ها دائمه تغییر می یابند که این امر به یادگیری پایدار در تیم کمک خواهد نمود.
از دیگر موارد مهم این متدولوژی:
1- یکپارچهسازی و آزمایش کل سیستم چندین بار در روز
2- وارد کردن حداقل سیستم کاری در سرعت تولید و ارتقا آن هر زمان که لازم باشد
3- ارتباط مداوم با مشتری و گرفتن بازخورد
4- تسهیل تغییرات سازگار با تکرار همزمان با تکامل نرم افزار با تغییر نیازمندیها
نقش ها در متدولوژی XP:
در این متدولوژی همانند اسکرام کل تیم به عنوان یک نقش در نظر گرفته می شود. از جمله مهمترین نقش ها در این متدولوژی عبارتند از:
1- مربی XP
2- مشتریان در دسترس
3- برنامه نویس
3- آزمون گر
4- ردیاب XP
5- حامی مالی
متدولوژی XP شامل 12 عملیات اصلی می باشد که در مقالات بعدی به تشریح آن خواهیم پرداخت.
چابک باشید.