Is MDA oude wijn in nieuwe zakken?
Rick van der LansOnlangs ontving ik van een collega een email waarin hij verwees naar een artikel geschreven door Martin Fowler. Die schrijft daarinj over de nieuwe op MDA-gebaseerde tools (Model Driven Architecture) waarmee code vanuit uml-specificaties gegenereerd wordt. Hij vergelijkt ze met de oude generatie case-tools die aan het einde van de jaren tachtig zo populair waren. Zijn conclusie: MDA-tools worden net zo'n groot commercieel als case-tools. Niet dus. Hij noemt het heel charmant "The night of the living case tools".
Martin Fowler is een internationaal gerespecteerd specialist op het gebied van refactoring en heeft er ook hét boek over geschreven. Dus omdat hij dat zei, vond ik het belangrijk het artikel eens te lezen en stil te staan bij zijn vergelijking. Ook omdat ik in mijn eigen lezingen over MDA-tools vaak de vraag krijg wat de overeenkomsten en verschillen zijn tussen deze twee generaties van producten.Om maar gelijk met de deur in huis te vallen, deze twee categorieën tools kunnen niet met elkaar vergeleken worden. Het is een vergelijking van appels met peren. De eerste generatie case-tools, zoals Excelerator, ER-Designer en IEW, waren voornamelijk bedoeld om specificaties te controleren en te registreren. Er konden ook relaties tussen elementen van verschillende diagrammen vastgelegd worden en allerlei rapporten en diagrammen konden gecreëerd worden. In feite waren het de opvolgers van de nog oudere data dictionary/directory systemen. De case-tools waren echter gebaseerd op modernere diagramvormen, hadden grafische interfaces en konden meer soorten specificaties vastleggen.
De mogelijkheden om werkelijk code te genereren waren minimaal. De meeste konden wel databasestructuren genereren, maar daar hield het wel een beetje mee op. Uitzonderingen, zoals toentertijd IEF (nu CA's Advantage Gen geheten) konden wel code genereren.
Eén van de hoofdredenen dat deze case-tools nooit commercieel zijn aangeslagen is waarschijnlijk dat ze geen code genereerden. De return on investment (roi) moest dus volledig uit de documentatie- en rapportagemogelijkheden komen. Met de hand moest de code afgeleid worden van alle specificaties. Als later diezelfde code aangepast moest worden, moesten de specificaties in het case-tool ook met de hand bijgewerkt worden. Niets gebeurde automatisch. En, zoals u al vermoedt, gebeurde dat niet altijd met als effect dat de waarde van de specificaties opgeslagen in het case-tool verminderden. Integratie tussen case-tools en de echte ontwikkeltools ontbrak toen.
De markt van MDA-tools is ook geen homogene groep producten, dus generalisaties zijn niet mogelijk. En dat maakt ook een algemene vergelijking lastig. Er zijn MDA-tools die geëvolueerd zijn vanuit moderne case-tools, zoals die van IBM/Rational en Borland/Togethersoft. De integratie tussen de case-omgeving en de ontwikkelomgeving (waarin er met code gestoeid wordt) is hier veel hechter dan dat we ooit gezien hebben bij de oudere case-tools. En IBM en Borland zullen in de toekomst deze integratie nog meer versterken. Als gegenereerde code aangepast wordt, wordt ook direct de specificatie aangepast.
Maar er zijn ook MDA-tools die speciaal voor het genereren van code zijn gebouwd, zoals Uniface's Jdeveloper en Interactive Objects' Arcstyler. Deze producten zijn initieel geen case-tools geweest, maar richten zich echt op de ontwikkelaar. Let wel, deze tools zullen ongetwijfeld evolueren naar case-tools. We zien dat al bij het product van Uniface. In ieder geval kunnen ook deze tools nog niet met de oude case-tools vergeleken worden. En als ze hun case-mogelijkheden toegevoegd hebben, zal ook hier de integratie tussen case en ontwikkeling hechter zijn.
Een beperking van MDA-tools is wel dat ze niet geschikt zijn voor het ontwikkelen van allerlei soorten programma's. De huidige MDA-tools zijn sterk gericht zijn op het genereren van administratieve, databasegeoriënteerde applicaties. Voor het genereren van andere soorten applicaties kunnen we waarschijnlijk het beste weer met de hand gaan coderen. En deze gerichtheid was ook zichtbaar bij de oude case-tools. Hier bestaat dus wel een overeenkomst.
Heeft Martin Fowler dus gelijk? Deels niet en deels wel. Het vergelijken met case-tools en het meldden dat MDA-tools slechts een reïncarnatie zijn, is onterecht. De tools zijn te verschillend om een dergelijke vergelijking te mogen maken.
Het commerciële succes van de MDA-tools is nog steeds onzeker. De productverkoop is helaas nog te beperkt om met zekerheid te voorspellen dat het een doorslaand succes wordt. Dus het zou kunnen dat ze net zo weinig succes hebben als de case-tools, en dat zou dan wel een overeenkomst kunnen zijn. < BR>
Rick F. van der Lans is onafhankelijk adviseur, een internationaal bekend spreker en auteur van diverse boeken, tevens gespecialiseerd in softwareontwikkeling, datawarehousing en internet.
10-02 Van Vliet: Zonder internet geen welvaart
06-02 De kijk van Van Eijk: Sleutels weg
01-02 Spoelstra spreekt: Het is helemaal geen crisis
27-01 Van Vliet: Geen e-bank, geen bonus!
23-01 De kijk van Van Eijk: Technologie is een risico
18-01 Spoelstra spreekt: Flut hackers
15-01 Van Vliet: Uit het web
02-01 De kijk van Van Eijk: Onvermijdelijke vooruitgang
28-12 Spoelstra spreekt: Het verschil
23-12 Van Vliet: Politie.nl kent geen cybercrime
10-02 Tester Four Oaks in Israëlische handen
10-02 Nieuwe software brengt Vitens in problemen
08-02 Nokia verplaatst smartphoneproductie naar India
08-02 'ICT-afdeling is te traag voor ontwikkeling apps'
06-02 Banometer: Topstart vacaturemarkt krijgt vervolg
06-02 Duitse PMCS.helpLine neemt Leidse MCH+ over
03-02 Siemens PLM Software introduceert Jack 7.1
03-02 Itemis betreedt Nederlandse markt via Warmer IT
01-02 Microsoft-partner Asapnet zet IT-University op
01-02 Kwaliteitscontroleur is nog geen testprofessional
|
|
Gemeenten en ICT besparingen
Sommige gemeenten wijzigen hun autonome ICT omgeving in een samenwerkingsverband met als doel het verlagen van ICT......

