Skip to main content

Elke organisatie op de planeet houdt zich bezig met kwaliteitsengineering, of ze dat nu weet of niet. Het simpele feit dat er een product of dienst wordt gecreëerd, houdt in dat men worstelt met de uitdaging om hoge kwaliteit te leveren. Het negeren van kwaliteit heeft bijna altijd geleid tot rampzalige resultaten

In feite bedroegen alleen al in de VS de kosten van software van slechte kwaliteit in 2018 $2.8 trillion.

Iedereen is op zoek naar de heilige graal van kwalitatief hoogwaardige producten en diensten: meer klanten en groei, lagere kosten en hogere winstmarges. De discipline van kwaliteitsengineering is het resultaat van die zoektocht, die zeker nog niet is voltooid.

Want more from The CTO Club?

Create a free account to finish this piece and join a community of CTOs and engineering leaders sharing real-world frameworks, tools, and insights for designing, deploying, and scaling AI-driven technology.

Name*
This field is hidden when viewing the form
This field is hidden when viewing the form
This field is hidden when viewing the form
This field is hidden when viewing the form
By submitting you agree to receive occasional emails and acknowledge our Privacy Policy. You can unsubscribe at anytime.

Kwaliteitsengineering is een geheel van methodologieën, processen en principes die een organisatie helpen haar bedrijfsprocessen te verbeteren om een bepaald kwaliteitsniveau voor haar producten of diensten te bereiken. Als slimme professional op het gebied van kwaliteitsborging zal het je zijn opgevallen dat de definitie circulair is door het gebruik van het woord kwaliteit, wat ons bij de volgende vraag brengt:

Wat is kwaliteit? Wat zijn de aspecten van kwaliteit?

Kwaliteit is niet eenvoudig te definiëren, omdat het verschillende aspecten heeft die subjectief zijn. Filosoof en auteur Robert Pirsig schreef zelfs een boek over kwaliteit: “Zen en de kunst van het motoronderhoud”, waarin hij zijn metafysica van kwaliteit uiteenzette.

Interessant genoeg werd zijn boek afgewezen door 121 uitgevers die het van lage kwaliteit vonden. Pirsig zette echter door en uitgever nummer 122 vond dat “Dit boek is ongelooflijk briljant, het is waarschijnlijk een geniaal werk...” en publiceerde het, waarna er meer dan 5 miljoen exemplaren van werden verkocht.

Pirsig had misschien gelijk toen hij zei dat kwaliteit moeilijk te definiëren is, maar we begrijpen het allemaal intuïtief. Als ingenieurs kunnen en willen we het daar echter niet bij laten, dus zullen we proberen een lijst op te stellen van de aspecten van kwaliteit.

Aspecten van kwaliteit.


Wereldwijd gebruikt de maakindustrie verschillende kwaliteitsnormen en -benaderingen om kwaliteit beter te standaardiseren, zoals ISO 9001, Six Sigma en totaal kwaliteitsmanagement.

Kwaliteitsengineering in software

De software-industrie heeft ingezien dat de corrigerende aanpak die wordt voorgeschreven door kwaliteitsborging en kwaliteitscontrole – het achteraf opsporen en oplossen van softwarefouten – haar grenzen heeft bereikt.

Kwaliteitsengineering biedt een weg vooruit met een proactieve, preventieve aanpak voor het implementeren van kwaliteitssystemen die het kwaliteitsprobleem oplossen waarmee softwareontwikkeling in het algemeen en productontwikkeling in het bijzonder worden geconfronteerd.

Afgezien van de filosofie dat “kwaliteit in het oog van de toeschouwer ligt”, richt kwaliteitsengineering in software zich op twee aspecten van het waarborgen van hoge kwaliteit:

Functionele kwaliteit, die betrekking heeft op de functionele aspecten van een softwareproduct of -oplossing: Doet het wat ervan wordt verwacht? Voldoet het aan een ontwerpspecificatie?

