Някой от най-разпространените и набиращи все по-голяма популярност методологии за дизайн са Agile, Extreme Programming, Lean Software Development и Feature-Driven Development.
В тази статия ще се спрем на предимства и недостатъците на нашите топ три – Agile, Waterfall и Lean Manufacturing на база тяхното използване.
Предимства на Agile
- Постоянното сътрудничество между изпълнител и възложител дава възможност на екипа да се самоуправлява
- Рискът се понижава, тъй като работата се одобрява през определени интервали от време
- Гъвкавостта нараства чрез итеративно изпълнение на задачите и редовното им представяне на клиента
Недостатъци на Agile
- Включва голям брой условия, които могат да отчуждят двете страни на проекта
- Показване на отделните елементи преди финализиране може да доведе до изменения в крайния продукт
- Необходимо е работните процеси да бъдат строго контролирани през итерациите, за да се избегне претоварването на финалната версия
Предимства на Waterfall
- Лесен и интуитивен за разбиране
- Обема работа може да се планира, тъй като изискванията са уточнени от самото начало във формата на задание
- Анализа, проектирането, изграждането и тестването се извършват в отделни фази на проекта и лесно могат да бъдат проследени
Недостатъци на Waterfall
- След като изискванията бъдат дефинирани, клиентът може да не види продукта до етапа на провеждане на тестове
- Липсва гъвкавост за реагиране на променящите се изисквания
- Завършени работни процеси трябва да чакат до следващата фаза от проекта, за да има развитие в тях
Предимства на Lean Manufacturing
- Процесът по създаването на проекта може постоянно да се надгражда и развива по време на работа
- Във всеки един момент могат да се предоставят работни елементи към възложителя
- Пълна гъвкавост и възможност за реализиране на отделни работни елементи, дори и когато са завършени
- Изискванията на отделните елементи могат да се променят в процеса на изграждането им
Недостатъци на Lean Manufacturing
- Непрекъснатото променяне може да доведе до нежелано забавяне и просрочване на проекта във времето
- С подобрената гъвкавост идва по-голяма отговорност за стриктно следене на работните процеси и за цялостното развитие
- Необходимо е да се осигурят ресурси за отстраняване на бъгове паралелно с разработката
Изборът на методология за дизайн не трябва да е строго дефиниран, а е желателно да зависи от конкретния проект и неговото реализиране.