Van 6 miljoen regels legacycode naar direct inzicht: Deltares ontrafelt 40 jaar softwaregeschiedenis

Delen:
De uitdaging

Verborgen logica en geïsoleerde kennis

De D-Flow FM calculation kernel is grotendeels geschreven in Fortran. Doordat senior developers en domeinexperts die de oorspronkelijke code hebben geschreven met pensioen gingen of de organisatie verlieten, ontstond een gat in historische context en direct inzicht in ongedocumenteerde dependencies (hidden logic).

Om volledige grip te krijgen op de bestaande softwarearchitectuur heeft Deltares nu inzicht in:

  • Exacte call trees, dependencies en het gebruik van global variables (global state).
  • De inhoudelijke consistentie tussen de geschreven Fortran-code en de officiële technische documentatie (TechRef-PDF’s).
  • Een drastische vermindering van de tijd die developers nodig hebben om complexe code paths te onderzoeken.
De oplossing

Re:App Reverse Architecting

In samenwerking met SUE werd een Reverse Architecting-project uitgevoerd om de D-Flow FM kernel volledig te ontrafelen en in kaart te brengen met Re:App, SUE’s AI-driven application modernization solution.

 

Tijdens dit project werden de volgende stappen uitgevoerd:

  • Code & Context Ingestion De volledige Fortran-codebase van 6 miljoen regels, CMake build configurations, utility libraries en technische documentatie werden ingeladen in Re:App.

  • Knowledge Graph & Hybrid Search SUE configureerde binnen Re:App een hybrid search architecture. Source code-elementen, zoals subroutines en variables, werden direct gekoppeld aan relevante documentatiefragmenten en hydrologische formules.

  • Specialized Subagents Om strikte context boundaries te behouden en de nauwkeurigheid van antwoorden te waarborgen, werden gespecialiseerde subagents ingezet voor specifieke taken, zoals het automatisch genereren van visuele Mermaid call-tree diagrams.

  • Knowledge Verification by Domain Experts Deltares-developers testten en valideerden de geanalyseerde architectuur op nauwkeurigheid via de chatinterface van Re:App.

Han van Veldhuizen
"Met Re:App Reverse Architecting heeft SUE ons precies het inzicht gegeven dat we nodig hadden in onze decennia oude software. Het ontsluit cruciale domeinkennis en transformeert miljoenen regels complexe code naar een heldere, navigeerbare architectuur."
Het resultaat

Een volledig reverse-architected codebase

De D-Flow FM calculation kernel is succesvol volledig reverse-architected. De resultaten werden gemeten aan de hand van strikte succescriteria. Daarbij bleek Re:App aanzienlijk beter in staat om overkoepelende architectuurvragen te beantwoorden dan standaard developer tools zoals GitHub Copilot:

  • Integrale analyse van de codebase (vs. Copilot’s Local Context): Waar traditionele AI-assistenten tegen contextlimieten aanlopen bij vragen over volledige applicaties, kan Re:App moeiteloos top-level entry points en complexe inter-module dependencies analyseren binnen de volledige repository.
  • Directe koppeling tussen code & documentatie: Re:App koppelt source code direct aan interne coding guidelines en technische referentiehandleidingen (PDF’s). Vragen over domeinformules worden direct beantwoord met exacte bronverwijzingen.
  • Hallucination-Free Analysis: Dankzij de Knowledge Graph-integratie verwijst Re:App uitsluitend naar daadwerkelijk bestaande subroutines en bestanden, waardoor AI-hallucinaties worden geëlimineerd.
  • Spot-On Architectural Insights: Naast het bieden van compacte, begrijpelijke overzichten van lange routines, identificeert het systeem proactief en nauwkeurig verborgen architecturale inconsistenties tussen modules.
  • Substantiële tijdsbesparing: Onderzoeken van complexe code paths, die voorheen uren of dagen konden duren met handmatige zoekopdrachten zoals grep, leveren nu binnen enkele seconden een nauwkeurig antwoord op.

Let's Talk

stefan.behlen 1
Stefan Behlen

Let's talk!


Let's Talk

* required

Door dit formulier te verzenden bevestig je dat je onze privacyverklaring hebt gelezen en begrepen.
Privacyoverzicht
Deze website gebruikt cookies. We gebruiken cookies om onze website en diensten goed te laten functioneren, om inzicht te krijgen in het gebruik van onze website en om onze producten en marketing te verbeteren. Lees voor meer informatie ons privacy- en cookiebeleid.