Vad är skillnaden mellan SDLC och STLC

Den största skillnaden mellan SDLC och STLC är att SDLC är en process som följs av mjukvaruorganisationer att leverera en arbetsprogramvara till slutanvändarna som innefattar planering, insamling av krav och analys, design, implementering, testning och underhåll. STLC är en process som följs av testteamet för att säkerställa kvaliteten på programvaran, som endast innefattar programvarutestning.

Programvaruutveckling är en komplicerad process. Även om det är enkelt och lättare att utveckla ett litet program är det ganska svårt att bygga företagsnivåprogram. Därför är det nödvändigt att använda en lämplig metod för att utveckla produkten. SDLC är den process som används av mjukvaruorganisationer för att leverera programvarukvalitet till slutanvändare. Den täcker hela programmets livscykel. Å andra sidan är STLC processen att följa aktiviteterna för att säkerställa programvarans kvalitet. I korthet är STLC en delmängd av SDLC.

Viktiga områden som omfattas

1. Vad är SDLC
     - Definition, Faser, Funktionalitet
2. Vad är STLC
     - Definition, Faser, Funktionalitet
3. Vad är förhållandet mellan SDLC och STLC
     - Föreningens sammanfattning
4. Vad är skillnaden mellan SDLC och STLC
     - Jämförelse av viktiga skillnader

Nyckelbegrepp

Programutveckling, SDLC, STLC

Vad är SDLC

SDLC står för Livscykel för mjukvaruutveckling. Det är en process som följs från början till leverans av mjukvaran till produktionsmiljön. Det finns olika faser i SDLC.

Figur 1: SDLC

Faser av SDLC

Planera - En grundläggande förståelse för projektet identifieras. Detta inkluderar även erkännande av risker, tekniska svårigheter, resurser.

Krav Samla och analysera -  Kravet samlas är gjort med olika metoder. Att möta kunden, träffa ledande befattningshavare, observera försäljnings- och marknadsföringsuppgifterna är några av dem. Då analyseras och dokumenteras den samlade informationen. Detta dokument kallas SRS (Software Requirement Specification). Den innehåller de krav som behöver utformas och utvecklas under projektets livscykel.

Design - Denna fas innefattar att designa alla arkitektoniska moduler, dataflödesrepresentationer med andra moduler. Det handlar också om databasdesign, klassdiagram och objektdiagramdesign.

Utveckling -  Projektet implementeras med lämpliga programmeringsspråk. Det handlar om att välja programmeringsspråk, integrerade utvecklingsmiljöer (IDE) och verktyg som kodredigerare, debuggers, etc..

Testning -  Det här är processen att verifiera och validera att mjukvaran har kommit till den förväntade nivån. Det finns två typer av test som kallas funktionell testning och icke-funktionell testning. Funktionell test kontrollerar programmets funktionalitet medan icke-funktionell test kontrollerar de funktionella aspekterna som prestanda, belastning, användbarhet etc..

Distribution och underhåll - Slutligen släpps produkten ut på marknaden. Enligt kundernas feedback läggs nya funktioner till produkten. De tekniska supportgrupperna tillhandahåller de tjänster som krävs för att behålla programvaran. Denna fas kallas också evolution.

Vad är STLC

STLC står för Programvara som testar livscykel. Det är processen som följs av testteamet att producera en kvalitetsprogramvara i slutet. STLC är en integrerad del av SDLC men STLC fokuserar endast på testning. Det börjar efter att ha förberett SRS-dokumentet i SDLC. Testgruppen förbereder testfallen och börjar utföra dem för att hitta defekter av programvaran.

Figur 2: Provtyper

STLC innebär att följa olika faser. Det är inte obligatoriskt att följa dem alla. Faserna i STLC kan bero på vilken typ av programvara, tillgängliga resurser och tid för testning, organisationens krav osv.

Faser av STLC

Krav Analys - Efter att ha förberett SRS-dokumentet startar testteamet en analys på hög nivå.

