Итеративная модель разработки. Достоиства и недостатки, рекомендации по применимости




Разработка начинается при наличии части требований. Их реализация позволяет согласовать с заказчиком следующую порцию требований. Процесс повторяется до полной реализации системы. Ключом к успеху являются верификация и валидация версий продукта на каждой итерации

 Достоинства – хорошо адаптирована к изменению требований; ориентирована на заказчика

 Недостатки – есть риск, т.к. разработка начинается с частью требований; строгие требования к межмодульным интерфейсам; есть риск, что реальные проблемы будут отложены на поздние стадии разработки

 Вывод – масштабируется для проектов различной сложности; хорошо применима для систем со слабосвязанными модулями

Итеративный подход (англ. iteration — повторение) — выполнение работ параллельно с непрерывным анализом полученных результатов и корректировкой предыдущих этапов работы. Проект при этом подходе в каждой фазе развития проходит повторяющийся цикл: Планирование — Реализация — Проверка — Оценка (англ. plan-do-check-act cycle).

Итеративная разработка ПО — это процесс создания программного обеспечения, который осуществляется небольшими этапами, в ходе которых ведется анализ полученных промежуточных результатов, выдвигаются новые требования и корректируются предыдущие этапы работы.

Жиз­нен­ный цикл про­екта при ите­ра­ци­он­ной раз­ра­ботке раз­бит на после­до­ва­тель­ность ите­ра­ций, каж­дая из кото­рых, по сути, явля­ется про­ек­том в мини­а­тю­ре, то есть вклю­чает в себя все про­цессы раз­ра­ботки ПО (сбор и ана­лиз тре­бо­ва­ний, состав­ле­ние спе­ци­фи­ка­ций, непо­сред­ствен­ную реа­ли­за­цию, тести­ро­ва­ние и запуск), но в рам­ках одной ите­ра­ции раз­ра­ба­ты­ва­ется не весь про­ект, а только его вер­сия или отдельная часть. Как пра­ви­ло, цель каж­дой ите­ра­ции — это полу­че­ние вер­сии ПО, вклю­ча­ю­щей в себя как новые воз­мож­но­сти, реа­ли­зо­ван­ные в ходе текущей ите­ра­ции, так и функ­ци­о­наль­ность всех преды­ду­щих ите­ра­ций. Резуль­тат финаль­ной ите­ра­ции содер­жит всю тре­бу­е­мую функ­ци­о­наль­ность про­дук­та. Бюд­жет и сро­ки, необ­хо­ди­мые для реа­ли­за­ции финаль­ной вер­сии обычно изна­чально не уста­нав­ли­ва­ют­ся, так как не опре­де­ля­ется общий объём работ и тре­бо­ва­ния фор­ми­ру­ются по ходу реа­ли­за­ции.

Ите­ра­тив­ная, ите­ра­ци­он­ная, инкре­мент­ная и эво­лю­ци­он­ная раз­ра­ботка — фак­ти­че­ски, это сино­ни­мы. Ите­ра­тив­ность (iteration, «повто­ре­ние») в дан­ном слу­чае озна­чает под­ход, осно­ва­ный на выпол­не­нии задач в рам­ках «мини-про­ек­тов», инкре­мент­ность (increment «уве­ли­че­ние») озна­чает после­до­ва­тель­ное добав­ле­ние функ­ци­о­нала к раз­ра­ба­ты­ва­е­мому про­дук­ту, а эво­лю­ци­он­ность (evolutio, «развёр­ты­ва­ние») — про­цесс раз­ви­тия про­дук­та, напо­ми­на­ю­щий есте­ствен­ное раз­ви­тие био­ло­ги­че­ских видов.

Основ­ные пре­иму­ще­ства ите­ра­тив­ной модели раз­ра­ботки

Сни­же­ние рис­ков — раннее обна­ру­же­ние кон­флик­тов между тре­бо­ва­ниями, моде­лями и реа­ли­за­цией про­екта; боль­шая фоку­си­ровка на основ­ных зада­чах; дина­ми­че­ское фор­ми­ро­ва­ние тре­бо­ва­ний и управ­ле­ние ими.

Орга­ни­за­ция эффек­тив­ной обрат­ной связи про­ект­ной команды с потре­би­те­лем, созда­ние про­дук­та, реально отве­ча­ю­щего его потреб­но­стям.

Быст­рый выпуск мини­мально цен­ного про­дукта (MVP) и воз­мож­ность выве­сти про­дукт на рынок и начать экс­плу­а­та­цию гораздо рань­ше.

Основ­ные недо­статки ите­ра­тив­ной модели раз­ра­ботки

Проблемы с архи­тек­ту­рой и наклад­ные рас­ходы — при работе с хао­тич­ными тре­бо­ва­ниями и без про­ра­бо­тан­ного гло­баль­ного плана архи­тек­тура при­ло­же­ния может постра­дать, а на её при­ве­де­ние к адек­ват­ному виду могут потре­бо­ваться допол­ни­тель­ные ресур­сы. По сути, за воз­мож­ность менять тре­бо­ва­ния в ходе созда­ния про­дук­та, при­хо­дится так или иначе рас­пла­чи­вать­ся.

Нет фик­си­ро­ван­ного бюд­жета и сро­ков, а также нужна силь­ная вовле­чен­ность Заказ­чика в про­цесс— для неко­то­рых Заказ­чи­ков это непри­ем­ле­мые усло­вия сотруд­ни­че­ства с раз­ра­бот­чи­ком, им лучше подойдёт водопадная модель.

Резюме

Ите­ра­тив­ная раз­ра­ботка отлично под­хо­дит для боль­ших про­ек­тов, для про­ек­тов с неопре­де­лен­ными тре­бо­ва­ниями и для про­грамм­ных про­дуктов, кото­рые носят инно­ва­ци­он­ный харак­тер и осно­ваны на биз­нес-гипо­те­зах, тре­бу­ю­щих проверки.




Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-14 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: