Mikä on spiraalimalli?

Spiraalimalli on ohjelmistosuunnittelun filosofia, joka on lineaarisen prosessin sijaan nelivaiheinen prosessi, joka toistuu jatkuvasti, kunnes ohjelmisto on valmis. Spiraalimallin ensimmäisessä vaiheessa kehittäjät keskustelevat tavoitteista. Tämän jälkeen kehittäjät löytävät menetelmiä tavoitteiden saavuttamiseksi nopeimmin ja turvallisimmin. Kun kehittäjät tietävät, mitä he tekevät, he suorittavat sitten varsinaisen ohjelmoinnin asettaakseen ominaisuuksia ohjelmistoon. Kun tämä prosessi on valmis, asiakkaalle näytetään ohjelmisto, joka hyväksyy tai hylkää muutokset.

Suunnittelu on spiraalimallin ensimmäinen vaihe, ja se alkaa ennen ohjelmointia. Tässä vaiheessa kehittäjät keskustelevat ominaisuuksista, jotka on lisättävä ohjelmistoon. Jos ohjelma on tehty esimerkiksi ryhmäyhteistyöhön, kehittäjät voivat keskustella ryhmäkäyttöliittymän tarpeesta, joka helpottaa monien ihmisten käyttää ohjelmaa samanaikaisesti. Kehittäjät keskustelevat vain tarvittavista ominaisuuksista keskustelematta niiden luomisesta.

Kun kehittäjät tietävät, mitä ominaisuuksia tarvitaan, he alkavat keskustella tavoista täydentää niitä. Spiraalimallin tässä vaiheessa kehittäjät keskustelevat eri ohjelmointikäytännöistä ja menetelmistä tehtävän suorittamiseksi. Vaikka ominaisuuksia voi lisätä monella tapaa, kehittäjät valitsevat usein nopeimmin valmistettavan ja käsiteltävän. Turvallisuus voi myös olla ongelma, koska kehittäjät eivät halua ohjelman kaatuvan käytön aikana.

Kun menetelmä on valittu, kehittäjät alkavat ohjelmoida ominaisuuksia. Tämä ohjelmointi tapahtuu toisessa vaiheessa valitun menetelmän mukaisesti, eikä sitä muuteta, ellei ilmene suuria ongelmia. Toisin kuin kaksi muuta spiraalimallin osaa, täällä keskustellaan hyvin vähän.

Kun käsitellyt ominaisuudet ovat valmiit, asiakkaaseen otetaan yhteyttä kokeilemaan ohjelmistoa sen nykyisessä kunnossa. Ohjelmisto on harvoin valmis tässä vaiheessa, ja tämä vaihe on enemmän ohjelmoitujen ominaisuuksien testaamiseen kuin sen väittämiseen, että se on tehty. Jos ohjelmistoa ei ole tehty tiettyä asiakasta varten, potentiaaliset asiakkaat voidaan kutsua kokeilemaan ohjelmaa. Riippumatta siitä, hyväksyykö vai eikö asiakas ominaisuudet, spiraalimalli palaa ensimmäiseen vaiheeseen – suunnitteluun -, jossa uusista ominaisuuksista keskustellaan tai ne kielletään ja ominaisuudet korjataan. Tämä jatkuu järjestyksessä, kunnes ohjelmisto on valmis jakeluun tai valmis asiakkaan vaatimusten mukaisesti.