Testplanering - Denna fas är att planera strategier och metoder för testning.

Testfall Designing - Det handlar om att utveckla testfall. Ett testfall är en uppsättning åtgärder som utförs för att verifiera en viss funktion eller en mjukvarans funktionalitet.

Testmiljöuppsättning - Det är den fas där den integrerade miljön är redo att validera produkten.

Testutförande - Denna fas utför realtidsvalidering av programvaran. Det hittar faktiskt defekterna.

Test stängning - Efter avslutad testning dokumenteras testresultaten.

Förhållande mellan SDLC och STLC

  • STLC är en delmängd av SDLC.

Skillnad mellan SDLC och STLC

Definition

SDLC är processen som följs av utvecklingslaget inom mjukvaruorganisationen för att utveckla en mjukvaruprodukt. STLC är processen att utföra olika aktiviteter för att säkerställa programvarans kvalitet. Detta är den grundläggande skillnaden mellan SDLC och STLC.

Lång form

Programutveckling Livscykel är den långa formen av SDLC medan Software Testing Life Cycle är den långa formen av STLC.

Medverkan

En annan skillnad mellan SDLC och STLC är att medan SDLC täcker hela programmets livscykel är STLC begränsad endast till testfasen.

Kravet samlas

Vidare samlar verksamhetsanalytiker i SDLC krav och utvecklingsgruppen analyserar dem. De betraktar arkitekturen och designen. I STLC analyserar testteamet SRS-dokumentet för att identifiera testkraven.

Design

Vi kan hitta en annan skillnad mellan SDLC och STLC i deras respektive design. I SDLC innebär design att man utvecklar programvara på hög nivå och på låg nivå enligt krav. I STLC utförs design av testarkitekten eller en testledning. Han planerar teststrategierna för att identifiera testpunkter.

Utveckling

I SDLC börjar utvecklingsgruppen att utveckla mjukvaran i utvecklingsfasen. I STLC skriver testteamet testscenarier för att validera programvarans kvalitet. De skriver testfall för alla moduler med de förväntade utgångarna. Detta är också en viktig skillnad mellan SDLC och STLC.

Testning

I SDLC utförs testning, såsom testning av enheter, integrerad provning, systemtestning etc. av testare i testfasen. Testrapporten skickas till utvecklarna. De fixar defekterna och skickar den tillbaka till testteamet för retesting. Därför är STLC en del av SDLC. Följaktligen utförs samma uppgifter som nämns i SDLC i STLC.

Utveckla programvaran till produktion

I SDLC, efter testfasen, släpps dessutom programvaran till de riktiga slutanvändarna. I STLC utförs rök- och sanitetsprovning efter att ha installerats programvaran. Vidare utarbetas testrapporter, matriser och andra dokument av testteamet. Vi kan säga detta som den största skillnaden mellan SDLC och STLC.

Underhåll

I SDLC ger tekniskt team stöd för att uppdatera och underhålla programvaran. I STLC upprätthålls testfall och automatiseringskript för uppdateringar.

Slutsats

SDLC är processen som följs av mjukvaruorganisationen att leverera en arbetsprogramvara till slutanvändarna som innefattar planering, insamling av krav och analys, design, implementering, testning och underhåll. STLC är processen som följs av testteamet för att säkerställa kvaliteten på programvaran, som endast innefattar programvarutestning. Det är skillnaden mellan SDLC och STLC.

Referens:

1. "SDLC Översikt." Www.tutorialspoint.com, Tutorials Point, Tillgänglig här.
2. "STLC Översikt." Www.tutorialspoint.com, Tutorials Point, Tillgänglig här.

Image Courtesy:

1. "SDLC - Software Development Life Cycle" Av Cliffydcw - Egent arbete (CC BY-SA 3.0) via Commons Wikimedia
2. "Services stlc new" Genom Effone software inc - Egent arbete (CC BY-SA 4.0) via Commons Wikimedia