Overslaan naar hoofdinhoud

gorillait.nl

Model-driven softwareontwikkeling

Maak bedrijfskennis de bron van software die blijft meebewegen.

Software wordt vaak moeilijker aan te passen zodra die is opgeleverd. Ze weerspiegelt de eisen van gisteren, terwijl je organisatie alweer verder is.

Gorilla IT pakt het anders aan. We leggen je processen, regels, data en beslissingen vast in heldere modellen, toetsen die samen met de mensen die de business kennen en gebruiken die modellen om werkende software te genereren en door te ontwikkelen.

Het resultaat: meer waarde in minder tijd, consistente kwaliteit en systemen die flexibel blijven terwijl je organisatie verandert.

Wat het is

Het model is geen plaatje. Het is de bron.

Model-driven softwareontwikkeling (MDD), ook wel modelgedreven softwareontwikkeling, is een aanpak waarbij formele modellen de belangrijkste bouwstenen van een softwaresysteem zijn. De modellen beschrijven bedrijfsbegrippen, data, regels, rollen en gedrag. Geautomatiseerde transformaties zetten ze om in applicaties, databases, integraties of code, terwijl de bedrijfsbedoeling zichtbaar en eenvoudiger aanpasbaar blijft.

Traditionele projecten vertalen bedrijfskennis eerst naar documenten en daarna naar code. Bij iedere overdracht kan betekenis verloren gaan. Bij MDD blijft het gevalideerde model centraal staan. Domeinexperts herkennen het, engineers kunnen het uitvoeren en veranderingen beginnen vanuit dezelfde gedeelde bron.

Modellen zijn niet het eindproduct. Werkende software wel.

Dat onderscheid is belangrijk. MDD is geen extra documentatielaag en geen blauwdruk voor een watervalproject. We werken iteratief: genoeg modelleren om te begrijpen, vroeg toetsen, genereren of configureren wat geautomatiseerd kan worden en maatwerkcode toevoegen waar die waarde creëert.

Zakelijke impact

Meer slagkracht bij iedere verandering.

Wanneer herhalend implementatiewerk wordt geautomatiseerd en bedrijfslogica expliciet blijft, besteden teams minder tijd aan het telkens opnieuw bouwen van dezelfde basis en meer tijd aan het probleem waarmee je organisatie zich onderscheidt.

  • Meer waarde in minder tijd.

    Herbruikbare modellen, patronen en transformaties verminderen repetitief programmeerwerk. De levering versnelt zonder dat snelheid automatisch technische schuld wordt.

  • Continuïteit die teamwisselingen overleeft.

    Kennis ligt vast in beoordeelde modellen in plaats van alleen in hoofden van medewerkers of verspreide code. Nieuwe teamleden begrijpen het systeem en de regels daardoor sneller.

  • Flexibiliteit vanaf de basis.

    Eisen, platformen en integraties veranderen. Door de bedrijfsbedoeling te scheiden van implementatiedetails kunnen teams het systeem aanpassen zonder telkens de volledige logica opnieuw te moeten ontdekken.

  • Consistente kwaliteit.

    Gevalideerde patronen en geautomatiseerde generatie passen dezelfde engineeringbeslissingen steeds opnieuw toe. Dat vermindert vermijdbare variatie en maakt fouten eenvoudiger te herleiden.

  • Verbinding tussen business en IT.

    Het model geeft domeinexperts en ontwikkelaars een gedeelde taal. Aannames worden zichtbaar voordat ze kostbaar worden.

Onze werkwijze

Van inzicht naar werkende software.

We beginnen niet met code. We beginnen bij de business.

1.

Begrijp het domein.

We werken met de mensen die de dagelijkse praktijk kennen. Samen brengen we doelen, processen, data, regels, rollen, uitzonderingen en kwaliteitseisen in kaart die de oplossing bepalen.

2.

Bouw één gedeeld model.

We vertalen die kennis naar heldere, formele modellen. Waar dat zinvol is, blijft het model onafhankelijk van een specifieke technologie, zodat de bedrijfslogica niet opgesloten raakt in het platform van vandaag.

3.

Toets vroeg.

Stakeholders beoordelen het model in taal die zij herkennen. Prototypes en uitvoerbaar gedrag maken ontbrekende informatie, misverstanden en ontwerprisico’s zichtbaar wanneer aanpassen nog weinig kost.

4.

Transformeer en realiseer.

We gebruiken model-naar-model- en model-naar-code-transformaties om de herhaalbare delen van de oplossing te genereren. Onze engineers voegen pro-code toe waar unieke integraties, gebruikerservaring, beveiliging, prestaties of schaal dat vereisen. Standaard waar mogelijk. Maatwerk waar nodig.

5.

Lever op en ontwikkel door.

We leveren op in beheersbare stappen. Wanneer eisen veranderen, werken we het model bij en ontwikkelen we de bijbehorende software door. Het model blijft een levend bedrijfsmiddel dat verbonden is met het systeem dat het beschrijft.

When people and systems share the same meaning, data becomes easier to trust, connect and use.
Boaz den Besten
CISO at Gorilla IT
Bewijs uit de praktijk

Een semantisch model omgezet in operationele software.

Samen met de European Space Agency en Thales Alenia Space hielp Gorilla IT de basis te leggen voor de Space System Ontology: een gedeeld semantisch informatiemodel voor complexe kennis over ruimtesystemen.

Met principes van model-driven development werd het informatiemodel omgezet in een werkende database en beheerapplicatie.

