Wat als Henry Ford 'Domain Driven Development' had ontwikkeld?
23 september 2020 | Nieuws | Door: AMIS Conclusion
Deel
Toen Henry Ford aan het begin van de vorige eeuw automobielen ging produceren met behulp van een lopende band, veroorzaakte hij een innovatie die zijn weerslag niet kende. Voor de introductie van deze strategie had hij eerst de behoeften van de afnemers, de technologische mogelijkheden en optimalisaties van processen centraal gesteld. Toch gaf Henry Ford toe dat wanneer hij direct naar zijn klanten had geluisterd, hij enkel een verbeterede versie van 'paard en wagen' was gaan verkopen. Wat kunnen we hiervan leren?
Wat Henry Ford als geen ander begreep - en zelf beter dan zijn eigen klanten - was dat consumenten opzoek waren naar een snelle, betrouwbare, comfortabele en goedkope oplossing om van punt A naar punt B te komen. Daarbij moest het vervoersmiddel voor iedereen beschikbaar zijn. In Europa had de automobiel zich al bewezen door comfortabiliteit, snelheid en betrouwbaarheid. Het was echter belangrijk om de vervoersmiddelen goedkoop te maken en de productie te standaardiseren door de gebruikte onderdelen te vereenvoudigen. Door de introductie van de lopende band konden gespecialiseerde teams worden samengeteld die verantwoordelijk waren voor slechts enkele componenten. Dit was een gigantische optimalisatie in het productieproces. In het midden van de vorige eeuw werd dit proces verfijnd door Toyota met haar 'Kato': binnen Toyota werden teams zelf eigenaar van hun component in het productieproces en daarmee een essentiële sleutel in het volledige productieproces. Hierin onderkennen we een verschuiving van het 'ambachtelijke'-model, waarin het produceren van het volledige product, naar het 'operational excellence'-model, waarin de productie efficiënter wordt gemaakt door focus en eigenaarschap.
"Wat Henry Ford als geen ander begreep - en zelf beter dan zijn eigen klanten - was dat consumenten opzoek waren naar een snelle, betrouwbare, comfortabele en goedkope oplossing om van punt A naar punt B te komen"
Hoe kunnen we deze basis toepassen op succesvolle softwareontwikkeling?
In de afgelopen jaren zijn veel verschillende processen en technieken ontwikkeld binnen de IT. Hierbij kunnen we denken aan SOA, Agile, SCRUM, Cloud, Microservices, data-driven en container-technologie. Dit zijn allemaal processen en technieken die IT succesvol kunnen maken door het vereenvoudigen van het voortbrengingsproces. Echter, ontbreekt binnen de uitvoering, welke vaak alleen door de IT-afdeling wordt geïmplementeerd, de samenhang en samenwerking met de business. Deze processen en technieken voldoen zelfstandig niet aan de behoefte van de organisatie en vragen om een implementatie door zowel de standen als IT-organisatie binnen een bedrijf.
"Dit zijn allemaal processen en technieken die IT succesvol kunnen maken door het vereenvoudigen van het voortbrengingsproces"
Het succesvol implementeren van 'ambacht' naar 'excellence' kent vier drivers:
- Externe klanten, markten en ketenpartners hebben wensen en eisen die veranderen van technologie vereist of wenselijk maakt
- De interne organisatie wil haar productiviteit verbeteren door haar structuur en cultuur te veranderen en daarmee de intrinsieke motivatie tot verbetering
- Eigenaarschap van de operationele-processen neerleggen op het laagste niveau van de organisatie, binnen kleine teams
- Mogelijkheid om te investeren in nieuwe technologie
Architectuur als belangsrijkste factor
Deze vier drivers kunnen in samenhang worden gebracht door het kiezen van de juiste architectuur. De architectuur moet daarvoor de zelfstandigheid voor het uitoefenen van het eigenaarschap garanderen, de samenhang tussen de domeinen/teams faciliteren en als belangrijkste voorzien in de behoefte van de externe klanten, markten en/of ketenpartners. Net als ruim een eeuw geleden bij de eerste productieband voor T-Fords. De architectuur die hiervoor uitermate geschikt is, is Domain Driven Development (DDD).
Waarom zou Henry Ford voor 'Domain Driven Development' hebben gekozen?
De architectuur brengt de organisatie, het proces en de technologie in samenhang, zoals bij de productiebanden van Ford en Toyota. De processen en technieken komen terug in de DDD-architectuur. Deze architectuur is gebaseerd op het leveren door domeinteams; kleine permanente zelfstandige teams bestaande uit vertegenwoordigers van de business, data- en IT-organisaties, van business-deelprocessen, de microservices, aan de digitale lopende band van een bedrijf, het platform.
Succesvolle implementaties van een DDD-architectuur maken gebruik van:
- Bedrijfsbrede businessbehoefte om te veranderen
- Autonome domeinteams om het eigenaarschap uit te kunnen oefenen
- Domeinkaders om verantwoordelijkheid af te bakenen
- Microservices om ontwikkeling van diensten/services te versnellen
- Event-driven-architectuur om data consistent te houden
- Containers om simpel software te ontwikkelen en exploiteren
- Architecturen om de samenhang te realiseren
Direct veranderen van architectuur?
Nee, je klanten, de markten en de ketenpartners moeten ook kunnen en willen veranderen. Daarnaast moet je eigen organisatie er ook klaar voor zijn of klaar voor worden gemaakt . Er zijn meerdere architecturen die vanuit andere drivers succesvol kunnen zijn. Daarin kunnen wij helpen om de transformatie naar de 21e eeuw naadloos te laten verlopen.
Wil je meer weten over het toepassen van een effectieve architectuur voor jouw organisatie? Ik vertel je er graag meer over"