Spiral programvara är en modell för programvaruutveckling genom iteration . En prototyp är utvecklade och testade utan behov av den typ av genomarbetade underlag som skulle krävas i den äldre " vattenfall " modellen . Den fortsätter sedan genom riskanalys , teknik och kundens utvärdering. De kundutvärderingar avslutar en cykel och ställa upp nya planer och frågor som leder till en mer utarbetad prototyp , fortsätter cykeln . Historia
Ett vattenfall kan ha massor av steg , men rörelsen är endast i en riktning .
Barry W. Boehm av TRW Defense Systems Group som formellt ut " spiral -modellen " i en essä utgiven av Institute of Electrical and Electronics Engineers ( IEEE ) 1988 . Boehm var missnöjd med den då dominerande " vattenfall modell " för utveckling , som föreskrev att mjukvara ska " utvecklas i etapper ( verksamhetsplan , operativa specifikationer , kodning specifikationer , etc. ) . "
vattenfall problem
problemet med ett vattenfall är det kräver tidigt engagemang och ett stort hopp .
Problemet med vattenfallet modellen var att det betonade " fullt utarbetade dokument som färdigställande kriterier för tidiga krav och faser konstruktion . " Som ett resultat , Boehm klagade , många projekt belastas med överarbeta specifikationerna innan någon historia av användargränssnitt hade utvecklats . Teori hade varit att få alltför långt före praktiken .
Fyra faser
Boehm sade att varje cykel inom hans föredragna spiral modellen skulle börja med beaktande av målen ( såsom prestanda eller funktionalitet ) , vidare till en vägning av alternativa strategier genomförbara och avslutar med ett beaktande av de begränsningar som vardera .
det är fas ett , eller planeringsfasen . Varje cykel fortsätter sedan till fas två ( riskanalys ) , tre ( engineering ) och fyra ( kundens utvärdering ) .
Begreppet " risk", inom ramen för fas två , kan beteckna misslyckande att nå uppsatta mål , schemaläggning förseningar eller överträdelse av budgetrestriktioner.
Cycle Uppsägning
kundens utvärdering steget är i huvudsak en recension , omfattar ( Boehm skrev ) " de primära personer eller organisationer involverade med produkten . " Det ger den input som krävs för nästa planeringsfas , eller början av nästa cykel i spiralen .
Spiralavslutningspunkten
Hur långt spiralen fortsätter ? Det fortsätter tills den slutar i en färdig produkt. Som Walt Scacchi vid University of California i Irvine skrev , sveper spiral utåt " så långt som behövs enligt den risk som måste hanteras . "
En alternativ
" Agile " modell förespråkar klagar av byråkrati och formalism .
annan modell av mjukvaruutveckling är känd som " agile " -modellen . Det sägs att vara " folk " snarare än " process " orienterade , gynna muntlig snarare än skriftlig kommunikation . Ur synvinkel av "agile" förespråkar , spiralen och vattenfallet har alltför mycket gemensamt . De är båda alltför byråkratiskt .