Spiraalvormige modelgeschiedenis, kenmerken, fasen, voorbeeld

Spiraalvormige modelgeschiedenis, kenmerken, fasen, voorbeeld

Hij spiraalvormig model Het is een archetype van het applicatie -ontwikkelingsproces. Het is gebaseerd op de hypothese dat softwareontwikkeling een iteratieve cyclus is die wordt herhaald totdat het de vastgestelde doelstellingen heeft bereikt. Heeft de mogelijkheid om de grote hoeveelheid risico's af te handelen die kunnen optreden bij het ontwikkelen van software.

Het is een van de belangrijkste modellen om risicobeheer te ondersteunen. Zoals de naam al aangeeft, wordt dit model weergegeven als spiraalvormige vorm, waarbij de verschillende fasen van het model in verschillende cycli worden verdeeld. Het aantal cycli in het model is niet vast en kan van het ene project tot het andere variëren.

Analyse, evaluatie, planning en ontwikkeling. Software voor sippirale ontwikkelingssoftware: beao [public domein] commons.Wikimedia.Org [TOC]

Geschiedenis

Schepping

Het spiraalvormige model werd gedefinieerd door de wiskundige en hoogleraar Amerikaanse software -engineering Barry Boehm. Na zijn concept in 1986 te hebben gepresenteerd voor de ontwikkeling van complexe toepassingen, publiceerde hij zijn model in 1988 in een completer kader in zijn artikel "Een spiraalvormig model van ontwikkeling en software -verbetering".

Onderdeel van deze publicatie uit 1988 vertegenwoordigde grafisch het spiraalvormige model, dat volledig wordt weergegeven hoe het softwareontwikkelingsproces wordt gezien in de vorm van een spiraal en ondersteund door cycli.

Boehm staat bekend om zijn vele bijdragen aan software-engineering, zoals het Constructive Cost Model (Cocomo), het spiraalvormige model van het softwareproces, de benadering van de theorie G (win-win) voor de bepaling van de vereisten en het beheer van de software.

Alternatief voor het watervalmodel

In de publicatie beschreef Boehm het spiraalvormige model als een mogelijk alternatief voor het eerder vastgestelde watervalmodel, dat ook diende als basis voor zijn praktijk.

Het spiraalvormige model was niet de eerste die cyclische ontwikkeling verhoogde, maar het was het eerste model om uit te leggen waarom de iteratie belangrijk is. Zoals oorspronkelijk was gepland, is het toegewezen aan grote en complexe projecten waarvan de iteraties meestal 6 maanden tot 2 jaar zijn.

Dit model gaat er niet vanuit dat softwareontwikkelingstaken lineair zijn ontworpen, in tegenstelling tot het watervalmodel, maar dat het ze ziet als iteratieve taken.

Dit cyclische model had invloed op de modellen -gebaseerde software engineering architectuur (MBase) en extreme programmering.

Spiraalvormige modelkenmerken

Risico controle

Wat dit model sterk onderscheidt van de andere softwareprocesmodellen, is dat het de risico's expliciet herkent. Daarom vermindert het aanzienlijk dat grote softwareprojecten falen, omdat het herhaaldelijk de risico's evalueert en het ontwikkelingsproduct elke keer verifieert.

Dit computermodel bevat componenten van bijna elk ander softwaredile -cyclusmodel, zoals het watervalmodel, het prototypecreatiemodel, het iteratieve model, het evolutionaire model, enz.

Het kan u van dienst zijn: ICT (informatie- en communicatietechnologieën)

Daarom is het in staat om bijna elk type risico te verwerken dat de andere modellen meestal niet afhandelen. Vanwege zoveel componenten is dit model echter veel complexer dan de andere modellen voor softwareontwikkeling.

Beschrijving van de spiraal

Elke spiraalvormige bocht vertegenwoordigt een volledige cyclus, waarbij de vier kwadranten altijd passeren, die de vier fasen van het model vertegenwoordigen.

Naarmate de spiraalvorm toeneemt, neemt ook de voortgang uit. Daarom worden de fasen niet slechts één keer uitgevoerd, maar meerdere keren, spiraalvormig.

Hoewel deze cyclische herhaling ervoor zorgt dat het project de vastgestelde doelstellingen langzaam benadert, wordt het risico van het ontwikkelingsproces mislukt sterk geminimaliseerd.

