Spiralni model je filozofija oblikovanja programske opreme, ki je, namesto da bi bil linearni proces, štiristopenjski proces, ki se nenehno ponavlja, dokler programska oprema ni končana. V prvem koraku spiralnega modela razvijalci razpravljajo o ciljih. Po tem razvijalci najdejo metode za doseganje ciljev na najhitrejši in najvarnejši način. Ko razvijalci vedo, kaj delajo, nato izvedejo dejansko programiranje, da v programsko opremo dodajo funkcije. Ko je ta postopek končan, se stranki prikaže programska oprema za sprejem ali zavrnitev sprememb.
Načrtovanje je prvi korak spiralnega modela in se začne, preden se izvede kakršno koli programiranje. Na tej točki razvijalci razpravljajo o funkcijah, ki jih je treba dodati programski opremi. Na primer, če je program narejen za skupinsko sodelovanje, lahko razvijalci razpravljajo o potrebi po skupinskem vmesniku, ki mnogim ljudem olajša istočasno uporabo programa. Razvijalci razpravljajo samo o funkcijah, ki so potrebne, ne da bi razpravljali o tem, kako jih ustvariti.
Ko razvijalci vedo, katere funkcije so potrebne, začnejo razpravljati o načinih, kako jih dokončati. V tej fazi spiralnega modela bodo razvijalci razpravljali o različnih programskih praksah in metodah za dokončanje naloge. Čeprav obstaja veliko načinov za dodajanje funkcij, bodo razvijalci pogosto izbrali tistega, ki je najhitrejši za izdelavo in obdelavo. Problem je lahko tudi varnost, saj razvijalci ne želijo, da se program med uporabo zruši.
Ko je metoda izbrana, bodo razvijalci začeli programirati funkcije. To programiranje bo potekalo v skladu z metodo, izbrano v drugi fazi, in se ne bo spremenilo, razen če pride do večjih težav. Za razliko od drugih dveh delov spiralnega modela je tukaj zelo malo razprav.
Ko bodo obravnavane funkcije končane, bo s stranko stopila v stik, da preizkusi programsko opremo v trenutnem stanju. Programska oprema bo na tej točki le redko dokončana in ta korak je bolj namenjen testiranju programiranih funkcij kot trditvi, da je opravljen. Če programska oprema ni narejena za določenega odjemalca, se lahko potencialne stranke povabijo, da preizkusijo program. Ne glede na to, ali stranka sprejme ali zavrne funkcije, se spiralni model vrne na prvi korak – načrtovanje – kjer se razpravljajo o novih funkcijah ali jih zavrnejo in se funkcije popravljajo. To se bo nadaljevalo v zaporedju, dokler programska oprema ni pripravljena za distribucijo ali dokončana po naročnikovih specifikacijah.