SDLC – Agile Model (Dansk)

Annoncer

Agil SDLC-model er en kombination af iterative og inkrementelle procesmodeller med fokus på procestilpasningsevne og kundetilfredshed ved hurtig levering af fungerende softwareprodukt. Agile Metoder opdeler produktet i små trinvise opbygninger. Disse builds leveres i iterationer. Hver iteration varer typisk fra ca. en til tre uger. Hver iteration involverer tværfunktionelle teams, der arbejder samtidigt på forskellige områder som –

  • Planlægning
  • Kravsanalyse
  • Design
  • Kodning
  • Unit Testing og
  • Acceptance Testing.

I slutningen af iteration vises et fungerende produkt for kunden og vigtige interessenter.

Hvad er Agile?

Agile model mener, at hvert projekt skal håndteres forskelligt, og de eksisterende metoder skal skræddersys, så de bedst passer til projektkravene. I Agile er opgaverne opdelt i tidsbokse (små tidsrammer) for at levere specifikke funktioner til en frigivelse.

Iterativ tilgang er taget, og arbejdssoftware build leveres efter hver iteration. Hver build er inkrementel med hensyn til funktioner; den endelige build indeholder alle de funktioner, der kræves af kunden.

Her er en grafisk illustration af den agile model –

The Agile tankeproces var startet tidligt i softwareudviklingen og begyndte at blive populær med tiden på grund af dens fleksibilitet og tilpasningsevne.

De mest populære Agile-metoder inkluderer Rational Unified Process (1994), Scrum (1995), Crystal Clear, Ekstrem programmering (1996), Adaptiv softwareudvikling, Feature Driven Development og Dynamic Systems Development Method (DSDM) (1995). Disse kaldes nu kollektivt Agile Methodologies, efter at Agile Manifesto blev offentliggjort i 2001.

Følgende er Agile Manifesto-principperne –

  • Enkeltpersoner og interaktioner – I agil udvikling er selvorganisering og motivation vigtige, ligesom interaktioner som samlokalisering og parprogrammering.

  • Arbejdssoftware – Demo-arbejdssoftware betragtes som det bedste kommunikationsmiddel med kunderne om at forstå deres krav i stedet for bare afhængigt af dokumentation.

  • Kundesamarbejde – Da kravene ikke kan samles helt i starten af projektet på grund af forskellige faktorer, kontinuerlig kundeinteraktion er meget vigtigt for at få de rette produktkrav.

  • Svar på ændringer – Agile Development fokuserer på hurtige reaktioner på ændringer og kontinuerlig udvikling.

Agile vs traditionelle SDLC-modeller

Agile er baseret på den adaptive software udviklingsmetoder, mens de traditionelle SDLC-modeller som vandfaldsmodellen er baseret på en forudsigende tilgang. Forudsigelige teams i de traditionelle SDLC-modeller arbejder normalt med detaljeret planlægning og har en komplet prognose for de nøjagtige opgaver og funktioner, der skal leveres i de næste par måneder eller i produktets livscyklus.

Forudsigelige metoder afhænger helt af kravanalysen og planlægningen udført i begyndelsen af cyklussen. Eventuelle ændringer, der skal integreres, gennemgår en streng styring og prioritering af ændringskontrol.

Agile bruger en adaptiv tilgang, hvor der ikke er nogen detaljeret planlægning, og der er klarhed over fremtidige opgaver kun med hensyn til hvilke funktioner der skal udvikles . Der er funktionsdrevet udvikling, og teamet tilpasser sig dynamisk de skiftende produktkrav. Produktet testes meget ofte gennem frigivelses-iterationer, hvilket minimerer risikoen for større fejl i fremtiden.

Kundeinteraktion er rygraden i denne Agile-metode, og åben kommunikation med minimumsdokumentation er de typiske træk ved Agilt udviklingsmiljø. De agile teams arbejder i tæt samarbejde med hinanden og er oftest placeret på samme geografiske placering.

Agil model – Fordele og ulemper

Agile metoder accepteres bredt i softwaren verden for nylig. Imidlertid er denne metode muligvis ikke altid egnet til alle produkter. Her er nogle fordele og ulemper ved Agile-modellen.

Fordelene ved Agile Model er som følger –

  • Er en meget realistisk tilgang til softwareudvikling.

  • Fremmer teamwork og krydstræning.

  • Funktionalitet kan udvikles hurtigt og demonstreres.

  • Ressourcekrav er minimale.

  • Velegnet til faste eller skiftende krav

  • Leverer tidlige delvise arbejdsløsninger .

  • God model til miljøer, der ændrer sig konstant.

  • Minimale regler, let anvendelig dokumentation.

  • Muliggør samtidig udvikling og levering inden for en samlet planlagt kontekst.

  • Lille eller ingen planlægning krævet.

  • Let at administrere.

  • Giver udviklere fleksibilitet.

Ulemperne ved Agile-modellen er som følger –

  • Ikke egnet til håndtering af komplekse afhængigheder.

  • Mere risiko for bæredygtighed, vedligeholdelse og udvidelse.

  • En overordnet plan, en agil leder og agil PM-praksis er et must, uden hvilken det ikke fungerer.

  • Streng leveringsadministration dikterer omfanget, funktionaliteten, der skal leveres, og justeringer for at overholde deadlines.

  • Afhænger meget af kundeinteraktion, så hvis kunden ikke er klar, kan teamet køres ind den forkerte retning.

  • Der er en meget høj individuel afhængighed, da der genereres minimumsdokumentation.

  • Overførsel af teknologi for nye teammedlemmer kan være ret chal forlænger på grund af manglende dokumentation.

Annoncer

Write a Comment

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *