Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Питання на модульний контроль.doc
Скачиваний:
9
Добавлен:
22.11.2019
Размер:
915.97 Кб
Скачать
  1. Перша ітерація: метод "Спочатку в глибину".

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

  1. Мотивація особливого підходу до виконання першої ітерації.

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

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

коли дуже велика невизначеність проекту, коли не вистачає критеріїв переваги одних рішень перед іншими. Таким чином, для початкового періоду розвитку проекту потрібна спеціальна методика, що дозволяє мінімізувати ризики проекту в умовах невизначеності. Нижче розвивається підхід, повчитися назву “Спочатку в глибину” (Depth-First), суть якого в заміні початкового ітеративного нарощування серією коротких міні-циклів, можливо, не в повній мірі забезпечують необхідну користувачам закінчену

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

нарощування, характерним властивістю якого є швидке отримання відчутних результатів нехай навіть на шкоду функціональності. Протилежний підхід, надалі званий “Спочатку в ширину” (Depth-First), характеризується спрямованістю на побудову закінченою

функціональності на ітерації. Якщо вимоги до проекту визначені точно і розробники володіють методами об'єктно-орієнтованого проектування досить добре, прикладна область відома, то немає потреби вдаватися до підходу “Спочатку в глибину”. Однак в

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

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

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