Съдържание:
Определение - Какво означава екстремно програмиране (XP)?
Extreme Programming (XP) е интензивна, дисциплинирана и гъвкава методология за разработка на софтуер, фокусирана върху кодирането във всеки етап от жизнения цикъл на разработката на софтуер (SDLC). Тези етапи са: Непрекъсната интеграция за откриване и поправяне на проблеми в началото на процеса на развитие на участието на клиентите и бърза обратна връзка Тези дисциплини на методологията на XP са извлечени от следните четири ключови стойности на Kent Beck, създател на XP: Комуникация: Трябва да се осъществи комуникация между членовете на екипа и клиентите. често и водят до открита дискусия на проекта, без да се страхуват от репресия. Простота: Това включва използване на най-простия дизайн, технология, алгоритми и техники, за да се задоволят нуждите на клиента за текущата итерация на проекта. Обратна връзка: Обратната информация трябва да бъде получена на множество, различни нива, например единични тестове, преглед на код и интеграция. Кураж: Изпълнявайте трудни, но задължителни решения.
Techopedia обяснява екстремно програмиране (XP)
В допълнение към ключовите стойности, прилагането на методологията на XP изисква и подкрепата на трите принципа на постепенна промяна, обхващаща промените и качествена работа. Трябва да се спазват и дванадесет ключови практики: Някои практикуващи традиционна методология критикуват XP като „нереален“ процес, предизвикващ безразсъдно кодиране. Няколко традиционни разработчици на софтуер намират XP за гъвкав с ниска функционалност и малък творчески потенциал. Допълнителни критики са, че XP: няма структура. Липсва съществена документация. Няма ясни резултати, т.е. реалистичните оценки са трудни, тъй като целият обхват на проектното изискване не е дефиниран напълно. (Тази липса на подробни изисквания прави XP силно предразположен към пълзящо действие.) Необходими са културни промени за приемане. (Може да работи само за старши разработчици) Скъпо струва, т.е. изисква честа комуникация / среща за сметка на клиента, което може да доведе до трудни преговори. Възможна е неефективност от чести промени в кода в рамките на различни итерации. Разбира се, както при всяка методология за развитие, всичко това е много субективно и зависи от личните предпочитания.