Skip to main content

Snelheid

De term velocity ” is van Engelse oorsprong en vertaald in het Duits betekent het zoveel als snelheid en wordt in de IT op verschillende toepassingsgebieden gebruikt. Naast het Apache-project (webserver) en de VelocityTemplateLanguage (VTL), wordt de term met name gebruikt in de agile softwareontwikkeling in het kader van diverse Scrum-modellen. In de context van agile ontwikkeling wordt velocity gebruikt om aan te geven wanneer een softwareproject naar verwachting voltooid zal zijn, welke vooruitgang al binnen het project is geboekt, en welke kosten kunnen worden verwacht. De bepaling van deze voorspellingen is gebaseerd op verschillende procedures en parameters.

Algemene informatie

In de context van het Scrum-model verwijst velocity naar “de gemiddelde snelheid van een ontwikkelingsteam die in een marathon wordt bereikt”. Deze snelheid vloeit voort uit de afgeronde gebruikersverhalen (user narratives). Zogenaamde “story points” worden toegekend voor elke afgewerkte user story. De snelheid wordt vervolgens berekend aan de hand van het gemiddelde aantal afgeronde user stories. Het meest doeltreffende en tevens eenvoudigste berekeningsmodel is het optellen van de verhaalpunten.

De in dit verband gebruikte tegenterm is “snelheidsafwijking”. Dit wordt berekend uit de som van de onafgewerkte user stories. De zogenaamde “snelheidsafwijkingsfactor” wordt hieruit afgeleid. Dit komt overeen met de user stories die bijdragen aan het negatief beïnvloeden van de effectiviteit van een Scrum team. Dergelijke user stories die niet tijdig kunnen worden voltooid, worden doorgeschoven naar de volgende fase of gaan over. Als het aankomt op het plannen van de volgende fase, dan moet het ontwikkelingsteam de onvoltooide gebruikersverhalen samen met de nieuwe gebruikersverhalen in overweging nemen.

Het belang van snelheid voor agile ontwikkeling

In de context van agile ontwikkeling met Scrum kan velocity een geschatte tijd van voltooiing van een softwareproject aangeven. Met de Velocity-methode kunnen teamleiders zien hoeveel en welke onderdelen op een bepaald moment zijn voltooid. Deze basis helpt ook om de resulterende kosten beter te ramen.

Er zijn in principe twee manieren om de snelheid te bepalen.
[su_list icon=”icon: hand-o-right” icon_color=”#187bc0″ indent=”-5″]

  • Als de afzonderlijke Scrum-teams al ervaring hebben met samenwerken, kan van tevoren een relatief nauwkeurige schatting worden gemaakt.
  • Als het de eerste samenwerking van de Scrum-teams is, zijn er nog geen historische gegevens die als basis voor de voorspelling kunnen dienen, zodat een schatting niet mogelijk is. In dergelijke gevallen kunnen gegevens van andere, op soortgelijke wijze samengestelde teams worden gebruikt om prognoses bij benadering op te stellen.
[/su_list] Voor- en nadelen in een oogopslag

Velocity biedt zowel talrijke voordelen als enkele nadelen in de context van agile softwareontwikkeling, die wij hieronder bespreken:

Pro
  • hoge transparantie
  • gemakkelijke communicatie
  • compatibel met andere methoden van agile softwareontwikkeling
Contra
  • Ontwikkelteams lopen het risico het slachtoffer te worden van hun eigen zelfevaluatie, zodat het project uiteindelijk mislukt door het vasthouden aan de cijfers.

Conclusie

Indien correct gebruikt, kan de velocity-methode helpen om de beheersing, planning en duur van softwareprojecten goed in te schatten. De aldus verkregen informatie kan worden gebruikt om de prijzen voor de klanten vooraf te berekenen en de leveringstermijnen na te leven. De methode moet echter door alle teamleden serieus worden genomen en mag nooit uit het oog worden verloren.

Heeft u nog vragen?

Neem contact met ons op


Verdere inhoud