Det vigtigste forskel mellem SDLC og Agile Methodology er det SDLC er processen med at dele softwareudviklingsarbejde i forskellige faser for at designe og udvikle software af høj kvalitet, mens Agile Methodology er en SDLC-model. Agile Methodology er en kombination af iterative og inkrementelle procesmodeller, der fokuserer på procestilpasningsevne og kundetilfredshed ved hurtig levering af fungerende softwareprodukt.
1. Oversigt og nøgleforskel
2. Hvad er SDLC
3. Hvad er smidig metode
4. Forholdet mellem SDLC og Agile Methodology
5. Sammenligning side ved side - SDLC vs Agile metodologi i tabelform
6. Resume
SDLC står for Softwareudvikling Livscyklus. Når du bygger software, er der visse faser, der skal følges. Hver softwareudviklingsorganisation følger SDLC til softwareprojektet. Der er forskellige faser i SDLC. En grundlæggende forståelse af problemet identificeres i planlægningsfasen. I denne fase identificeres også risici forbundet med projektet, tekniske vanskeligheder, ressourcer, udviklingsindsats.
I kravfasen er den første aktivitet at indsamle og analysere krav. At få kundeinput, møde seniorledere og få detaljer om salg og markedsføring sker ved kravsamling. De indsamlede krav skal dokumenteres korrekt. Dette dokument er kendt som Specifikation af softwarekrav (SRS). Det indeholder de produktkrav, der skal designes og udvikles i løbet af projektets livscyklus.
Softwaredesignet er afledt af SRS. Mere end en designtilgang til produktarkitekturen er foreslået og dokumenteret i en Specifikation af designdokumenter (DDS). I denne fase er alle arkitektoniske moduler, dataflowrepræsentationen med de eksterne moduler osv. Designet.
I implementeringen implementeres projektet ved hjælp af det passende programmeringssprog. Forskellige programmeringsværktøjer såsom compilers, tolke, kodeditorer, IDE'er og debuggers kan bruges til at skrive og teste programmerne. Programmeringssprog kan vælges i henhold til applikationen. Enhedstestingen for det udviklede modul udføres i denne fase.
Testning er processen med at verificere og validere, at et softwareprogram fungerer som forventet. Det bruges til at finde ud af, om det endelige projekt er nået de forventede krav. Testning involverer integrationstest, systemtest osv. Integrationstest er at udføre test mellem to moduler. Systemtestingen er den komplette projekttestning.
Figur 01: SDLC
Endelig frigives produktet til markedet. Afhængig af kundens feedback kan nye funktioner tilføjes produktet. Vedligeholdelse og krævede tjenester leveres til de eksisterende kunder. Dette er de vigtigste faser af SDLC.
Under softwareudviklingsprocessen skal en softwareudviklingscyklusmodel følges. Disse modeller er kendt som Softwareudviklingsprocesmodel. Hver proces følger et bestemt antal trin, der er unikke for sin type for at gennemføre softwareprojektet. Nogle eksempler på SDLC-modeller er vandfaldsmodel, iterativ model, spiralmodel, v-model, prototypemodel, hurtig applikationsudvikling osv..
Agile metodik er også en SDLC-model. Det er en kombination af iterative og inkrementelle procesmodeller. Denne model hjælper med at tilpasse sig ændringerne i kravene. I denne model er projektet opdelt i flere moduler. Antag, at projektet er opdelt i tre moduler som A, B og C. Første modul A gennemgår planlægning, kravsamling og analyse, design, implementering og test. Når det er afsluttet, starter B-modulet. Det går også gennem den samme fase som modulet A. Når B er færdig, starter modulet C. Efter afslutningen af iterationen kan et arbejdsmodul leveres til kunden.
Der er mange fordele ved Agile. I den traditionelle vandfaldsmodel kan de, når kravene er defineret, ikke ændres. Men i Agile kan kravene ændres. Der er også mere samarbejde mellem udvikleren og kunden. Det forbedrer teamwork og gør projektet let at administrere. Generelt er Agile en populær SDLC-model på grund af dens fleksibilitet og tilpasning. Det er muligvis ikke egnet til et komplekst projekt. Andre ulemper er, at kunden altid kan ændre kravene, og det er nødvendigt at have en smidig leder til at guide projektet.
SDLC vs Agile Methodology | |
SDLC er processen med at opdele softwareudviklingsarbejde i forskellige faser for at forbedre design, produktstyring og projektstyring. | Agile Methodology en softwareudviklingsmetode, hvor kravene og løsningen udvikler sig gennem samarbejdsindsatsen fra selvorganiserende og tværfunktionalitetsteam og deres slutbrugere. |
Anvendelse | |
SDLC bruges til at organisere styringen af softwareudviklingsarbejdet. | Agile bruges til at forbedre fleksibiliteten og tilpasse sig kravændringerne i projektet. |
Denne artikel diskuterede forskellen mellem SDLC og Agile. Forskellen mellem SDLC og Agile Methodology er, at SDLC er processen med at opdele softwareudviklingsarbejde i en bestemt fase for at designe og udvikle en software af høj kvalitet, mens Agile Methodology er en SDLC-model.
1. "Softwareudviklingsproces." Wikipedia, Wikimedia Foundation, 28. mar. 2018. Tilgængelig her
2. “SDLC Agile Model.” Www.tutorialspoint.com, Tutorials Point, 8. januar 2018. Findes her