Методологија водопада вс РУП
Данас се у индустрији софтвера користи више различитих методологија развоја софтвера. Метода развоја водопада једна је од најранијих метода развоја софтвера. Методологија развоја софтвера за водопад је секвенцијални модел у којем се свака фаза завршава у потпуности и следи у фиксном редоследу. РУП (Ратионал Унифиед Процесс) је прилагодљив процесни оквир итеративних методологија развоја софтвера. РУП се бави неколико критика развоја водопада, попут ригидности.
Шта је методологија водопада?
Методологија водопада један је од најранијих модела развоја софтвера. Као што име сугерира, то је секвенцијални процес у којем напредак тече кроз више фаза од врха до дна, аналогно водопаду. Фазе модела водопада су анализа потреба, дизајн, развој, тестирање и примена захтева. Пословни аналитичари (или они који их програмирају ако је то мала организација) спроводе фазу анализе тако што ће од клијента пројекта преузети системске и пословне захтеве. Тада софтверски архитекти (или старији произвођачи софтвера) креирају дизајнерске документе који приказују структуру и компоненте предложеног система. Тада млађи програмери раде кодирање користећи дизајнерске документе. По завршетку развоја производ се предаје тиму за тестирање на процесе тестирања и верификације. Коначно, производ се имплементира (или интегрише) на локацији корисника и пројекат се одјављује. Важно је напоменути да је свака фаза комплетно завршена пре преласка на следећу фазу. Овај модел је био директан резултат једноставног прилагођавања хардверско оријентисаног развојног метода (који се налази у производној и грађевинској индустрији), у време када није постојао формални модел за развој софтвера.
Шта је РУП?
РУП припада породици итеративних методологија развоја софтвера. Развила га је Ратионал Софтваре Цорпоратион (ИБМ) 2003. године. То је заправо прилагодљив процесни оквир (није ни један конкретан процес) који развојна организација може прилагодити својим потребама. Мало сличан водопаду, има фиксне фазе као почетак, разрада, изградња и транзиција. Али за разлику од водопада, РУП је итеративни процес. Три стратегије заробљене од стране РУП-а су прилагодљив процес који води развој, аутоматизоване алате за убрзавање процеса и услуге које помажу у бржем усвајању процеса и алата. Ове стратегије интерниста обухвата шест најбољих пракси софтверског инжењеринга (итеративни развој, захтеви за управљање, архитектура заснована на компонентама, визуелни модели софтвера, континуирана верификација и управљање променама).
Која је разлика између Методологије водопада и РУП-а?
Иако су методологија водопада и РУП дефинисали фиксне фазе, постоје кључне разлике између ова два модела. Главно одступање је да иако је методологија водопада очигледно секвенцијални процес са прописаним корацима у којима је тренутна фаза завршена пре преласка на следећу фазу, РУП је итеративни процес. За разлику од методологије водопада, РУП развија производ у неколико фаза на основу повратних информација акционара. Пошто свака РУП итерација производи извршно издање, купци остварују предности много раније од Ватерфалл-а. Коначно, методологија водопада представља конкретан процес који прописује, док је РУП прилагодљиви оквир софтверских процеса.