Cascade livscykelmodell: fördelar och nackdelar
Cascade livscykelmodell: fördelar och nackdelar

Video: Cascade livscykelmodell: fördelar och nackdelar

Video: Cascade livscykelmodell: fördelar och nackdelar
Video: Mål- och budgetfullmäktige 2024, April
Anonim

Programvaruutveckling är inte som traditionell teknik. En metodik är vad som används av utvecklare för att bryta ner arbetet i hanterbara progressiva steg där varje kan ses över för att säkerställa kvalitet. Teams arbetar tillsammans med kunden för att skapa en färdig mjukvaruprodukt med hjälp av en av mjukvaruutvecklingsmetoderna. De mest populära av dem är spiral-, vattenfalls- eller kaskadmodellen (vattenfall); RAD, eller Rapid Application Development; Agile modell, eller flexibel och iterativ, eller iterativ modell. Det finns andra alternativ, men i den här artikeln kommer vi bara att överväga livscykelmodellen för vattenfallet, eller vattenfallet, och även utforska dess fördelar och nackdelar. Låt oss omedelbart förklara att det är en sekvens av vissa steg, och dess egenhet är att det nya stadietinte möjligt förrän den föregående har slutförts.

Historien om vattenfallsmodellen

Metodologi i sin traditionella form lämnar lite utrymme för oväntade förändringar. Om utvecklingsteamet inte är för stort och projekten är förutsägbara, kan Waterfall se till att de slutförs i tid.

folk argumenterar
folk argumenterar

Utvecklingsmodellen för vattenfall har funnits i över fyrtio år. Det beskrevs först i en artikel från 1970 av W. Royce som en av de allra första officiella modellerna för utvecklingsprocessen. Det beskrevs som ineffektivt för stora mjukvaruutvecklingsprojekt, men ingen förbjöd användningen för små. Nästan ett halvt sekel efter att den upptäcktes är denna teknik fortfarande aktuell i dagens affärsvärld. Den har kallats den föråldrade modellen och behandlas med visst förakt på grund av att den traditionella projektledningsmetoden är föråldrad. Men Waterfall är ett användbart och förutsägbart tillvägagångssätt om kraven är fasta, väldokumenterade och tydliga, om tekniken är begriplig och när projektet inte tar mycket tid att genomföra. I det här fallet kan vattenfallsmodellen för programvarans livscykel ge ett mer förutsägbart slutresultat för en given budget, tidsram och arbetsomfattning.

Vad är modellen för vattenfallsutveckling?

Vattenfallsmodellen kan beskrivas som en linjär, sekventiell utveckling av ett projekt, där processer hela tiden går från krav till design, sedan till implementering, verifiering och implementering medefterföljande löpande underhåll. Man tror att kaskadlivscykelmodellen skapades tack vare W. Royce, även om han själv använde en iterativ utvecklingsmodell.

Fördelar med vattenfallets livscykelmodell
Fördelar med vattenfallets livscykelmodell

Huvudvikten i vattenfallsutvecklingen ligger på planering, timing, mål, budgetar och slutligen implementeringen av hela systemet som en enda enhet. De främsta fördelarna här är enkel planering och implementering framåt och bakåt.

Beskrivning av vattenfallsmodellen

Jämfört med andra metoder fokuserar Waterfall mer än andra på en tydlig, definierad uppsättning steg. Den ursprungliga modellen bestod av fem steg. Det beskrivs ofta som en linjär sekventiell livscykelmodell. Detta innebär att den följer en enkel fasstruktur, där resultaten av varje fas går vidare till nästa utvecklingsnivå. Huvudstegen är:

  1. Samla krav och skapa dokumentation.
  2. Design och systemutveckling.
  3. Implementering.
  4. Test och distribution.
  5. Support.
Fördelar med vattenfallets livscykelmodell
Fördelar med vattenfallets livscykelmodell

Team måste slutföra hela steget innan de går vidare till nästa, så om något inte är klart inom en viss deadline blir det direkt märkbart. Dessutom, till skillnad från Six Sigma eller Scrum, kräver Waterfall ingen certifiering eller särskild utbildning för projektledare eller anställda.

Kritik mot vattenfallsmodellen

Kaskadmodell för informationssystems livscykelhar kritiserats för sin oflexibilitet efter slutförandet av varje steg, och för att försena klientens förmåga att ge feedback. Denna metodik kan dock fungera bra för mindre projekt med begränsad budget. Det jämförs ofta med en välkänd projektlivscykelmetod, PRINCE2, som skapades av den brittiska regeringen. Denna metod används fortfarande inom den offentliga sektorn. En av de viktigaste skillnaderna mellan PRINCE2 och Waterfall Life Cycle Model är att den senare kräver en skriftlig beskrivning av alla krav från början, eftersom de kan vara svåra att revidera senare. Innan skapandet av någon kod börjar måste de vara exakt definierade och fixerade. Detta är en viktig fördel med vattenfallets livscykelmodell.

