Wat is kwaliteitsborging (QA)? Proces, methoden, voorbeelden

Inhoudsopgave:

Anonim

Voordat we kwaliteitsborging leren, laten we het eerst begrijpen:

Wat is kwaliteit?

Kwaliteit is buitengewoon moeilijk te definiëren en er wordt eenvoudig gezegd: "Geschikt voor gebruik of doel." Het draait allemaal om het voldoen aan de behoeften en verwachtingen van klanten met betrekking tot functionaliteit, ontwerp, betrouwbaarheid, duurzaamheid en prijs van het product.

Wat is zekerheid?

Zekerheid is niets anders dan een positieve verklaring over een product of dienst, die vertrouwen geeft. Het is de zekerheid van een product of dienst, dat het goed zal werken. Het biedt een garantie dat het product zonder problemen zal werken volgens de verwachtingen of vereisten.

Kwaliteitsborging bij softwaretests

Kwaliteitsborging bij softwaretests wordt gedefinieerd als een procedure om de kwaliteit te waarborgen van softwareproducten of -diensten die door een organisatie aan de klanten worden geleverd. Kwaliteitsborging is gericht op het verbeteren van het softwareontwikkelingsproces en het efficiënt en effectief maken volgens de kwaliteitsnormen die zijn gedefinieerd voor softwareproducten. Kwaliteitsborging is in de volksmond bekend als QA-testen.

In deze tutorial leer je-

  • Hoe kwaliteitsborging te doen: volledig proces
  • Wat is kwaliteitscontrole?
  • Verschil tussen kwaliteitscontrole en kwaliteitsborging?
  • Verschillen tussen SQA en Software Testing
  • Best practices voor kwaliteitsborging
  • Functies voor kwaliteitsborging
  • Certificeringen voor kwaliteitsborging
  • CMMI-niveau
  • Test Maturity Model (TMM)

Hoe kwaliteitsborging te doen: volledig proces

De methodologie voor kwaliteitsborging heeft een gedefinieerde cyclus die PDCA-cyclus of Deming-cyclus wordt genoemd. De fasen van deze cyclus zijn:

  • Plan
  • Doen
  • Controleren
  • handelen
Kwaliteitsborgingsproces

Deze bovenstaande stappen worden herhaald om ervoor te zorgen dat de processen die in de organisatie worden gevolgd periodiek worden geëvalueerd en verbeterd. Laten we de bovenstaande QA-processtappen in detail bekijken -

  • Plannen - De organisatie moet de procesgerelateerde doelstellingen plannen en vaststellen en de processen bepalen die nodig zijn om een ​​hoogwaardig eindproduct te leveren.
  • Do - Ontwikkeling en testen van Processen en ook "doe" veranderingen in de processen
  • Check - Monitoring van processen, pas de processen aan en controleer of het voldoet aan de vooropgestelde doelstellingen
  • Act - Een Quality Assurance-tester moet acties implementeren die nodig zijn om verbeteringen in de processen te bereiken

Een organisatie moet kwaliteitsborging gebruiken om ervoor te zorgen dat het product wordt ontworpen en geïmplementeerd met de juiste procedures. Dit helpt problemen en fouten in het eindproduct te verminderen.

Wat is kwaliteitscontrole?

Kwaliteitscontrole, in de volksmond afgekort als QC. Het is een Software Engineering-proces dat wordt gebruikt om de kwaliteit van een product of dienst te waarborgen. Het behandelt niet de processen die worden gebruikt om een ​​product te maken; het onderzoekt eerder de kwaliteit van de "eindproducten" en het uiteindelijke resultaat.

Het belangrijkste doel van kwaliteitscontrole is om te controleren of de producten voldoen aan de specificaties en eisen van de klant. Als er een probleem of probleem wordt vastgesteld, moet dit worden opgelost voordat het aan de klant wordt geleverd.

QC beoordeelt mensen ook op hun vaardigheden op kwaliteitsniveau en geeft training en certificeringen. Deze evaluatie is vereist voor de op service gebaseerde organisatie en helpt de klanten "perfecte" service te bieden.

Verschil tussen kwaliteitscontrole en kwaliteitsborging?

Soms wordt QC verward met de QA. Kwaliteitscontrole is om het product of de dienst te onderzoeken en het resultaat te controleren. Kwaliteitsborging in Software Engineering is om de processen te onderzoeken en wijzigingen aan te brengen in de processen die tot het eindproduct hebben geleid.

Kwaliteitscontrole versus kwaliteitsborging

Voorbeelden van QC- en QA-activiteiten zijn als volgt:

Kwaliteitscontroleactiviteiten Kwaliteitsborgingsactiviteiten
Doorloop Kwaliteitsaudit
Testen Proces definiëren
Inspectie Tool identificatie en selectie
Checkpoint beoordeling Training van kwaliteitsnormen en -processen

De bovenstaande activiteiten hebben betrekking op kwaliteitsborgings- en controlemechanismen voor elk product en niet in wezen op software . Met betrekking tot software

  • QA wordt SQA (Software Quality Assurance)
  • QC wordt Software Testing .

Verschillen tussen SQA en Software Testing

In de volgende tabel worden de verschillen tussen SQA en softwaretests uitgelegd:

SQA

Software testen

Software Quality Assurance gaat over engineeringprocessen die kwaliteit garanderen Softwaretests zijn het testen van een product op problemen voordat het product live gaat
Betreft activiteiten die verband houden met de implementatie van processen, procedures en normen. Voorbeeld - Audits-training Betreft actieven met betrekking tot verificatie van product Voorbeeld - Review testen
Procesgericht Productgericht
Preventieve techniek Corrigerende techniek
Proactieve maatregel Reactieve maatregel
De scope van SQA is van toepassing op alle producten die door de organisatie worden gemaakt De reikwijdte van Softwaretests is van toepassing op een bepaald product dat wordt getest.

