Het managen van een dataproject binnen een vastgesteld budget: het is een veelvoorkomende uitdaging binnen organisaties. Projecten starten vaak goed, maar na verloop van tijd gaat de snelheid eruit. Het systeem wordt steeds groter en complexer, waardoor het langer duurt om nieuwe functionaliteit toe te voegen. Het gevolg: het team moet meer opleveren dan het team kan bouwen. Een eerste maatregel is dan vaak om meer mensen aan te nemen, maar daarmee wordt het probleem niet opgelost. Integendeel! Wij vertellen je welke oplossing beter werkt, zodat het project veel sneller verloopt en binnen budget blijft.
De valkuil: meer mensen, minder snelheid
De snelheid van het team gaat vaak achteruit, doordat het systeem steeds groter en complexer wordt. Als je een nieuwe functionaliteit sneller wilt bouwen, heb je niet per se meer mensen nodig. Wanneer je meer mensen op het project zet, ontstaat er sneller wildgroei en diversiteit omdat ontwikkelaars op verschillende manieren ontwikkelen. Ook gaat er meer tijd en moeite zitten in het integreren van al het werk tot een werkend geheel. Het gevolg: de kans op fouten wordt bij elke release groter, waardoor het team steeds meer tijd kwijt is aan het oplossen van deze fouten in plaats van het bouwen van nieuwe functionaliteit. Conclusie: het vergroten van het team zorgt voor meer kosten, maar levert vaak weinig extra snelheid op.
Is je methode bestand tegen veranderingen?
Een andere valkuil zit in de methode. In deze snel veranderende maatschappij kun je er soms na een paar maanden achter komen dat je het beter ‘anders’ kunt doen. Je kunt dan twee dingen doen: helemaal opnieuw beginnen of het ‘oude’ laten zoals het is en verder gaan met de nieuwe methode. Kies je voor het eerste, dan heb je veel tijd verloren en heeft alles wat je tot nu toe gebouwd hebt weinig waarde. Kies je voor het tweede, dan ontstaat er een vermenging van methoden (het spaghetti-effect) en krijg je een heterogeen product. In beide gevallen loop je al snel tegen een muur aan, omdat de complexiteit toeneemt en de kwaliteit en snelheid afneemt. Waarom vertellen we dit? Omdat de oplossing in de methode ligt. Met de juiste methode heb je namelijk niet meer mensen nodig en hoef je niet opnieuw te bouwen als er iets verandert.
De sleutel: model-gedreven ontwikkeling
Meer mensen betekent dat functionaliteiten op meer verschillende manieren (persoonlijke voorkeuren) geïmplementeerd worden. Daarnaast lopen functionele en technische aspecten bij de implementatie door elkaar, waardoor het ontwikkelen complex wordt. Je kunt deze problemen oplossen met een model-gedreven aanpak, ofwel: Model Driven Data Engineering. Dit betekent dat technische en functionele logica gescheiden worden. Functionele logica wordt vastgelegd in een technologie onafhankelijk model en technische logica in patronen. Met het model en de patronen wordt de software met behulp van een engine gegenereerd, anders gesteld: het schrijven van de code is gerobotiseerd.
Het resultaat: een homogeen product binnen budget
Deze model gedreven aanpak zorgt er enerzijds voor dat er minder code met de hand wordt geschreven, omdat elke type patroon maar één keer wordt gecodeerd in een template. Dit is niet alleen sneller, maar voorkomt ook het spaghetti-effect. Anderzijds zorgt deze aanpak ervoor dat je bestand bent tegen veranderingen. Als er bijvoorbeeld een nieuw inzicht ontstaat voor een betere performance, dan kan dit vaak in één template worden geïmplementeerd. Je hoeft dan niet alles aan te passen om de verbetering overal door te voeren. Het resultaat: je bouwt een homogeen product en levert snel op, waardoor je binnen budget blijft.
Controle op kwaliteit
Kortom, je hebt een gestandaardiseerde aanpak nodig als je een dataproject binnen budget wilt houden. De gestandaardiseerde CrossBreeze aanpak noemen we Model Driven Data Engineering. Met deze aanpak heb je veel meer controle op de werkwijze en de kwaliteit van het product. Maar bovenal: organisaties zijn door deze aanpak veel efficiënter gaan werken en leveren meer functionaliteiten op zonder het budget te overschrijden.
Lukt het niet om jouw dataproject binnen budget te houden? Lees dan ook eens onze blog over Model Driven Data Engineering of neem contact op met Willem en Harmen. Ze vertellen je graag wat de CrossBreeze aanpak jou gaat opleveren.