Екстремальне програмування

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Цикл розробки
програмного забезпечення
Coding Shots Annual Plan high res-5.jpg
Програміст за роботою
Діяльність та кроки
Вимоги ·  Специфікація
Архітектура ·  Дизайн
Реалізація ·  Тестування
Розгортання ·  Підтримка
Методології
Гнучка ·  Чистого приміщення
DSDM ·  Iterative ·  RAD ·  RUP
Spiral ·  Водоспад ·  XP ·  Scrum
Lean ·  V-Model ·  FDD ·  TDD
Допоміжні дисципліни
Конфігураційне керування
Документування
Якість ПЗ
Управління проектами
Досвід користування
Інструменти
Компілятор ·  Зневаджувач
Профілювальник
GUI designer ·  IDE
Див. також
Стадії розробки програмного забезпечення


Екстремальне програмування (XP від англ. Extreme Programming) — методологія розробки програмного забезпечення, найпопулярніша серед так званих гнучких методологій.

Історія[ред.ред. код]

Технологія екстремального програмування була розроблена Кентом Беком, Уардом Каннінґхемом та Роном Джеффріесом під час роботи над Chrysler Comprehensive Compensation System (C3). У 1996 Кент Бек став лідером проекту і почав вдосконалювати методи розробки, що застосовувалися в роботі над проектом. Свій метод він виклав у книзі «Extreme Programming Explained», котру було видано у жовтні 1999. Після купівлі Крайслера компанією Даймлер-Бенц проект C3 було скасовано у лютому 2000

Мета ХР[ред.ред. код]

Посібник Extreme Programming Explained: Embrace Change описує Екстремальне Програмування, як:

  • Спроба примирити гуманність і продуктивність
  • Механізм для соціальної зміни
  • Шлях до удосконалення
  • Стиль розвитку
  • Дисципліна розробки програмного забезпечення

Головною метою Екстремального Програмування є скорочення вартості неочікуваних змін. У традиційних методах розробки (на кшталт SSADM) вимоги до розвитку системи визначаються на початку роботи над проектом, і часто виправляються пізніше. Це означає, що вартість проекту через зміни буде більшою за заплановану (традиційна особливість для програмного забезпечення, що проектується).

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

Основні прийоми XP[ред.ред. код]

Дванадцять основних прийомів екстремального програмування (за першим виданням книги Extreme programming explained) можуть бути об'єднані в чотири групи:

  • Короткий цикл зворотного зв'язку (Fine scale feedback)
  • Безперервний, а не пакетний процес
  • Розуміння, що поділяється всіма учасниками
    • Простота (Simple design)
    • Метафора системи (System metaphor)
    • Колективне володіння кодом (Collective code ownership) або обраними шаблонами проектування (Collective patterns ownership)
    • Стандарт кодування (Coding standard or Coding conventions)
  • Соціальна захищеність програміста (Programmer welfare) :
    • 40-годинний робочий тиждень (Sustainable pace, Forty hour week)

Див. також[ред.ред. код]