Algemeen

De vier fasen implanteren alleen de basisdoelstellingen van een cyclus, maar ze hoeven zich niet te manifesteren in elke cyclus.

De volgorde van elke cyclus is ook niet strikt bepaald. Daarom kan het model op elk moment worden gecombineerd met andere modellen.

Flexibel

Het is vrij flexibel, bij afzonderlijk presteren voor elke fase van het project de processen van definitie van doelstellingen, risicoanalyse, ontwikkeling en planning.

Metamodel

Metamodel wordt geacht andere modellen op te nemen. Als de spiraal bijvoorbeeld buiten een enkele cyclus het watervalmodel zou vertegenwoordigen, omdat het de geleidelijke benadering van dit klassieke model opneemt.

Het gebruikt ook de benadering van het prototype -creatiemodel, omdat aan het begin van elke cyclus een prototype om risico's te verwerken.

Bovendien is het compatibel met het evolutionaire model, omdat spiraalvormige iteraties kunnen worden beschouwd als evolutionaire niveaus, waardoor het uiteindelijke systeem is gebouwd.

Fasen

Bepaal doelstellingen, alternatieven en beperkingen

Systeemvereisten worden gedefinieerd met het grootst mogelijke detail, inclusief prestaties, hardware/software -interfaces, belangrijke succesindicatoren, enz. en ze worden overwogen welke doelstellingen moeten worden geassocieerd met de huidige ontwikkelingscyclus.

Bovendien worden verschillende alternatieven onderzocht voor de implementatie ervan, zoals Building Vs. Koop, hergebruik bestaande componenten of onderaannemingen, enz.

Evenzo, beperkingen zoals kosten, planning en interfaces, tijdverbruik, enz.

risicobeoordeling

Alle voorgestelde alternatieven worden geëvalueerd. De doelstellingen en beperkingen dienen als het bepalen van referenties om de beste oplossing te selecteren.

Bovendien kunnen de risico's die het succes van het project belemmeren, zoals gebrek aan ervaring, nieuwe technologieën, strakke schema's, deficiënte processen, enz., de implementatie van de meest winstgevende en lagere risicostrategieën.

Kan u van dienst zijn: wat is de periscoop en waar is het voor?

Ten slotte worden methoden gebruikt zoals het maken van prototypes, simulaties, analytische modellen en gebruikersonderzoeken.

Ontwikkeling en test

Alle noodzakelijke ontwikkeling wordt gedaan, met behulp van de geselecteerde technologie en oplossing. Bij elke iteratie wordt een betere versie van de applicatie gemaakt.

De echte code is meerdere keren geschreven en getest totdat het gewenste resultaat is bereikt, wat dan zal dienen als basis voor toekomstige ontwikkelingsstappen.

Planning van de volgende cyclus

Bij het voltooien van een cyclus begint de volgende planning. Deze planning zou normaal gesproken met het project kunnen zijn als het doel van de cyclus werd bereikt, waardoor de definitie van het volgende doel werd verhoogd.

Het kan ook zijn om andere oplossingen te vinden, als de vorige ontwikkelingsfase defect was. De bestaande strategie kan worden vervangen door een van de eerder gedefinieerde alternatieven of een nieuwe. Hiermee zou een nieuwe poging het doel gaan bereiken.

Voorbeeld

Het Amerikaanse leger heeft het spiraalvormige model overgenomen voor de ontwikkeling en update van het moderniseringsprogramma voor Future Combat Systems (SCF).

Officieel uitgebracht in 2003, werd verwacht dat de SCF de troepen gelijkstelt aan reële tijd verbonden voertuigen met een netwerk van buitengewoon snelle en flexibele slagvelden.

Het project was verdeeld in vier ontwikkelingsspiralen van elk ongeveer twee jaar. Spiral 1 was gepland om te beginnen voor 2008 en prototypes te leveren voor gebruik en evaluatie.

Na het afronden van Spiral 1 was het gepland om Spiral 2 te starten voor 2010. De uiteindelijke ontwikkeling van het product was gepland om te leveren voor 2015.

In augustus 2005 kondigde Boeing de voltooiing aan van de eerste belangrijke mijlpaal van het project, dat de functionele beoordeling van de systemen was. Boeing en Science Applications International Corporation waren de Project Collegations.

