Als je ons al even volgt, weet je dat we met Model Driven Data Engineering de ‘wat’ en ‘hoe’ splitsen, ofwel de logica en techniek. Wanneer je volgens deze methodiek gaat werken, betekent dit ook dat er een andere teamindeling ontstaat: nieuwe teams met nieuwe rollen en verantwoordelijkheden. Eén van onze klanten, een grote financiële instelling, is met deze methodiek aan de slag gegaan en ervaart al ruime tijd de vele voordelen van Model Driven Data Engineering. We leggen uit wat er veranderd is binnen het team!
Het traditionele proces
In het traditionele proces begint de analist met het opstellen van specificaties die vervolgens worden doorgegeven aan de data-engineer. De data-engineer vertaalt de specificaties naar software en levert dit op in de testomgeving. De tester test de software waarna het wordt opgeleverd voor acceptatie door de business. Wanneer de software is goedgekeurd door de business, wordt het definitief opgeleverd. Dit is hoe het proces er bij veel organisaties uitziet en hoe het er ook bij deze klant uit zag. Het grote nadeel van dit proces is dat het veel tijd in beslag neemt en alle teamleden afhankelijk van elkaar zijn. Ze kunnen eigenlijk niet zonder elkaar werken.
Nieuwe onafhankelijke teams
Bij Model Driven Data Engineering wordt het proces grotendeels geautomatiseerd en zijn de teamleden minder afhankelijk van elkaar. Doordat we de logica en techniek van elkaar scheiden, ontstaan er andere teams. Bij de financiële instelling zijn er nu meerdere modeling teams met 3 tot 6 modelleurs per team. Deze teams zijn bezig met de ‘wat’, ofwel de functionele logica. Ze halen informatie op uit de organisatie en leggen de specificaties en voorbeelden vast in modellen. Daarnaast hebben ze nu een technisch team, bestaande uit 6 tot 7 devops- & data-engineers. Dit team houdt zich bezig met de ‘hoe’, ofwel de techniek die nodig is om de modellen te vertalen naar software. Omdat de logica en techniek gescheiden zijn, kunnen de teams onafhankelijker van elkaar werken.
Automatiseren en snelle live-gang
In vergelijking met het traditionele proces kunnen de teams nu veel sneller opleveren. De technische processen zijn zo ingericht dat wanneer een modelleur een wijziging doet in het model, alles met één druk op de knop wordt doorgevoerd. Dit betekent dat alle software automatisch gegenereerd, uitgerold en getest wordt. Er is dus geen enkele handmatige interventie nodig om met de software live te gaan, mits de business akkoord is. De fases die je in het traditionele proces doorloopt, zijn met behulp van Model Driven Data Engineering volledig geautomatiseerd. In het traditionele proces was men vaak al blij als ze elke twee weken live konden gaan met een stuk software, nu kan dit meerdere keren per dag. Het is zo geautomatiseerd dat ieder modeling team op elk gewenst moment haar stukje software in productie kan brengen.
Losse puzzelstukjes samenbrengen
In het nieuwe proces werkt elk team aan een op zichzelf staand ‘puzzelstukje’. We vergelijken het soms met het maken van een auto. Het ene team ontwikkelt bijvoorbeeld de motor en het andere team de wielen. Als alle onderdelen ontwikkeld en getest zijn, wordt het samengevoegd en wordt het eindproduct in elkaar gezet. Alle losse puzzelstukjes worden dan een complete puzzel. Hetzelfde gebeurt bij Model Driven Data Engineering. Het framework team en de modeling teams kunnen geïsoleerd werken. Natuurlijk moeten bij een oplevering de verschillende puzzelstukjes wel in een goede samenhang worden opgeleverd.
Meer snelheid en minder foutgevoelig
De financiële instelling heeft al snel de vele voordelen van Model Driven Data Engineering ervaren. Doordat ieder team nu met zijn eigen puzzelstukje bezig is, zijn de meetings veel effectiever. In tegenstelling tot centrale meetings die over alle onderwerpen gaan, vinden de meetings nu per team plaats en gaat het alleen over hun eigen aandachtsgebied. Het grootste voordeel dat ze ervaren, is echter de snellere doorlooptijd. Er zijn veel minder handovers nodig en de teams kunnen op elk gewenst moment onafhankelijk van elkaar live gaan. De hele keten van begin tot live-gang is geautomatiseerd, waardoor er alleen nog een akkoord van de product owner nodig is. Hierdoor is het proces ook veel minder foutgevoelig. En minder fouten betekent ook meer snelheid, want je bent minder tijd kwijt aan het oplossen van fouten.
Tools op maat
CrossBreeze heeft bij deze financiële instelling het nieuwe proces neergezet en de modelleurs opgeleid, zodat ze weten hoe ze moeten modeleren. Het is namelijk een andere manier van werken dan ze gewend waren. Ook worden verschillende open source tools ingezet die door CrossBreeze zijn ontwikkeld. Dit zijn tools die de modellering ondersteunen en zorgen voor het genereren en testen van de software. Deze tools zet CrossBreeze bij verschillende klanten in. Doorontwikkeling vindt plaats op basis van wat er bij de diverse klanten gewenst is. Doordat de tools open source zijn, profiteert elke gebruiker van uitbreidingen in de functionaliteit.
We zien dat onze methode en tools op elke plek weer een stukje mooier worden. Het wordt aangepast op de behoefte van de organisatie, zodat er een eindproduct ontstaat wat aansluit op de bestaande architectuur. Maar dan veel sneller! Kun jij deze snelheid ook wel gebruiken? Neem vrijblijvend contact met ons op! We leggen je graag uit wat Model Driven Data Engineering voor jouw organisatie en processen betekent.