Vijf tips die bijdragen aan effectieve softwareontwikkeling
385

Veel organisaties zijn de afgelopen jaren met wisselend succes overgestapt op vormen van “agile” softwareontwikkeling. De balans opmakend, zie je dat een hoop organisaties worstelen om ook echt effectiever en slagvaardiger te worden. En toegegeven, dit is ook ongelofelijk lastig. In sommige gevallen is “Corporate Agility” niet meer dan de nieuwe hype, zonder dat er praktisch handen en voeten aan worden gegeven. In dit document vindt je vijf tips die bijdragen aan effectievere softwareontwikkeling.

1. Zet portfolio- en productmanagement op
Zeker bij het invoeren van Scrum kan er nog weleens veel nadruk komen te liggen op het ad-hoc opleveren van functionaliteit. Er wordt netjes in sprints gewerkt en er is wel een backlog, maar er is geen visie op de langere termijn en er is geen samenhangende roadmap. Ik zie veel organisaties die zich enorm druk maken over korte termijn doelen terwijl ze het zicht kwijt zijn op de lange termijn richting die ze inslaan. Het is nu eenmaal eenvoudiger om te bewaken dat een individueel project binnen tijd en budget loopt dan om te bewaken dat we effectief bijdragen aan de lange termijnstrategie van de organisatie.

2. Focus op effectiviteit en niet op efficiency
Om succesvol software te maken is het veel belangrijker om helder te bepalen wat je niet doet, dan te bewaken of wat je wel doet binnen tijd en budget doet (waarmee ik niet wil zeggen dat dat laatste geen waarde heeft). Ik kan me nog goed een kleine organisatie herinneren die aan hun webapplicatie extra functionaliteit wilde toevoegen: “Ja… zoiets als twitter, met berichtjes en reageren en zo.” Gemakshalve werd er even aan voorbij gegaan dat twitter honderden ontwikkelaars in dienst heeft en deze organisatie vijf. Alles wat je bouwt, moet ook onderhouden worden en de kunst van een succesvolle software ligt erin om dus met zo min mogelijk automatisering een zo groot mogelijk effect te bewerken.

3. Focus op het maximaliseren van waarde en niet het minimaliseren van kosten
Natuurlijk kun je niet meer geld uitgeven dan binnen komt (daar komen alleen nationale overheden mee weg). Er is niets mis met gezonde kosten reductie, alleen wanneer de focus op het verlagen van kosten er ook voor zorgt dat de omzet daalt, raak je in een vicieuze cirkel terecht. Veel belangrijker is om te ontdekken welke zaken zorgen voor omzetgroei. Kies dan ook KPI’s die zichtbaar maken wat teams opleveren.

4. Zorg dat je weet “waarom” je iets doet
Stel jezelf bij alles de “waarom” vraag. Dit is niet alleen een “truc” die verkopers toepassen om iets te verkopen, het is een essentieel onderdeel van een succesvolle organisatie. Iedere medewerker wordt dagelijks geconfronteerd met keuzes die hij moet maken in zijn werk. Wanneer hij weet waarom hij iets doet, kan hij ook verantwoordelijkheid nemen en initiatief nemen.

5. Zorg voor een gesloten feedback cyclus
Onder het motto “meten is weten” is het van groot belang te weten wat je klanten van je applicatie vinden. Ofschoon de input van de klant niet het enige is dat meeweegt, en ook niet persé het zwaarste, zie ik dat veel organisaties helemaal geen contact met de klanten hebben georganiseerd.

Voetnoot
Scrum of Kanban zijn geweldige hulpmiddelen, maar op zichzelf maken ze je organisatie niet effectiever. Het hele idee achter het Agile manifesto was het plaatsen van mensen boven de processen en de tools en uiteindelijk vallen scrum en kanban in die laatste categorie. Softwareontwikkeling is in mijn opinie een van de mooiste vakken die er zijn, maar ook een van de moeilijkere om echt goed in te worden. Investeren in je mensen is echt essentieel voor succes.

Auteur: Menno Jongerius, Bergler Competence Center, juli 2016