Structurele kwaliteit die betrekking heeft op de niet-functionele aspecten van software: Is het robuust? Veilig? Zeer beschikbaar? Gemakkelijk te onderhouden? 

Get regular tech leadership wisdom for delivering better software and systems.

Name*
This field is hidden when viewing the form
This field is hidden when viewing the form
This field is hidden when viewing the form

De evolutie en levenscyclus van kwaliteitsengineering in software

Softwarekwaliteitsengineering beleeft een renaissance, waarbij organisaties alles op alles zetten om defecten zo vroeg mogelijk te voorkomen of op te sporen.

Dit heeft geleid tot een groot aantal nieuwe QE-hulpmiddelen en methoden, waaronder testautomatisering, testen naar links verschuiven, DevOps, DevSecOps, continue integratie en continue implementatie (CI/CD), SDET, testgestuurde ontwikkeling (TDD) en gedragsgestuurde ontwikkeling (BDD), risicobeheer en kunstmatige intelligentie.

Al deze elementen samen vormen een nieuwe benadering van kwaliteitsengineering.

De levenscyclus van kwaliteitsengineering.

De rol van gegevens en meetwaarden in kwaliteitsengineering

Edwards Deming, goeroe op het gebied van kwaliteitsmanagement, hielp Japanse productieprocessen in de jaren 80 en 90 uitgroeien tot een wereldwijde krachtpatser.

Het staat vast dat gegevens en meetwaarden belangrijk zijn voor kwaliteit. Ze vormen zelfs een van de belangrijkste manieren om te bepalen of uw initiatief voor kwaliteitsengineering voet aan de grond krijgt en werkt. Maar over wat voor meetwaarden hebben we het precies?

Meetwaarden gebruiken om verandering te bewerkstelligen is geen eenvoudig proces.

Vandaag de dag is het mogelijk om veel meer gegevens te verzamelen dan we weten wat we ermee moeten doen, en het is gemakkelijk om in deze waarachtige oceaan te verdrinken. Daarom is het belangrijk om vast te stellen welke gegevens en metingen relevant zijn. Om The Rt. Hon. Rumsfeld te parafraseren: “Pas op voor onbekende onbekenden!”

Ik waag het erop te zeggen dat meetwaarden die de uiteindelijke uitkomsten en resultaten meten, van allemaal het meest veelzeggend zijn. Kwaliteitsengineeringinitiatieven moeten immers resulteren in een sterker en beter bedrijf. Dit omvat meetwaarden zoals:

  • Verkoopvolume van producten
  • Klanttevredenheid – specifiek: aanbevelingen van klanten aan anderen
  • Volume en type supportaanvragen

Het kan echter enkele maanden tot een paar jaar na de implementatie duren voordat deze meetwaarden beschikbaar zijn, en zo veel tijd heeft niemand!

Om de kwaliteitsverbetering tijdens het proces te kunnen volgen, gebruiken we meetwaarden zoals:

  • De kwaliteitskosten
  • Defectmeetwaarden
  • Dekking
  • Prestatie- en releasemeetwaarden
  • Meetwaarden voor productiviteit, efficiëntie en effectiviteit.

Uiteindelijk moeten alle gegevens en meetwaarden leiders op het gebied van kwaliteitsengineering helpen om risico's vooraf te identificeren, defecten en technische schuld te minimaliseren en wendbaarheid en de tijd tot marktintroductie te vergroten.

Waarom kwaliteitsengineering belangrijk is

WAAR GEBEURD: In het begin van mijn carrière leidde ik een softwareteam dat oplossingen voor klanten leverde. Op een mooie dag ging ik naar een verkoopgesprek met een potentiële klant – laten we die “Frustrated Financial Consultants Inc.” noemen – die een webapplicatie voor uren- en onkostendeclaraties wilde. Frustrated had meer dan 1.000 consultants in dienst die voor verschillende klanten werkten.

