Тематические статьи →

Итеративная модель разработки

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

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

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

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

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

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

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

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

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

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

Резюме

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

Поделитесь с друзьями:


Информация о публикации:

Материал опубликован в 2014 году. Эта ста­тья о веб-разработке. При пере­пуб­ли­ка­ции обя­за­тельно ука­за­ние пер­во­ис­точ­ника в виде гипер­тек­сто­вой ссылки на сайт web-creator.ru

Воспользуйтесь нашими
знаниями и опытом

Отправьте нам сообщение при помощи формы. Или напишите на e-mail s@web-creator.ru

Мы максимально оперативно ответим Вам по электронной почте или перезвоним.

При отправке сообщения через форму, укажите пожалуйста предпочтительный способ связи с Вами: телефон или адрес электронной почты. Мы сможем ответить Вам подробнее, если Вы напишете что-то о запланированном проекте или предполагаемых задачах.

Либо просто позвоните нам по номеру: +7 495 215-1501

Мы работаем по будним дням с 10 до 19 часов.

Комплексные услуги

Реализация «под ключ» проектов по созданию различных видов сайтов, разработка веб-приложений для автоматизации бизнес-процессов, ведение контекстных и медийных рекламных кампаний, поисковое продвижение, комплексная поддержка веб-проектов, консалтинговые услуги.