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

Розміщені наприкінці 1900-х років концепції розробки програмного забезпечення та програмування помітно змінили спосіб і підхід всієї схеми. Для того, щоб змінити спосіб розробки комп'ютерного програмного забезпечення, застосовувались менші та пакетні підходи, до яких ми наростали та чіткі уніфіковані моделі. Відходи потрібно було зменшити зі збільшенням попиту на ефективні системи, і, таким чином, наступила епоха методологій для ефективної розробки програмного забезпечення. Процедурне програмування незабаром було замінено об'єктно-орієнтованим програмуванням, і модель водоспаду дозволила Agile взяти на себе керівництво. Японські рамки контролю якості незабаром набирали обертів, а потім з'явилася концепція того, що раніше використовувалося в шматочках і шматочках, але тепер стало повноцінною методологією вирішення проблем і програмного забезпечення, екстремальне програмування!

Що таке екстремальне програмування (XP)?

Завдяки значній кількості змін, що побачили світ у клієнтів, Extreme Programming (XP) з'явився полегшенням для організації проектів, що здійснюються фахівцями з програмного забезпечення.

Впровадження екстремального програмування підвищило якість програмного забезпечення та більш ефективно реагувало на мінливі вимоги бізнесу, спричинені масштабуванням бізнесу або зовнішніми чинниками.

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

Екстремальне програмування (XP) є «задоволенням клієнтів» в основі його рамки, а «командна робота» - як сила м'язів. Співпраця є необхідною для успішного програмування (XP), оскільки воно робить ітеративні кроки до створення програмного забезпечення для клієнтів / клієнтів. Він не зосереджений на наданні всього поясу, а дивиться на те, чи задовольняються потреби клієнта на кожному етапі шляху.

Частина розробки Agile Software

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

Завдяки концепціям ітерації та спринту, як у випадку з Scrum, Agile забезпечує чудову платформу для отримання змін та зворотного зв’язку, що реалізуються у кожному циклі розвитку, який проходить повз.

Що стосується екстремального програмування (XP), воно враховує всі можливості, які можуть призвести до покращення продукту в кінці.

Традиційний розвиток проти екстремального програмування (XP)

  • У той час як традиційна розробка залишає фокус на процесі і враховує це, коли справа доходить до завершення циклу, екстремальне програмування фокусується на вимозі.
  • Екстремальне програмування (XP) приймає кращі практики, встановлені в традиційній розробці, і доводить їх до крайніх меж. Розтягнення, проведене за допомогою екстремального програмування (XP), чудово підходить для гнучких та еластичних проектів.
  • Традиційна розробка є сегментацією як попереднім фактором циклів розробки програмного забезпечення, тоді як екстремальне програмування (XP) виступає за співпрацю між командами, а також зацікавленими сторонами за їх постійний зворотній зв'язок та погляди на етапах ітерацій та планування.

5 цінностей для успішного проекту

Екстремальне програмування (XP) включає в себе 5 важливих способів або цінностей спрямованості на успішний програмний проект:

  1. Комунікація - Ця методологія розробки програмного забезпечення, по суті, вимагає тісного спілкування між менеджерами, клієнтами / замовниками та розробниками. Ця ефективна комунікація необхідна для безперебійного функціонування програмного проекту, а інші засоби управління проектами також реалізуються в межах комунікації, щоб вони могли полегшити спілкування протягом подальшого життєвого циклу проекту.
  2. Сміливість - Завдяки різким змінам у вимогах замовника, розробники повинні сміливо виконувати проблеми, які виникають в останню хвилину або суперечать змінам, застосованим до проекту в будь-який момент часу.
  3. Зворотній зв'язок - Зворотний зв'язок реалізується шляхом постійного тестування одиниць, і результати оцінюються та відповідно реалізуються в межах циклів розробки проекту. Клієнтів тримають у близьких приміщеннях, а демонстрація демонструється, як тільки цикл розробки завершиться, щоб можна було включити зворотній зв'язок.
  4. Повага - кожен цикл розвитку приносить свій успіх до нової віхи, і він лише ілюструє внесок, внесений у цикли, здійснені.
  5. Простота - екстремальне програмування (XP) найефективніше, коли дизайн простий, а реалізація запланована чітко та ефективно. Дуже багато екстремального програмування керується своїми простими правилами.

Цикли планування-зворотного зв'язку

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

Ці планування XP створені з трьома рівнями або рівнями.

  • Майбутні місяці
  • Наступна ітерація
  • Поточна ітерація

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

Завдяки плануванню набуває чинності найбільш відповідні конструкції для поставки товару. Що стосується екстремального програмування (XP), тестова розробка (TDD) та рефакторинг використовуються для ефективного та ефективного проектування.

Вже маючи суть Agile, рефакторинг стає важливим і важливим інструментом проектування, що бере участь у процесі планування. Реконструкція передбачає внесення змін до дизайну та коригування відповідно до потреб, які були змінені. З рефакторингом виходить концепція тестування уніфікованим та прийнятним чином.

Наступні кроки займають центральний етап, коли виконується цикл планування або зворотного зв'язку. Кожна дія тут є ітеративною і може виконуватися послідовно, коли ініціюється зміна:

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

  • Кодування до парного програмування - секунди
  • Парне програмування до одиничного тестування - хвилини
  • Тестування одиниць для переговорів щодо пари - години
  • Пара переговорів на засіданні, що проводяться, - один день
  • Засідання на виїзді до тестування прийняття - дні
  • Тестування на прийняття до ітераційного планування - тижні
  • Ітераційне планування до планування випуску - місяці

З тим рівнем ітерації, який домагається, розробники стають обов'язковими для забезпечення та впевненості, що код добре відсортований та має оптимальну якість. Повідомлення про помилки - це чітке значення, яке не існує для розробників, дотримуючись екстремальної методології програмування для розробки програмного забезпечення.

Що таке парне програмування?

Оскільки центральним ресурсом екстремальної методології програмування є люди, а не процеси, саме люди керують концепцією парного програмування. Додаючи в таблицю продуктивність та якість, програмування пар складається приблизно так:

"Код, відправлений у виробництво, створюється двома людьми, які працюють разом над кодом, який потрібно створити, сидячи на одному комп'ютері".

Переваги цієї концепції парного програмування полягають у наступному:

  • Покращена якість програмного забезпечення - хоча у функціональності немає двох людей, які сидять разом або один від одного, концентрація на одному комп’ютері, безумовно, додає до якості наданого коду
  • Немає ефекту від часу на реалізацію - створення безпрограшної ситуації для проекту та його зацікавлених сторін, використання двох функціональних головок для отримання високоякісного коду без втрат часу - чудово для розробки програмного забезпечення
  • Економія витрат на пізніших етапах - коли вже наданий високоякісний код, вплив, який він надає на пізніших етапах, величезний, а вартість, безумовно, заощаджується з кожною ітерацією

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

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

Правила

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

Планування

У процесі планування керівник проекту та його команда ретельно вивчають вимоги та дотримуються таких правил:

  • Історії користувачів потрібно записати вниз
  • Планування випуску повинно спричинити розклад випусків
  • Проект розділений на ітерації
  • Релізи потрібно часті, але невеликі
  • Планування ітерації має розпочати ітерацію

Управління

Управління відведеними завданнями та тривалість кожного конкретного завдання - це роль керівника проекту. Важливо, щоб керівник проекту пам’ятав про ризики та дотримання кожного етапу, який здійснюють члени команди, і відповідно керує робочою силою та ресурсами для виконання концепції екстремального програмування (XP). Ось деякі правила, які потрібно пройти через прем'єр-міністр:

  • Команда повинна отримати відкриту робочу область для розширення своєї фантазії
  • Розроблений графік повинен бути реалістичним та ретельно викладеним
  • Кожен робочий день повинен розпочатися засіданням про стенд
  • Співпраця та робота в команді є основними складовими і потребують максимального заохочення
  • Швидкість проекту повинна вимірюватися під час кожної зміни
  • Люди ніколи не повинні залишатися застояними, і їх слід пересувати
  • Управління крайнім програмуванням (XP) є важливим і важливо розпочати планування при кожній можливості зміни

Проектування

Проектування - це етап, який ретельно слідкує за плануванням і визначає спосіб вирішення вимог на початковому етапі проекту. Хороший дизайн відображає процес мислення та творчість та вимагає меншої кількості ітерацій, таким чином, забезпечуючи високий рівень якості на самому початку проекту. Будучи відображенням етапу планування, ось кілька правил, які слід пам’ятати під час впровадження конструкцій в екстремальному програмуванні (XP):

  • Простота є ключовою
  • Жодна функціональність не повинна бути введена на ранній стадії
  • Реконструкція необхідна на кожному етапі, щоб забезпечити ефективні та ефективні конструкції виробів
  • Рішення Spike можна використовувати для зменшення кількості та інтенсивності ризику для програмного проекту

Кодування

Як тільки дизайн створений, настав час взяти всі руки на палубу і дати цю програму для створення та генерування коду, який увійде у виробництво для тестування та доставки. Кодування виступає як етап, який демонструє фактичне функціонування методології проекту та заохочує ітерацію найбільш ефективно. Ось швидкі правила, про які слід пам’ятати, коли знаходяться на стадії кодування:

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

Тестування

З готовим кодом та прокатуванням код тестування стає печаткою безперебійного функціонування рядків коду. Тестування формується як печатку, щоб гарантувати, що програмне забезпечення готове до споживання. Нижче наведено правила, встановлені для тестування в рамках програми Extreme Programming (XP):

  • Код повинен містити одиничні тести
  • Випуск потребує кодів, щоб пройти ці тестові одиниці
  • Слід створити тести на виявлення помилок
  • Тести приймання повинні мати високу частоту і результати повинні бути опубліковані
  • Користувачі не повинні виявляти помилок у коді

Коли використовувати екстремальне програмування (XP)?

Екстремальне програмування народилося через необхідність обійти проект, який приніс із собою багато змін на багатьох переходах у часі. Це стало необхідним, щоб прийнята методологія була суто ітеративною та простою. Нижче перелічено ситуації, які можуть вимагати використання екстремального програмування (XP):

  • Клієнти не мають гарного уявлення про функціональність системи
  • Зміни динамічні і, як очікується, змінюються через короткі проміжки часу
  • Бізнес стрімко зростає
  • Виділені ресурси - мінімальний мінімум; немає величезного персоналу
  • Потрібно значне підвищення продуктивності праці
  • Ризик потребує високого рівня пом'якшення
  • Високі умови для тестування

Отже, ось для вас екстремальне програмування (XP) коротко і простими словами. Ця методологія повідомила про успіх у всіх починаннях із розробки програмного забезпечення та мала високий рівень успішності протягом всієї історії впровадження. Народжений поза звичайними та спрощеними вимогами, екстремальне програмування (XP) тепер повільно набуває визнання як методології, з якою слід рахуватися.

Якщо вам подобається концепція екстремального програмування (XP), нехай дають цій статті великі пальці. Якщо вам це сподобалось, обов'язково поділіться і прокоментуйте свої погляди.