Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л04-5_Методи і мистецтво програмування. Особлив...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
185.86 Кб
Скачать

3. Сучасні тенденції в програмній інженерії

На початку 2001 року століття ряд провідних фахівців в області програмної інженерії (Алістер Коберн, Мартін Фаулер, Джим Хайсміт, Кент Бек та інші) сформували групу під назвою Agile Alliance. Слово agile (швидкий, спритний, стрімкий) відображало в цілому їх підхід до розробки ПЗ, заснований на багатому досвіді участі в різноманітних проектах протягом багатьох років.

Цей підхід під назвою "Швидка розробка ПЗ" (Agile software development) базується на чотирьох ідеях, сформульованих ними в документі "Маніфест швидкої розробки ПЗ" (Agile Alliance's Manifesto) і що полягають в наступному:

  • індивідууми і взаємодії між ними цінуються вище за процеси і інструменти;

  • працююче ПЗ цінується вище за всеосяжну документацію;

  • співпраця із замовниками цінується вище за формальні договори;

  • реагування на зміни цінується вище за строге проходження плану.

При такому підході технологія займає в процесі створення ПЗ цілком певне місце. Вона підвищує ефективність діяльності розробників за наявності будь-яких з наступних чотирьох умов:

  • коли вона дозволяє людям легше виразити свої думки;

  • коли вона виконує завдання, нездійсненні уручну;

  • коли вона автоматизує утомливі і схильні до помилок дії.;

  • коли вона полегшує спілкування між людьми;

Технологія не повинна діяти проти характеру культурних цінностей і пізнавальної здатності людини.

При цьому слід чітко розуміти: при всіх перевагах швидкої розробки ПЗ цей підхід не є універсальним і застосовний тільки в проектах певного класу. Для характеристики таких проектів Алістер Коберн ввів два параметри - критичність і масштаб.

Критичність визначається наслідками, дефектами, що викликаються, в ПЗ, її рівень може мати одне з чотирьох значень:

  • C - дефекти викликають втрату зручності;

  • D - дефекти викликають втрату возместимых засобів (матеріальних або фінансових);

  • E - дефекти викликають втрату невозместимых засобів;

  • L - дефекти створюють загрозу людському життю.

Масштаб визначається кількістю розробників, що беруть участь в проекті:

  • від 1 до 6 чоловік - малий масштаб;

  • від 6 до 20 чоловік - середній масштаб;

  • понад 20 чоловік - великий масштаб.

За оцінкою Коберна, швидка розробка ПЗ застосовна тільки в проектах малого і середнього масштабу з низькою критичністю (C або D).

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

  • інтерактивне спілкування лицем до лиця - це найдешевший і швидший спосіб обміну інформацією;

  • надмірна "тяжкість" технології коштує дорого;

  • численніші команди вимагають "важчих" і формальніших технологій;

  • велика формальність підходить для проектів з більшою критичністю;

  • зростання зворотного зв'язку і комунікації скорочує потреба в проміжних і кінцевих продуктах;

  • дисципліна, уміння і розуміння протистоять процесу, формальності і документуванню;

  • втрата ефективності в некритичних видах діяльності цілком допустима.

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