Meer informatie Ja, ik geef toestemming
Door Robert Horsmans Leestijd 4 min.

Hoe beheers je de risico’s bij softwareontwikkeling?

Software ontwikkelen (en onderhouden) verloopt nooit via een spoorboekje. Het is een avontuur. Een pittig proces waarbij shortcuts nemen, een gebrekkige aansturing of niet volgens best practices werken, altijd tot problemen leidt.

Maar ook een avontuur kun je grondig voorbereiden. Bijvoorbeeld door ervoor te zorgen dat je heel goed weet welke risico’s er zijn, en wat je kunt doen om ze te voorkomen of de impact zo klein mogelijk te maken. Op die manier wordt een avontuur nooit (te) spannend. Dat is namelijk helemaal niet nodig.

Way2Web Janne Robert Niels 2

Bij Way2Web zijn we permanent bezig om risico’s te identificeren en maatregelen te nemen om een goede voortang van een project en de kwaliteit van een applicatie -ook na oplevering- te borgen. Hieronder lees je meer over de acht belangrijkste (maar zeker niet de enige) beheersmaatregelen die we bij Way2Web nemen

  • Alle stakeholders identificeren en bij het proces betrekken
Stakeholders zijn behalve de eindgebruikers, de opdrachtgever en het ontwikkelteam, ook materiedeskundigen en de beheerders van de software, de te koppelen systemen en de technische infrastructuur. Zo is alle gewenste expertise in het team aanwezig.

 

  • Een officiële product owner met mandaat – liefst ook bij de klant

De product owner zorgt ervoor dat het ontwikkelteam in de juiste volgorde aan de juiste onderdelen werkt. En dat keuzes gemaakt worden wanneer dat nodig is, zodat het team zo effectief mogelijk kan doorwerken. Misschien wel de belangrijkste voorwaarde voor een goed eindproduct. Nog beter: zorg ook voor een producteigenaar bij de klant.

 

  • Teams met specialistische kennis en hulpmiddelen ondersteunen

Het lijkt bijna een open deur maar het is essentieel dat je de ontwikkelteams maximaal ondersteunt met tools, methodieken en kennis om hun werk goed te doen. Dat varieert van documenten(templates) en tools voor iteratief werken, testen, releasen, versiebeheer en beveiliging, tot het ad hoc bijschakelen van (externe) specialisten.

 

  • Product definiëren in meerdere delen met waarde voor de business

Stel vast wat de slankste maar werkzame vorm van de applicatie is (MVP) en maak vervolgens een ‘product breakdown structure’ in functionerende delen van de software. Dit helpt om de hoeveelheid werk goed in te schatten en op tijd en binnen budget op te leveren. En het vertelt wanneer stakeholders betrokken zullen zijn.

 

  • Werken in sprints, waarbij telkens een werkend product wordt opgeleverd

De hiervoor benoemde delen van het product worden aan het eind van een sprint opgeleverd met een demonstratie. Ook dit helpt om op tijd te leveren en stimuleert dat een team écht iets afmaakt. Je ontdekt of er een goede balans is tussen functionele en niet-functionele eigenschappen (zoals veiligheid). En door de stakeholders optimaal te betrekken kun je telkens weer relevante keuzes maken.

 

  • Een geautomatiseerde ontwikkelpijplijn inrichten

Een OTAP-straat bestaat uit meerdere instrumenten om een applicatie gecontroleerd in gebruik te nemen en vakkundig te onderhouden. Door voortdurend te testen voorkom je dat veranderingen (ook van buiten de applicatie) de kwaliteit van de software aantasten. En door kwaliteitsmaatregelen te nemen (zoals automatisch testen, coding standaarden en code reviews) borg je dat de kern van de applicatie goed op orde blijft.

 

  • Voortdurend voldoen aan de eisen van regressietests

Aan software wordt voortdurend en door meerdere mensen gewerkt. Met een regressietest ga je na iedere wijziging na of alles nog goed functioneert. Dat kan ook gaan om niet-functionele eigenschappen zoals veiligheid en toegankelijkheid. Het zorgt er bovendien voor dat het team zich bewust blijft van afhankelijkheden en belangrijke functionaliteiten.

 

  • Voortgangsbewaking met burndown charts

Een burndown chart is een handzame, voor iedereen duidelijke grafiek waarin je ziet hoeveel werk er gedaan is en hoeveel werkzaamheden nog uitgevoerd moeten worden. Hiermee controleer je doorlopend of de inschatting van de hoeveelheid werk juist is en hoe snel een team oplevert. Hiermee bewaak je een goede en transparante voortgang van het project. Een belangrijk instrument om op tijd op te leveren dus.

Heb jij een slim idee om met next level software de wereld een beetje slimmer, veiliger of beter te maken? We laten ons graag inspireren!

Bent u klaar voor the next level?

De digitale transformatie biedt fantastische nieuwe mogelijkheden en kansen. Ook voor uw onderneming, dat weet ik zeker. Als IT-specialist én ondernemer praat ik daar graag eens met u over verder. Geheel vrijblijvend natuurlijk. Zullen we een afspraak maken?