what is software quality assurance
Hvad er softwarekvalitetssikring?
Software kvalitetssikring (SQA) er en proces, der sikrer, at alle softwaretekniske processer, metoder, aktiviteter og arbejdsgenstande overvåges og overholder de definerede standarder. Disse definerede standarder kan være en eller en kombination af en hvilken som helst ISO 9000, CMMI-model, ISO15504 osv.
SQA inkorporerer alle softwareudviklingsprocesser, der starter fra at definere krav til kodning til frigivelse. Dets primære mål er at sikre kvalitet.
Hvad du vil lære:
- Software kvalitetssikringsplan
- SQA-aktiviteter
- Softwarekvalitetssikringsstandarder
- Elementer af softwarekvalitetssikring
- SQA-teknikker
- Konklusion
- Anbefalet læsning
Software kvalitetssikringsplan
Forkortet som SQAP, indeholder softwarekvalitetssikringsplanen de procedurer, teknikker og værktøjer, der anvendes til at sikre, at et produkt eller en tjeneste er i overensstemmelse med kravene defineret i SRS (specifikation af softwarekrav).
gratis dvd-kopimaskine til Windows 10
Planen identificerer SQA-ansvaret for et team, viser de områder, der skal gennemgås og revideres. Det identificerer også SQA-arbejdsprodukter.
SQA-plandokumentet består af nedenstående sektioner:
- Formål sektion
- Reference afsnit
- Sektion til styring af softwarekonfiguration
- Afsnittet om problemrapportering og korrigerende handlinger
- Afsnittet Værktøjer, teknologier og metoder
- Kodekontrol sektion
- Optegnelser: Indsamling, vedligeholdelse og opbevaring
- Testmetode
SQA-aktiviteter
Nedenfor er listen over SQA-aktiviteter:
# 1) Oprettelse af en SQA Management Plan:
Den vigtigste aktivitet inkluderer at fastlægge en ordentlig plan for, hvordan SQA skal udføres i dit projekt.
Sammen med hvilken SQA-tilgang du vil følge, hvilke tekniske aktiviteter der udføres, og det inkluderer også at sikre, at du har det rigtige talentmix i dit team.
# 2) Indstilling af kontrolpunkter:
SQA-teamet opretter forskellige kontrolpunkter, i henhold til hvilke det evaluerer kvaliteten af projektaktiviteterne på hvert kontrolpunkt / projektfase. Dette sikrer regelmæssig kvalitetskontrol og arbejde i henhold til tidsplanen.
# 3) Anvend softwareteknik:
Anvendelse af nogle softwaretekniske teknikker hjælper en softwaredesigner med at opnå specifikationer af høj kvalitet. For at indsamle information kan en designer bruge teknikker såsom interviews og FAST (Functional Analysis System Technique).
Senere, baseret på de indsamlede oplysninger, kan softwaredesigneren forberede projektestimeringen ved hjælp af teknikker som WBS (work breakdown structure), SLOC (source line of codes) og FP (function point) estimation.
# 4) Udførelse af formelle tekniske anmeldelser:
En FTR udføres for at evaluere prototypens kvalitet og design.
I denne proces afholdes der et møde med det tekniske personale for at diskutere de faktiske kvalitetskrav til softwaren og designkvaliteten af prototypen. Denne aktivitet hjælper med at opdage fejl i den tidlige fase af SDLC og reducerer omarbejdning i de senere faser.
# 5) At have en multiteststrategi:
Ved multiteststrategi mener vi, at man ikke skal stole på en enkelt testtilgang, i stedet skal der udføres flere typer test, så softwareproduktet kan testes godt fra alle vinkler for at sikre bedre kvalitet.
# 6) Håndhævelse af procesoverholdelse:
Denne aktivitet insisterer på behovet for overholdelse af processer under softwareudviklingsprocessen. Udviklingsprocessen skal også holde sig til de definerede procedurer.
Denne aktivitet er en blanding af to underaktiviteter, som forklares detaljeret nedenfor:
(i) Produktvurdering:
Denne aktivitet bekræfter, at softwareproduktet opfylder kravene, der blev opdaget i projektstyringsplanen. Det sikrer, at de fastsatte standarder for projektet følges korrekt.
(ii) Procesovervågning:
Denne aktivitet verificerer, om de korrekte skridt blev taget under softwareudvikling. Dette gøres ved at matche de faktisk taget skridt med de dokumenterede trin.
# 7) Kontrollerende ændring:
I denne aktivitet bruger vi en blanding af manuelle procedurer og automatiserede værktøjer til at have en mekanisme til ændringskontrol.
hvad er netværkssikkerhedsnøglen på en router
Ved at validere ændringsanmodningerne, evaluere ændringens art og kontrollere ændringseffekten sikres det, at softwarekvaliteten opretholdes under udviklings- og vedligeholdelsesfaserne.
# 8) Mål ændringseffekt:
Hvis der rapporteres om en defekt af QA-teamet, retter det pågældende team fejlen.
Herefter skal QA-teamet bestemme virkningen af den ændring, der er forårsaget af denne mangelfiksering. De skal ikke kun teste, om ændringen har rettet manglen, men også om ændringen er kompatibel med hele projektet.
Til dette formål bruger vi softwarekvalitetsmålinger, der giver ledere og udviklere mulighed for at observere aktiviteterne og de foreslåede ændringer fra starten til slutningen af SDLC og iværksætte korrigerende handlinger, hvor det er nødvendigt.
# 9) Udførelse af SQA-revisioner:
SQA-revisionen inspicerer hele den faktiske SDLC-proces efterfulgt af en sammenligning med den etablerede proces.
Det kontrollerer også, hvad der er rapporteret af holdet i statusrapporterne faktisk blev udført eller ej. Denne aktivitet afslører også problemer med manglende overholdelse.
# 10) Vedligeholdelse af poster og rapporter:
Det er afgørende at opbevare den nødvendige dokumentation relateret til SQA og dele de krævede SQA-oplysninger med interessenterne. Testresultaterne, revisionsresultater, gennemgangsrapporter, ændringsanmodningsdokumentation osv. Skal opbevares til fremtidig reference.
# 11) Administrer gode relationer:
Faktisk er det meget vigtigt at opretholde harmoni mellem QA og udviklingsteamet.
Vi hører ofte, at testere og udviklere ofte føler sig bedre end hinanden. Dette bør undgås, da det kan påvirke den samlede projektkvalitet.
Softwarekvalitetssikringsstandarder
Generelt kan SQA kræve overensstemmelse med en eller flere standarder.
Nogle af de mest populære standarder diskuteres nedenfor:
ISO 9000: Denne standard er baseret på syv kvalitetsstyringsprincipper, som hjælper organisationer med at sikre, at deres produkter eller tjenester er tilpasset kundens behov. '
7 principper i ISO 9000 er afbildet i nedenstående billede:
CMMI niveau: CMMI står for Kapacitet modenhedsmodel Integration . Denne model stammer fra software engineering. Det kan bruges til at styre procesforbedring gennem et projekt, en afdeling eller en hel organisation.
5 CMMI-niveauer og deres egenskaber er beskrevet i nedenstående billede:
En organisation vurderes og tildeles en modenhedsgrad (1-5) baseret på typen af vurdering.
Test Maturity Model integration (TMMi): Baseret på CMMi fokuserer denne model på modenhedsniveauer i softwarekvalitetsstyring og testning.
5 TMMi niveauer er afbildet i nedenstående billede:
bredde første søgning c ++ træ
Når en organisation bevæger sig på et højere modenhedsniveau, opnår den en højere kapacitet til at producere produkter af høj kvalitet med færre mangler og opfylder tæt forretningskravene.
Elementer af softwarekvalitetssikring
Der er 10 vigtige elementer i SQA, som er anført nedenfor til din reference:
- Standarder for softwareudvikling
- Tekniske anmeldelser og revisioner
- Softwaretest til kvalitetskontrol
- Fejlindsamling og analyse
- Forandringsledelse
- Uddannelsesprogrammer
- Leverandørledelse
- Sikkerhedsstyring
- Sikkerhed
- Risikostyring
SQA-teknikker
Der er flere teknikker til SQA. Auditing er den vigtigste teknik, der er bredt anvendt. Vi har dog også et par andre vigtige teknikker.
Forskellige SQA-teknikker inkluderer:
- Revision: Revision involverer inspektion af arbejdsprodukterne og tilhørende information for at afgøre, om sættet med standardprocesser blev fulgt eller ej.
- Gennemgå : Et møde, hvor softwareproduktet undersøges af både interne og eksterne interessenter for at søge deres kommentarer og godkendelse.
- Kodeinspektion: Det er den mest formelle gennemgang, der foretager statisk test for at finde fejl og undgå defektvækst i de senere stadier. Det udføres af en uddannet mægler / peer og er baseret på regler, tjekliste, indgangs- og udgangskriterier. Anmelderen skal ikke være forfatter til koden.
- Designinspektion: Designinspektion udføres ved hjælp af en tjekliste, der inspicerer nedenstående områder af softwaredesign:
- Generelle krav og design
- Funktionelle og interface specifikationer
- Konventioner
- Kravets sporbarhed
- Strukturer og grænseflader
- Logik
- Ydeevne
- Fejlhåndtering og gendannelse
- Testbarhed, udvidelighed
- Kobling og samhørighed
- Simulation: Simulation er et værktøj, der modellerer den virkelige situation for praktisk talt at undersøge opførelsen af det undersøgte system.
- Funktionel testning: Det er en QA-teknik, der verificerer, hvad systemet gør uden at overveje, hvordan det gør. Denne type test af sort boks fokuserer primært på at teste systemspecifikationerne eller funktionerne.
- Standardisering: Standardisering spiller en afgørende rolle i kvalitetssikring. Det mindsker tvetydigheden og gætteriet og sikrer således kvalitet.
- Statisk analyse: Det er en softwareanalyse, der udføres af et automatiseret værktøj uden faktisk at udføre programmet. Denne teknik bruges meget til kvalitetssikring i medicinsk, nuklear og luftfartssoftware. Software-metrics og reverse engineering er nogle populære former for statisk analyse.
- Gennemgang: Gennemgang af software eller gennemgang af kode er en slags peer review, hvor udvikleren guider medlemmerne af udviklingsteamet til at gennemgå produktet og rejse forespørgsler, foreslå alternativer, fremsætte kommentarer til mulige fejl, standardovertrædelser eller andre problemer.
- Sti-test: Det er en hvid boks testteknik hvor den samlede filialdækning sikres ved at udføre hver uafhængige sti mindst én gang.
- Stresstest: Denne type test udføres for at kontrollere, hvor robust et system er ved at teste det under tung belastning, dvs. ud over normale forhold.
- Seks Sigma: Six Sigma er en kvalitetssikringsmetode, der sigter mod næsten perfekte produkter eller tjenester. Det anvendes bredt på mange områder, herunder software. Hovedmålet med seks sigma er procesforbedringer, så den producerede software er 99,76% fejlfri.
Konklusion
SQA er en paraplyaktivitet, der anvendes gennem softwarelevecyklussen.
Kvalitetssikring af software er meget vigtigt for, at dit softwareprodukt eller -tjeneste lykkes på markedet og overlever op til kundens forventninger.
Der er forskellige aktiviteter, standarder og teknikker, som du skal følge for at sikre, at den leverbare software er af høj kvalitet og passer tæt sammen med forretningsbehovet.
Håber du ville have fået en klar idé om begrebet softwarekvalitetssikring gennem denne informative artikel !!
Anbefalet læsning
- Softwaretest og kvalitetssikringscertificeringer - Del 2
- Hvad er kvalitetsattributterne?
- Falske Gud for kvalitet versus sande mennesker - Hvem er ansvarlig for softwarekvalitet?
- Forskellen mellem kvalitetssikring og kvalitetskontrol (QA vs QC)
- Perfekt softwaretest CV-guide (med software-test CV-prøve)
- Sådan bruges Poka-Yoke (Mistake Proofing) -teknik til at forbedre softwarekvaliteten
- Gensidig forståelse i test: En nøgle til levering af kvalitetssoftware
- Softwaretest QA Assistant Job