Resultaat
Wat het model mogelijk maakte
200
genormaliseerde databasetabellen
150
beheerschermen
5
perspectieven binnen scope
3
samenwerkende partijen

Het gaat niet om het aantal schermen. Het gaat erom dat domeinkennis de bron bleef: begrijpelijk, uitbreidbaar en verbonden met werkende software.

Wat het wel en niet is

MDD is een aanpak. Low-code is een keuze voor ontwikkelgereedschap.

De termen worden vaak door elkaar gebruikt. Ze beschrijven verschillende zaken.

  • Model-driven softwareontwikkeling.

    Het model is een leidend ontwikkelmiddel. Het stuurt transformaties, generatie en de doorontwikkeling van het systeem aan.

  • Low-code en no-code.

    Dit zijn ontwikkelomgevingen die handmatig programmeerwerk verminderen. Sommige zijn model-driven; andere zijn vooral visuele configuratietools.

  • Traditionele maatwerksoftwareontwikkeling.

    Broncode is het belangrijkste implementatiemiddel en modellen zijn optioneel. Dit kan de juiste keuze zijn wanneer directe technische controle of zeer afwijkend gedrag de doorslag geeft.

Bij Gorilla IT zijn dit geen concurrerende kampen. We gebruiken no-code, low-code en pro-code waar elk daarvan waarde toevoegt. Het model houdt de bedrijfsbedoeling over alle vormen heen consistent.

Keizen voor MDD

Wanneer model-driven softwareontwikkeling de juiste keuze is.

MDD is vooral waardevol wanneer:

1.

Complexe domeinkennis nauwkeurig moet worden vastgelegd en tussen teams moet worden gedeeld.

2.

Bedrijfsregels, wet- en regelgeving of processen regelmatig veranderen.

3.

Meerdere applicaties, portalen of integraties op dezelfde begrippen en logica steunen.

4.

De software bedrijfskritisch wordt en jarenlang moet kunnen doorontwikkelen.

5.

Continuïteit belangrijk is en kennis niet in de hoofden van enkele mensen mag blijven.

6.

Een standaardproduct de organisatie dwingt concessies te doen aan een onderscheidend proces.

MDD kan onnodig zijn wanneer de behoefte klein of tijdelijk is, of al goed wordt ingevuld door een standaardproduct. Dat zeggen we dan ook. Het doel is niet méér modelleren. Het doel is software die waarde blijft leveren terwijl de business verandert.

Veelgestelde vragen

Vragen over model-driven softwareontwikkeling.

Wat is model-driven softwareontwikkeling?

Model-driven softwareontwikkeling (MDD), ook wel modelgedreven softwareontwikkeling, is een aanpak waarbij formele modellen de belangrijkste ontwikkelmiddelen zijn. Ze beschrijven bedrijfsbegrippen, data, regels en gedrag. Geautomatiseerde transformaties zetten die modellen om in softwarecomponenten, zoals applicaties, databases, integraties of broncode.

Bij traditionele ontwikkeling is broncode meestal het belangrijkste implementatiemiddel en dienen modellen soms alleen als documentatie. Bij MDD stuurt het model de generatie en verandering actief aan. Daardoor blijft de bedrijfsbedoeling dichter bij het werkende systeem en neemt herhaalde handmatige implementatie af.

Nee. MDD is een ontwikkelaanpak; low-code en no-code zijn categorieën van ontwikkeltools. Een low-codeplatform kan modellen gebruiken, maar niet iedere low-codeoplossing behandelt het model als leidende bron. Gorilla IT kan no-code, low-code en pro-code combineren binnen een model-driven aanpak.

Ja, wanneer de modellen een heldere semantiek hebben en worden ondersteund door betrouwbare transformaties, engineeringpraktijken en tests. Gegenereerde componenten vereisen nog steeds architectuur, beveiliging, integratie, prestaties, gebruiksvriendelijkheid, deployment en operationele governance. Automatisering vergroot de slagkracht; professionele verantwoordelijkheid blijft nodig.

Afhankelijk van platform en domein kunnen modellen databaseschema’s, beheerinterfaces, workflowlogica, validatieregels, API’s, integraties, tests, documentatie en broncode aansturen. Gorilla IT genereert de herhaalbare onderdelen en zet maatwerkengineering in waar die waarde toevoegt.

Ja. Een team kan de belangrijkste domeinbegrippen en regels stapsgewijs modelleren, verbinden met bestaande systemen en componenten in beheersbare stappen vervangen of uitbreiden. Modernisering hoeft geen big-bang-herbouw te zijn.

Beoordeelde modellen maken belangrijke bedrijfskennis expliciet, in plaats van die alleen in code, documenten of individueel geheugen te laten bestaan. Doordat herhaalbare implementatiebeslissingen in transformaties en patronen zijn vastgelegd, kunnen veranderingen consistenter worden doorgevoerd en vinden nieuwe teamleden sneller hun weg in het systeem.

MDD past goed bij langlevende, bedrijfskritische systemen met complexe domeinkennis, veranderende regels, meerdere integraties of herhaalde oplossingspatronen. De aanpak voegt minder toe bij een kleine eenmalige behoefte die een standaardproduct al goed oplost.

Maak veranderen eenvoudiger voordat de volgende verandering zich aandient.

Als bedrijfslogica verstopt zit in documenten, code en de hoofden van enkele mensen, kost iedere verandering meer dan nodig. We helpen je die kennis expliciet te maken, te toetsen wat ertoe doet en om te zetten in software die kan meebewegen.