
Onze systemen, processen, technologie en hulpmiddelen moeten ons helpen om onze doelstellingen te bereiken. Maar kijken we daarbij wel genoeg naar kwaliteit? Hoe belangrijk is kwaliteit eigenlijk, en kun je kwaliteit verbeteren zonder een bedrijf volledig overhoop te halen? Reinier Verschure, Chief Quality bij Xebia, schetst de vijf belangrijkste trends op het gebied van software quality assurance voor het komende jaar.
Veel organisaties worstelen met het leveren van hun software. Ze hebben te maken met een grote verscheidenheid aan problemen die hen verhinderen om software van hoge kwaliteit af te leveren in productie. Kwaliteit wordt vaak beschouwd als een bijzaak, en niet als een noodzakelijke investering vooraf. Denk aan een start-up die zo snel mogelijk een product bouwt en de kwaliteit laat overzien door het team. Wanneer de start-up schaalt, groeien de teams en neemt de afhankelijkheid en de complexiteit toe. Hierdoor moeten andere maatregelen worden genomen om de kwaliteit van het eindproduct te waarborgen.
Organisaties investeren meestal pas in kwaliteit wanneer er iets stuk gaat of hen vertraagt. De vraag is dus wanneer er geïnvesteerd moet worden in kwaliteit. Deze beslissingen zijn gebaseerd op verschillende statistieken binnen de software ontwikkeling: doorlooptijd (snelheid), performance, testdekking, en first time right (product maturiteit).
Uitdaging
Er is een voortdurende strijd tussen het leveren van functies voor eindgebruikers en het inbouwen van kwaliteit. Het algemene idee in de afstemming tussen business en IT is dat IT zo veel mogelijk functionaliteit moet leveren, en ook zo snel mogelijk. Investeringen in kwaliteit worden gezien als een rem op deze functionele drang. Het is dus zaak om aan zo’n organisatie te bewijzen dat investeringen in kwaliteit de oplevering van hoogwaardige software versnellen. De resultaten van goed presterende teams tonen aan dat het inbouwen van kwaliteit vanaf het begin de wendbaarheid, leveringssnelheid en kwaliteit van het product verbetert.
Bouw aan een veerkrachtige organisatie
Organisaties moeten minder afhankelijk worden van individuen en moeten zich richten op het verminderen van complexiteit door het standaardiseren van technologieën en werkwijzen. Dit helpt bij het opbouwen van veerkrachtige organisaties met een sterk en flexibel personeelsbestand. Ontwikkelingsprocessen moeten worden afgestemd om deze organisaties te ondersteunen: geen verspilling, georganiseerd voor flow, en frequente levering. Dit wordt ondersteund met passende tooling. Organisaties hebben een gebrek aan overzicht hoe ze deze inspanningen moeten leveren. Het introduceren van nieuwe technologieën zonder een goed team zal niet de verwachte resultaten opleveren. Pas als deze aanpak is ingebed in de organisatie, kunnen nieuwe paradigma’s zoals cloud of agile adoptie op de juiste manier worden geïmplementeerd.
De vijf belangrijkste ontwikkelingen in sofware quality assurance voor het komende jaar
1. Groei in analyse/beoordelingsvermogen
Door op een holistische manier de onderliggende problemen bloot te leggen kan veel terrein worden gewonnen. Belemmeringen in de organisatie, teamopzet en samenwerkingsmodellen moeten voor eens en voor altijd worden aangepakt om teams die verantwoordelijk zijn voor de software hun volledige potentieel te laten bereiken.
2. Learning journeys
Aangezien kwaliteit moet worden ingebed in het gehele softwareleveringsproces, is het noodzakelijk om de levenscyclus van de softwarelevering als basis te nemen voor de learning journey. Voor elke stap moeten management en technisch personeel vaardigheden en technieken aangereikt krijgen om weloverwogen keuzes te maken om het gewenste kwaliteitsniveau te bereiken. Dit stelt teams in staat om op een juiste manier aan de slag te gaan.
3. Kwaliteit buiten de gebaande paden
Veel innovaties hebben een impact op verschillende aspecten van softwarelevering. Principes van DevOps en SRE bepalen hoe teams vorm moeten krijgen. De groei in het gebruik van SaaS-diensten stelt nieuwe eisen aan governance. Dit soort factoren hebben ook allemaal invloed op de kwaliteit van software.
4. Waarneembaarheid
Waarneembaarheid en automatisering zijn essentieel om continue verandering mogelijk te maken zonder de kwaliteit in gevaar te brengen. Waarneembaarheid geeft bedrijven voortdurend inzicht in de kwaliteit van de dienstverlening terwijl de systemen draaiende zijn. Aangezien waarneembaarheid voortbouwt op logging en statistieken van de systemen, is het belangrijk om waarneembare systemen vanaf nul te ontwerpen en te implementeren.
5. Functionele monitoring
Digitale productinnovatie heeft geen duidelijk gedefinieerde functionele monitoring om succes te claimen. Volg daarom het DASA-principe (‘Begin met het einde voor ogen’) en definieer succes: is het een toename in inkomsten, klanten, of het aantal transacties? Functionele monitoring stelt je in staat om succes te meten. Organisaties zouden alleen moeten beginnen met innovaties die bedrijfswaarde toevoegen die in deze statistieken kunnen worden uitgedrukt.