För- och nackdelar med vattenfallsmodellen

Eftersom teknisk dokumentation är en nödvändig del av den inledande kravutvecklingsfasen, betyder det att alla teammedlemmar tydligt förstår målen för projektet. Nya utvecklare kan snabbt förstå reglerna för kodskapande och gå med i arbetsflödet utan problem. När man använder en vattenfallsmodell av ett informationssystems eller projekts livscykel säkerställer ett stegvis genomförande disciplin.

nackdelar med vattenfallets livscykelmodell
nackdelar med vattenfallets livscykelmodell

Varje steg har en väldefinierad utgångspunkt och slutsats, vilket gör det enkelt att spåra framsteg. Detta hjälper till att minska eventuella avvikelser i projektgenomförandet från överenskomna tidslinjer.ramverk. I denna modell, i motsats till spiralen, betraktas programvaran som en helhet. Därför, förutsatt att alla krav är uppfyllda, fungerar det mer effektivt. Om vi fortsätter att jämföra livscykelmodellerna för kaskad och spiral kan vi dra slutsatsen att den första är mer universell och kan tillämpas inom olika områden.

kravförhandlingsfas

En annan fördel med livscykelmodellen för vattenfall är att kostnaderna kan uppskattas med en ganska hög grad av noggrannhet när alla krav har identifierats. Om det tillämpas betyder det att alla testscenarier redan i det första skedet beskrivs i detalj i funktionsspecifikationen, vilket gör testprocessen enklare och mer transparent. Och redan innan utvecklingen av mjukvaran är designen genomarbetad i detalj, vilket gör behoven och resultatet tydligt för alla.

vattenfalls livscykelmodell
vattenfalls livscykelmodell

En av de fantastiska sakerna med att använda Waterfall är att sträva efter slutprodukten, eller slutresultatet, från första början. Därför måste lagen undvika att avvika från målet. För mindre projekt där avsikten är ganska tydlig gör detta steg teamet medvetet om det övergripande målet från början, vilket minskar chansen att gå vilse i detaljerna när projektet går framåt. Waterfalls tillvägagångssätt är mycket metodiskt, varför det understryker vikten av tydlig kommunikation i varje led. I mjukvaruutvecklingsprocessen dyker nya människor upp vid varje nytt steg. Därför är det viktigt att sträva efterför att dokumentera information under hela projektets livscykel.

Nackdelar med livscykelmodellen för vattenfall

Möjliga utvecklingsfrågor kan undersökas och lösas under designfasen. Alternativa lösningar utarbetas också och de optimala väljs ut. Allt detta sker innan projektet startar. Många organisationer uppskattar uppmärksamheten på dokumentation redan från början, eftersom det också innebär att det inte ska bli några överraskningar med slutprodukten. Men i praktiken går det sällan att göra utan att göra ändringar. Det är ofta svårt för kunder att förstå sina egna behov i termer av funktionsspecifikation först i kravstadiet. Det betyder att de kan ändra sig när de ser den slutliga produkten. Ett sådant problem är svårt att lösa. Ibland måste en applikation göras om nästan helt.

Brist på flexibilitet i vattenfallsmodellen

En annan nackdel med livscykelmodellen för cascading IP (eller projekt) är den potentiella bristen på flexibilitet. Frågor kan uppstå för att hantera nya ändringar eller ändringar i krav som har inträffat sedan de första samråden.

kaskadlivscykelmodellen används
kaskadlivscykelmodellen används

Justeringar på grund av affärsplaner eller marknadspåverkan kanske inte har tagits med i planeringen. Projekt kan också ta längre tid att slutföra jämfört med att använda en iterativ metod som Agile.

Viktigt när du använder vattenfallsmetodik

När det kommer till att utveckla Waterfall är det mycket viktigt att mjukvaruutvecklare effektivt kan vägleda och ge råd till kunder för att komma runt alla dessa problem senare. Ofta är den mest kritiska aspekten av att tillämpa livscykelmodellen för vattenfall att kunderna inte riktigt vet vad de verkligen vill ha. I många fall sker verklig tvåvägsinteraktion mellan utvecklare och klienter inte förrän klienten har sett modellen i aktion.

kaskadmodell av informationssystemets livscykel
kaskadmodell av informationssystemets livscykel

Som jämförelse, i Agile utveckling kan klienten se fragment av arbetskoden som skapades under arbetet med projektet. Till skillnad från Scrum, som delar upp projekt i separata sprints, fokuserar Waterfall alltid på slutmålet. Om ditt team har ett specifikt mål med ett tydligt slutdatum, eliminerar Waterfall risken att missa en deadline när du arbetar med det. Baserat på dessa för- och nackdelar rekommenderas vattenfallsutveckling i allmänhet för projekt som sannolikt inte kommer att förändras eller behöver ny utveckling under projektets livslängd.

Rekommenderad: