Ова врста методологије идентификована је као скуп процедура, техника и документационе подршке која се користи за дизајн информационих система. У софтверском инжењерству, када се говори о развоју софтвера, говоримо о развоју програма, који морају да задовоље низ фаза или фаза, да би функционисали са другим методама које су већ успостављене у другим инжењерским дисциплинама.
Његов главни циљ је да изложи скуп класичних и модерних техника моделирања система који омогућавају развој квалитетног софтвера, укључујући грађевинску хеуристику и критеријуме поређења модела система.
Свака методологија развоја софтвера има свој приступ и оно што се обично назива традиционалним приступом обично не узима у обзир аспекте као што су квалитет, конкурентност, задовољство и користи; него су оптерећени нејасноћама, бирократијом итд. Будући да су методологије створене у деценији 70-их и 80-их, размишљање у бизнису 50-их.
Истина је да се свет врло брзо мења, опстају само паметна предузећа и паметни софтвер. Данас су комуникације тренутне, информације теку у реалном времену. Због тога су класичне методологије већ застареле и не функционишу са сваке тачке гледишта. Само су неки прилагођени, али њихова функционалност је ограничена на не баш иновативне пројекте.
Међу методологијама развоја софтвера које се данас користе су:
Сцрум методологија: то је агилна и флексибилна методологија која вам омогућава управљање развојем софтвера и чији је циљ максималан повраћај улагања за вашу компанију. У основи се заснива на изградњи функционалности највише вредности за купца и на принципима континуираног надзора, самоуправљања, прилагођавања и иновација. Међу предностима које нуди ова методологија су:
Испуњавање очекивања, флексибилност промена, смањење времена, већа продуктивност, максималан повраћај улагања, смањење ризика
КСП методологија (екстремно програмирање): једна је од најистакнутијих методологија у агилним процесима развоја софтвера, јер већи нагласак ставља на прилагодљивост него на предвидљивост. Његове главне карактеристике су:
- Итеративни и инкрементални развој односи се на смањено, али континуирано побољшање.
- Стални, често понављани и аутоматизовани јединични тестови.
- Програмски тим наставља да се интегрише са клијентом.
- Програмирање у паровима, најбоље је да развојне задатке обављају две особе у истом положају.
- Исправљање свих грешака пре додавања нових функционалности.
- Једноставност кода, то је најбољи начин да ствари добро функционишу, боље је урадити нешто једноставно што се може модификовати без пуно рада, него урадити нешто сложено што се можда никада неће користити.