Има повече от един начин за изпълнение на дадена задача и това се отнася и за разработка на софтуер. Един разработчик трябва да вземе стотици решения и да премине през различни подходи през курса. Едно от първите решения, които трябва да вземе, е да избере правилната методика за развитие. Agile и Waterfall са двете най-разпространени, но надеждни методологии за разработка на софтуер. Е, и двете служат на една и съща цел, която е да се намери най-добрият възможен подход за изпълнение на проекта за възможно най-малко време, но те го правят много различно. И двата подхода се използват за реализиране на мащабни ERP (корпоративно планиране на ресурси ресурси) проекти от доста време. Докато и двете са две страни на една и съща монета, те имат своя справедлив дял в разликите.

Какво е Agile?

Agile е една от най-известните методологии за разработка на софтуер, която следва инкрементален подход за изпълнение на задачите. Идеята е да се доставят продукти по-бързо, като се използват ERP внедрявания, като се запази целостта на методологията. Това е методология на проекта, която се извлича от постно мислене, където изискванията и решенията напредват чрез колективно сътрудничество между екипите и крайните потребители. Това е модерен подход към развитието, който набляга на адаптивното обучение, постепенното предоставяне, еволюционното развитие и непрекъснатото повторение. Той позволява да се правят промени по време на цикъла на разработка, което осигурява гъвкавост за наблюдение на напредъка на проекта, като по този начин намалява риска от провал.

Какво е водопад?

Водопадът е ориентиран към плана традиционен подход за развитие, който следва последователен процес на проектиране, който понякога може да бъде твърд. Цикълът на разработка е разделен на серия от събития от изисквания за документиране до доставка на продукти. Разработчиците могат да продължат само след успешно приключване на една фаза. Всяка фаза трябва да бъде внимателно прегледана и одобрена от клиента, преди разработчиците да преминат към следващата фаза. За разлика от Agile, той не позволява да се правят промени по време на цикъла на разработка, което затруднява отмяната на кода, като по този начин увеличава риска от повреда. Напредъкът обаче може да бъде лесно измерен, тъй като това изисква от разработчиците да създадат хартиена пътека за всяка фаза от цикъла на развитие, позволяваща плавен и предсказуем работен процес.

Разлика между Agile и водопад

1) Методика на пъргавината и водопада

Agile и Waterfall са две от най-известните методологии за разработка на софтуер, използвани за ERP проекти за доставяне на продукти с висока стойност за възможно най-малко време. Въпреки общата цел, те използват различни подходи, за да осъществят проектите. Докато Agile следва инкрементален подход, за да свърши нещата, Waterfall използва последователен процес на проектиране.

2) Подход в Agile и водопад

И двете са жизнеспособни методи, използвани в управлението на проекти, но по различни начини. Водопадът използва традиционен подход, който понякога може да бъде твърд и където целият процес на развитие е разделен на серия от събития, започващи от зачеването и чак до производството. Agile, от друга страна, е по-нов от водопада и използва инкрементален подход за стройно развитие.

3) Обхват на пъргавия и водопад

Водопадът прилича повече на план, който разглежда анализа, проектирането, кодирането, внедряването и тестването като различни фази на проекта за разработка на софтуер. Той работи добре, когато обхватът на проекта е известен предварително, но ограничава промените, като по този начин ограничава адаптивността. Agile, като модерен подход, е отворен за промени, идва на цена разбира се, но работи добре, когато обхватът на проекта е неизвестен.

4) Процес на проектиране в Agile и водопад

Agile започва с опростен дизайн на проекта, като се започне с малки модули за определен период от време. Фазите на процеса на развитие протичат успоредно с редовните обратни връзки и се поддържа закъснение, за да се следи напредъкът. Напротив, Водопадът е последователен процес, който не наблюдава напредъка на проекта. Разработчикът може да премине към следващата стъпка само след като успешно изпълни първата стъпка, защото следва последователен подход.

5) Приоритизиране на Agile и водопад

Договорните условия в методологията на Agile позволяват частичен успех на проекта, като по този начин намалява риска от провал. Като модерен подход, той дава приоритет на процеса, основан на стойността, която изисква първо да бъдат приложени ценни функции, като по този начин се намалява риска от неизползваем продукт. От друга страна, водопадът е свързан с подхода „всичко или нищо“, който увеличава риска от провал, тъй като ограничава частичния успех на проекта.

Agile срещу водопад: сравнителна диаграма

Обобщение на Agile срещу водопад

Agile и Waterfall са двете най-популярни методологии за разработка на софтуер, използвани в ERP проекти, но те следват различни подходи, за да служат на обща цел; това е да доставите необходимия продукт за възможно най-малко време без грешки и грешки. Agile следва по-инкрементален подход към разработването на софтуер, който осигурява гъвкавост за наблюдение на напредъка през целия цикъл на разработка. Водопадът, от друга страна, прави всичко последователно, като се започне от зачеването и започването до прилагането и поддръжката. Разработчиците могат да преминат към следващата фаза само след успешно завършване на първата фаза, която ограничава промените, като по този начин увеличава риска от неуспех. Agile позволява да се правят промени по време на цикъла на развитие, което намалява риска от пълен отказ.

Препратки

  • Швабер, Кен. Agile Управление на проекти с Scrum. Лондон: Pearson, 2004. Печат
  • Шор, Джеймс и Шейн Уорд. Изкуството на пъргавото развитие. Себастопол: O’Reilly Media, 2008. Печат
  • Чарват, Джейсън. Методологии за управление на проекти. Ню Джърси: John Wiley & Sons, 2003. Печат
  • Кредитна снимка: https://www.flickr.com/photos/davegray/6865783267
  • Кредитна снимка: https://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Waterfall_model.svg/500px-Waterfall_model.svg.png