Ik sprak met hun CTO en hij legde uit dat ze hun bestaande maatwerkoplossing voor urenregistratie (waar iemand negen maanden aan had gewerkt) zat waren en merkwaardig gedrag vertoonden. Telkens wanneer een medewerker op een link klikte om een urenregistratierecord in te vullen, kreeg diegene een formulier te zien dat er zo uitzag:

Als slimme QA-engineer had u ongetwijfeld het probleem ter grootte van de Grand Canyon in dit formulier opgemerkt.

Waarom zou een gebruiker in hemelsnaam zijn of haar eigen naam uit een medewerkerslijst moeten kiezen!?

Veel gebruikers, die wel iets beters te doen hadden, vergaten hun eigen naam uit de lijst te selecteren. Daardoor bleef de standaardwaarde Amy Adams staan, die de pech had de eerste naam in de gesorteerde lijst te zijn.

Maar het werd nog beter. De arme Amy Adams was buitengewoon ongelukkig met deze situatie, dus werd het probleem opgelost door een fictieve medewerker met de naam A. Aardvark aan te maken! Echt waar!

Voortaan ontdekte de manager facturering elke week dat A. Aardvark bovenaan de productiviteitslijst stond met maar liefst 300 tot 500 merkwaardige gedeclareerde uren! Deze arme vrouw moest elke week een halve dag van haar kostbare tijd besteden aan het opsporen en aanspreken van de mensen die deze fout hadden gemaakt en hen ertoe bewegen die te herstellen.

En zo werd A. Aardvark gedurende meerdere maanden achter elkaar de hardst werkende medewerker van de maand, met een productiviteit van 6x tot 10x! Ik zweer het, ik had dit niet kunnen verzinnen, zelfs als ik dat had gewild…

Archieffoto van hardwerkende medewerker van de maand, A. Aardvark.

Hoe dan ook, het verhaal kent een gelukkig einde voor de medewerkers van Frustrated. Binnen een paar maanden ontwikkelden we een geavanceerde urenregistratieapplicatie waarvoor medewerkers niet hun eigen naam uit een lijst hoefden te selecteren, en ze leefden allemaal nog lang en gelukkig!

En daar heb je het, mensen: daarom is kwaliteitsengineering zo belangrijk.

Wat doet een kwaliteitsengineer?

Softwarekwaliteitsengineers vormen een integraal onderdeel van het softwareontwerp- en kwaliteitsteam. Ze houden toezicht op het softwareontwikkelingsproces, van ideevorming tot uitvoering, om ervoor te zorgen dat software aan vooraf bepaalde kwaliteitsnormen voldoet.

Gecertificeerde kwaliteitsengineers gebruiken technieken voor continue verbetering en verschillende kwaliteitscontrolemiddelen om kwaliteit te waarborgen. Maatregelen zoals corrigerende en preventieve acties worden gebruikt om eventuele kwaliteitslacunes weg te nemen.

Om aan de uiteenlopende en veeleisende behoeften van de hedendaagse softwareorganisatie te voldoen, vervullen softwarekwaliteitsengineers verschillende rollen, waaronder ontwerp, SDET, testen en meer. Doorgaans is dit een uitdagende rol die meerdere vaardigheden vereist om goed te kunnen worden uitgevoerd, waaronder probleemoplossing, probleemdiagnose, statistische procesbeheersing, softwaretesten, automatisering en kwaliteitscontrole.

De American Society for Quality (ASQ) biedt de certificering tot Certified Software Quality Engineer voor kwaliteitsengineers.

Word lid voor meer inzichten

De overstap van kwaliteitscontrole en kwaliteitsborging naar kwaliteitsengineering is volop aan de gang. Kwaliteitsengineering heeft de manier waarop software wordt gemaakt veranderd en blijft zich ontwikkelen.

Vergroot je SaaS-groei en leiderschapsvaardigheden. Abonneer je op onze nieuwsbrief voor de nieuwste inzichten voor CTO's en ambitieuze technologieleiders. We helpen je slimmer op te schalen en sterker leiding te geven met handleidingen, hulpmiddelen en strategieën van toonaangevende experts!