In oktober 2005 raadde het Pentagon echter aan het project uit te stellen vanwege de hoge impact op de kosten voor de oorlog in Irak en de orkaan Katrina Aid.

Het project werd in 2009 geannuleerd nadat bezuinigingen op het budget waren ontstaan, zonder de voordelen van het spiraalvormige model in deze missie te kunnen bewijzen

Voordelen

Cyclische structuur

Vanwege dit type structuur worden de problemen tussen het ontwerp en de technische vereisten van de software stilzwijgend geëlimineerd, dankzij de periodieke controles.

Risicomanagement

De risico's worden in elk van de productfasen geanalyseerd voordat u vooruit gaat. Dit helpt mogelijke risico's te overwinnen of te verminderen.

Alle medewerkers profiteren van het zeer grote belang van risicoanalyse in dit model, wat mogelijk hun grootste voordeel vertegenwoordigt ten opzichte van andere procesmodellen.

Kan u van dienst zijn: Parallelle poort: kenmerken, typen en functies

De periodieke beoordeling van risico's wordt waarde wanneer innovatieve technische omgevingen, die over het algemeen worden geassocieerd met een bepaald risicopotentieel vanwege de afwezigheid van empirische waarden.

Klantparticipatie en feedback

Bij elke fase van het project zijn klanten betrokken, totdat het project is voltooid. Daarom kunnen verschillende feedbacks worden verzameld om de volgende versie van het project te verbeteren.

Bovendien kan feedback op elk moment worden verkregen vanwege spiraalvormige vorm. Klanten en gebruikers kunnen dus vanaf het begin in het ontwikkelingsproces worden geïntegreerd.

Ideaal voor grote projecten

Het is vooral populair en prominent voor grote en complexe projecten, waarbij budgetcontrole een prioriteit is voor klanten en ontwikkelaars. Er is een maximale controle over de kosten, middelen en kwaliteit van het softwareproject.

Nadelen

Duur

Het kan vrij duur zijn, omdat het een hoog niveau van ervaring vereist voor risicoanalyse. Bovendien hebben projecten veel tijd nodig om te ontwikkelen, wat de algemene kosten kan verhogen.

Best complex

Een zeer actief en complex eerder beheer van het project is vereist, waarbij elke cyclus wordt geregeld en zorgvuldig.

Het is relatief complexer dan andere modellen, omdat er veel cycli zijn, die elk door de verschillende fasen gaan, waardoor de inspanning van het documentatieproces wordt vergroot.

Het is essentieel om kennis te hebben in risicoanalyse en -beheer, die vaak niet beschikbaar zijn.

Tijdsbeheer

Het is moeilijk om tijd te beheren, omdat het aantal cycli onbekend is. Bovendien kan het ontwikkelingsproces op elk moment worden uitgesteld als binnen een cyclus belangrijke beslissingen of aanvullende acties moeten worden genomen bij het plannen van de volgende cyclus.

Veel stappen

Het is niet altijd gunstig om veel stappen te ondernemen in de ontwikkeling van software vanwege het feit dat ze, ondanks de veelzijdigheid van de tests, het eindeloze systeem kunnen bereiken zonder het programma af te maken.

Als gevolg hiervan is er altijd gevaar dat elk concept of conceptuele inconsistentie het eindproduct beïnvloedt.

Referenties

  1. Victor Font Jr (2019). Het spiraalvormige model. De ultieme gids voor de SDLC. Uitgevoerd uit: UltimatesDLC.com.
  2. Ionos (2019). Spiral-model: het risicodriven softwareontwikkelingsprocesmodel. Genomen uit: ionos.com.
  3. Techuz (2018). Wat is spiraalvormig model? Tot eenvoudige uitleg van de levenscyclus van de spiraalvormige softwareontwikkeling (SDLC). Uitgebracht van: Techuz.com.
  4. One Stop Testing (2020). Spiraalvormig model. Uitgevoerd uit: oonetoptesting.com.
  5. Geeks voor geeks (2020). Engineering Software - Spiral Model. Genomen uit: geeksforgeeks.borg.
  6. Chandu (2019). Spiraalmodel in software -engineering. Genomen uit: medium.com.