Functional Model Driven Development MDA in de praktijk Freek Bosch, Business Unit Manager Amsterdam, 4 juni 2009
FMDD agenda FMDD Waarom FMMD De praktijk Wat is FMDD Ervaringen en lessons learned Ervaringen in de lijn 2
Dromen 3
4
FMDD overbrugt de kloof Heldere taal voor de business Specificaties in klantspecifieke leesbare taal FMDD versnelt het proces van vertaling business naar applicatie, met business specifieke taal Scheiding tussen functionaliteit en techniek Korte-time-2-market Doorlooptijden van wijzigingen zijn klein Hoge kwaliteit Eenduidige transformatie van specificaties naar code en documentatie, documentatie en code lopen altijd synchroon Geautomatiseerde testondersteuning maakt testen met hoge dekkingsgraad eenvoudiger Weinig incidenten 5
FMDD: De praktijk. Toepassingen in complexe reken- of toekenningsomgevingen Randstad salarissystemen >3.000 functiepunten CASO salarissysteem > 1.000 functiepunten Overheidsorganisatie Toekenningssysteem 2006 Administratief systeem voor een overheidsorganisatie > 2.500 functiepunten Doelplatformen tot nu toe: Cobol Java.NET 2.0 (VB).NET 3.5(C#, LINQ) Event gedreven architectuur 6
FMDD: productie Hoge software kwaliteit betekent weinig werk in beheer/weinig verstoring bedrijfsprocessen gemeten: 1 incident id per kwartaal per 100FP traditioneel: ongeveer 3 keer meer Korte doorlooptijden per changes door hoge productiviteit gemeten: 2-4 uur per FP traditioneel: 3-4 keer meer inhoud FP: ontwerp/bouw/test/deploy Grotere onderhoudbaarheid door synchroon zijn van code, documentatie,.. 7
FMDD: wat is het? Het is een software ontwikkelmethode Methode heet: Functional Model Driven Development 5 stappen Vaststellen van business specifieke taal Opbouw van een woordenboek Bouwen transformatoren tussen business specifieke taal en doelapplicatie Vastleggen van de functionaliteit met de opgebouwde taalset Software en documentatie genereren Testen met geautomatiseerde ondersteuning voor testen op business niveau 8
FMDD: wat is het? Samenwerking met ontwikkelstraten Java Oracle Microsoft 9
FMDD: wat is het? Proposities TaalDomein Recht, Duur, Hoogte Complexe Administratieve systemen Verloning en toekennning MDA projecten 10
FMDD: wat is het? En natuurlijk mensen Taalbouwers Business consultants Solution ontwerpers Transformatorbouwers Testers Toolbouwers En managers 11
FMDD: Ervaringen Uitdaging voor FP tellers en integratietesters. FMDD werkt niet met use cases. De standaard basis voor FP tellers en testers ontbreekt. Verschil in tijdigheid requirements RUP verwacht dat de applicatierequirements gereed zijn vooraf aan een iteratie. FMDD kan week voor einde iteratie nog (functionele) specificatiewijzigingen verwerken. 12
FMDD: Ervaringen In gangbare (Europese) Aanbestedingen scoort het conformeren aan traditionele software ontwikkeling met RUP beter dan het afwijkende MDA. Afwijken hiervan kost vaak punten in de aanbesteding. FMMD inspanning i in ontwikkeltraject t verdient zich dubbel en dwars terug in onderhoud 13
Lessons Learned: FMMD is ook softwareontwikkeling 14
Lessons Learned: FMMD is ook softwareontwikkeling Concept toetsen Is taal, doelapplicatie, en architectuur nieuw, dan meer aandacht voor POT en POC Kleine stappen maken Afhankelijkheden strak managen: pijn wordt zichtbaar op de transformatorbrug Naar doelapplicatie Naar taal Naar andere onderdelen van de realisatieketen 15
Lessons Learned: FMMD is ook softwareontwikkeling Projectmanagement: hoe te sturen sturen op MDA in grotere ketenrealisaties Letten op scheiding functie en techniek Samenwerking tussen business analist, ontwerp, transformatorbouw en solutionbouw is intensief. Proces van samenwerking dient helder te zijn. Samenwerking in de keten: traditioneel RUP of Waterval:aansluiting zoeken op ritme voortbrenging Te lang doorgaan met specificaties 16
Lessons Learned: FMMD is ook softwareontwikkeling Waarde van Modeling Value Group MVG heeft mn op de standaarden bijgedragen Automatische regressietest Continues integration Tool verbeteringen op vlak van bouw en specificatie Ervaring in MDA trajecten overgedragen aan projectmanagement 17
FMDD: Ervaringen in de lijn Wat heb je nodig: Innovatie Inspirerend leiderschap Geld Een team van believers Resultaten 18
FMDD: Ervaringen in de lijn Innovatie is voortdurend je lessons learned implementeren 19
Tot slot Dank voor uw aandacht! Vragen? www.capgemini.com 20