Best practices voor kwaliteitsborging:

  • Creëer een robuuste testomgeving
  • Selecteer de vrijgavecriteria zorgvuldig
  • Pas geautomatiseerde tests toe op gebieden met een hoog risico om geld te besparen. Het helpt om het hele proces te versnellen.
  • Wijs tijd op de juiste manier toe voor elk proces
  • Het is belangrijk om prioriteit te geven aan bugfixes op basis van softwaregebruik
  • Vorm een ​​speciaal team voor beveiliging en prestatietests
  • Simuleer klantaccounts vergelijkbaar met een productieomgeving

Functies voor kwaliteitsborging:

Er zijn 5 primaire kwaliteitsborgingsfuncties:

  1. Technologieoverdracht: deze functie omvat het verkrijgen van een productontwerpdocument, evenals gegevens van vallen en opstaan ​​en de evaluatie ervan. De documenten worden verspreid, gecontroleerd en goedgekeurd
  2. Validatie: hier wordt een validatie-masterplan voor het hele systeem opgesteld. Goedkeuring van testcriteria voor het valideren van product en proces is vastgesteld. Er wordt een resourceplanning gemaakt voor de uitvoering van een validatieplan.
  3. Documentatie: deze functie regelt de distributie en archivering van documenten. Elke wijziging in een document wordt aangebracht door de juiste wijzigingscontroleprocedure te volgen. Goedkeuring van alle soorten documenten.
  4. Kwaliteit van producten garanderen
  5. Plannen voor kwaliteitsverbetering

Certificeringen voor kwaliteitsborging:

Er zijn verschillende certificeringen beschikbaar in de branche om ervoor te zorgen dat organisaties de standaardkwaliteitsprocessen volgen. Klanten gebruiken dit als kwalificerende criteria bij het selecteren van een softwareleverancier.

ISO 9000

Deze norm werd voor het eerst vastgesteld in 1987 en heeft betrekking op kwaliteitsmanagementsystemen. Dit helpt de organisatie om de kwaliteit van hun klanten en andere belanghebbenden te waarborgen. Een organisatie die ISO 9000 gecertificeerd wil worden, wordt geauditeerd op basis van hun functies, producten, diensten en hun processen. Het belangrijkste doel is om te beoordelen en te verifiëren of de organisatie het proces volgt zoals verwacht en om te controleren of bestaande processen verbetering behoeven.

Deze certificering helpt -

  • Verhoog de winst van de organisatie
  • Verbetert de binnenlandse en internationale handel
  • Vermindert afval en verhoogt de productiviteit van de medewerkers
  • Zorg voor een uitstekende klanttevredenheid

CMMI-niveau

Het Capability Maturity Model Integrated (CMMI) is een procesverbeteringsbenadering die speciaal is ontwikkeld voor softwareprocesverbetering. Het is gebaseerd op het raamwerk voor procesvolwassenheid en wordt gebruikt als algemeen hulpmiddel bij bedrijfsprocessen in de software-industrie. Dit model staat hoog aangeschreven en wordt veel gebruikt in softwareontwikkelingsorganisaties.

CMMI heeft 5 niveaus. Een organisatie is gecertificeerd op CMMI-niveau 1 tot 5 op basis van de volwassenheid van hun kwaliteitsborgingsmechanismen.

  • Niveau 1 - Initieel: In deze fase is de kwaliteitsomgeving onstabiel. Er zijn eenvoudigweg geen processen gevolgd of gedocumenteerd
  • Niveau 2 - Herhaalbaar: er worden enkele processen gevolgd die herhaalbaar zijn. Dit niveau zorgt ervoor dat processen op projectniveau worden gevolgd.
  • Niveau 3 - Gedefinieerd: een reeks processen wordt gedefinieerd en gedocumenteerd op organisatieniveau. Die gedefinieerde processen zijn onderhevig aan enige mate van verbetering.
  • Niveau 4 - Beheerd: dit niveau maakt gebruik van processtatistieken en controleert effectief de processen die worden gevolgd.
  • Niveau 5 - Optimaliseren: dit niveau is gericht op het continu verbeteren van de processen door middel van leren en innovatie.

Test Maturity Model (TMM):

Dit model beoordeelt de volwassenheid van processen in een testomgeving. Zelfs dit model heeft 5 niveaus, hieronder gedefinieerd:

  • Niveau 1 - Initieel : er wordt geen kwaliteitsnorm gevolgd voor testprocessen en op dit niveau worden alleen ad-hoc methoden gebruikt
  • Niveau 2 - Definitie: gedefinieerd proces. Opstellen van teststrategie, plannen, testcases worden gedaan.
  • Niveau 3 - Integratie: Er worden tests uitgevoerd gedurende de hele levenscyclus van softwareontwikkeling (SDLC) - wat niets anders is dan integratie met de ontwikkelingsactiviteiten, bijv. V-Model.
  • Niveau 4 - Beheer en meting: Beoordeling van eisen en ontwerpen vindt plaats op dit niveau en criteria zijn vastgesteld voor elk testniveau
  • Niveau 5 - Optimalisatie: er worden veel preventieve technieken gebruikt voor het testen van processen, en toolondersteuning (automatisering) wordt gebruikt om de testnormen en -processen te verbeteren.

Gevolgtrekking:

Kwaliteitsborging is om te controleren of het ontwikkelde product geschikt is voor gebruik. Daarvoor moet de organisatie beschikken over processen en standaarden die moeten worden gevolgd en die periodiek moeten worden verbeterd. Het concentreert zich voornamelijk op de kwaliteit van het product / de dienst die we aan de klanten leveren tijdens of na implementatie van software.