Ми у Facebook
20.11.2017, 13:18

Екстремальне програмування (XP), його принципи

Розбираємося в понятті “екстремальне програмування”: що це, з якою метою це використовують, чому програмування називають “екстремальним” та які його принципи.
Екстремальне програмування (від англ. Extreme Programming, або XP) - це спрощена організація виготування програм для невеликих чи середніх за розміром компаній розробників, які займаються розробкою продукту в умовах нечітких та постійно змінних умовах.

“Але навіщо?”, - спитаєте Ви. Навіщо наголошувати на змінах у ситуаціях, які можуть супроводжувати процес розробки? Відповідь проста. Наш світ занадто непередбачений та нестійкий, тому покладатися на постійність ситуації аж ніяк не варто. Те саме можна й віднести до процесу розробки програмного забезпечення: у занадто рідких випадках можна сказати про систему, що її остаточний варіант був наперед відомий у найменших деталях ще на безпосередньому початку розробки. Зазвичай у процесі виготування програмного продукту замовник ще безліч разів наполягатиме на деяких змінах: щось додати, щось викреслити, прибрати, на чомусь зробити акцент тощо. На щастя, людина здатна прогнозувати схожі вимоги, отже, може тримати ситуацію під контролем та вчасно реагувати на зміну ситуацій.

Серед основних цілей XP виділяють такі, як підвищення довіри замовника до програмної продукції, що досягають шляхом показу реального доведення успішності розвитку процесу обробки та значне скорочення термінів розробки безпосередньо цього продукту. Варто також зазначити, що методологія екстремального програмування передбачає мінімізацію помилок уже на ранніх стадіях розробки програми, що сприяє швидкому розвитку створюваної продукції та дозволяє прогнозувати роботу. Переважна більшість прийомів XP зорієнтована на підвищення якості програмної продукції.

Серед основних принципів XP виділяють такі:

- ітеративність (розробка короткими ітераціями, від 1-2 тижнів до місяця, за умови активної комунікації із замовником);

- прості робочі рішення (реліз мінімального набору головних функцій системи на кожній ітерації; функційність на кожній І. піддається розширенню);

- розробка невеликими групами чи парами, інтенсивна розробка (під поняттям “малими групами” мають на увазі не більше десяти осіб; у випадку парного програмування два спеціаліста створюють код на одному робочому місці. Використовують open-простір для роботи з метою надання можливості підтримувати комунікацію й мати доступ усіх та до всіх);

- зворотній зв'язок із замовником;

- збори й обговорення проблем, що виникають у процесі розробки (а також обговорення шляхів усунення цих проблем із метою посилення концентрації команди. Зібрання короткі, що не вимагає від робітників витрат за часом, а також не змушує їх обговорювати не цікаві їм теми. Краще робити одне коротке зібрання, аніж багато довгих, як це зазвичай відбувається у типових командах);

- бажання йти на ризик, сміливість під час розробки.

Більше інформації про XP можна прочитати в блозі на сайті Worksection.





На правах реклами