MetaFactory
MetaFactory als MDA Tool
MetaFactory is een pragmatische manier om MDA of model gedreven ontwikkeling toe te passen in een software ontwikkelingstraject. De 3 belangrijkste componenten binnen MetaFactory zijn het model, het pattern en de vele templates voor de te produceren code. Het grote voordeel is dat er maar 1 manier is om een model te maken. Hetzelfde geldt voor de template taal (velocity of freemarker). De syntax van deze template talen is krachtig, maar toch eenvoudig, waardoor de ontwikkelaar dit makkelijk leert. Er is dus maar 1 syntax en 1 template taal die geleerd hoeft te worden.
MetaFactory is veel eenvoudiger in te zetten in een software traject, dan bijvoorbeeld de open source mda mogelijkheden (EMF, GEF, M2M, JET, XPand, MDT enz.). Bovendien hebt u met MetaFactory de mogelijkheid om support te krijgen van First Base. Vergelijk dat eens met het eindeloos zoeken (van 1 of meerdere ontwikkelaars) in forums naar mogelijke oplossingen van een probleem.
Het pattern en de verzameling templates vormen tezamen een DSL (Domain Specific Language) voor het maken van een bepaalde toepassing. Inmiddels beschikt First Base over vele DSL's, maar de belangrijkste zijn een DSL voor het maken van een full featured Rich Client Application (met o.a. Hibernate, RCP, JFace, SWT) en een DSL voor het maken van een rolgebaseerde webapplicatie met het JBoss Seam Framework (met o.a. JPA, Ajax, Facelets, RichFaces, JSF en Drools). Deze DSL's worden standaard niet meegeleverd met MetaFactory, maar geven wel een goed beeld van de besparingen die bereikt kunnen worden.