Het automatisch omzetten van modellen naar documenten

Op ons werkterrein wordt de methode Modelgebaseerde systems engineering (MBSE) vaak toegepast. MBSE is een methodologie die wordt ingezet om complexe systemen te beschrijven met daarbij domeinmodellen in plaats van document-gebaseerde als het primaire middel voor informatie-uitwisseling. Deze aanpak creëert een hogere productiviteit door het minimaliseren van onnodige handmatige transacties van de informatie. Deze centrale digitale modellen zijn voor iedereen toegankelijk en ze maken het mogelijk om informatie makkelijk terug te vinden en bij te houden.

Toch zijn mensen vaak gehecht aan de documentatie op papier en is het beoordelen van modellen vaak lastiger dan documenten. Daarnaast stellen onze klanten vaak ook eisen aan de vorm waarin de ontwerpen moeten worden opgeleverd. Dit sluit meestal niet aan op de MBSE tooling die door de engineers gebruikt worden. Hierdoor ontstaat er alsnog veel handmatig werk. Of er wordt een script ontwikkeld die dit geautomatiseerd doet, maar hierdoor gaat uiteindelijk in beide gevallen de tracering van de informatie verloren, wat zonde is.

Hoe kunnen we er dan zorg voor dragen dat MBSE wél bijdraagt aan een hogere productiviteit en aantoonbaar voldoet aan de eisen?
Het gebruik van modellen maakt het sowieso makkelijker om informatie terug te vinden en bij te werken. Binnen Soltegro gebruiken wij voornamelijk “Enterprise-Architect (EA)” daarvoor, een ontwerptool dat veel wordt toegepast om MBSE toe te kunnen passen. Om modellen om te zetten naar de gewenste documenten hebben wij een EA-plugin ontwikkeld; WordGro.

De set van documenten is dus een vorm (en eigenlijk een moment opname) om de systeembeschrijvingen op te leveren, zodat deze beoordeeld kunnen worden. De modellen bevatten de actuele informatie en kunnen op elk moment worden omgezet naar documenten. Er is bewust gekozen om een plugin te ontwikkeling voor EA ipv gebruik te maken van de “scripting” mogelijkheid die EA biedt. De kwaliteit van de scripts is lastig te controleren, daarnaast is de onderhoudbaarheid en uitwisseling tussen projecten moeilijker en beperkt het de mogelijkheid om frameworks te gebruiken.

Het basisprincipe van de WordGro plugin is dat het gebruik maakt van de EA-database structuur om verschillende document templates te creëren. Deze templates bepalen dus welke modelelementen/informatie op welke plek in het document moeten komen. De templates kunnen vervolgens weer worden gebuikt om de specifieke documenten per subsysteem te definiëren.

De WordGro plugin biedt tevens de mogelijkheid om informatie te importeren en om te zetten naar model elementen, die vervolgens kunnen worden gebruikt bij de documentgeneratie. Denk hierbij aan eisen, beslissingen, objecten, functies, etc. Importeren van informatie kan vanuit Word/ Excel of via Webservers (via SOAP/REST). De laatste optie maakt het mogelijk om geautomatiseerd informatie uit te wisselen met externe systemen als Relatics en Sharepoint.


Figuur 1: WordGro overzicht

Voordat de documenten worden gegenereerd bestaat de mogelijkheid om een aantal validatiescripts uit te voeren. Die controleren of het ontwerp syntactisch correct is en alle benodigde informatie aanwezig is. Tijdens het genereren is het mogelijk om Word-macro’s uit te voeren om bijvoorbeeld een eisen-index tabel te genereren of layout consistentie te realiseren. Het is mogelijk om Jenkins te configureren zodat de plugin-taken niet op een lokale machine hoeven te worden uitgevoerd. Deze Jenkins buildserver kan geconfigureerd worden om elke nacht een “build” te draaien van alle documenten, zodat de actuele status op elk moment kan worden opgeleverd of snel te constateren er ergens een fout is gemaakt bij het opstellen systeembeschrijving. 

Verhoog ook de productiviteit
Wij zien dat WordGro een geschikte oplossing is, die leidt tot een hogere productiviteit. Het voorkomt onnodig veel handwerk wanneer MBSE toegepast wordt bij het uitvoeren van een project, maar er uiteindelijk documenten intern of extern opgeleverd moeten worden.

Wil jij ook de productiviteit verhogen? Neem contact met mij op via franc.fouchier@soltegro.nl of bel 010 – 202 26 60.

Deel dit blogitem

Over Franc Fouchier

Manager Systems Engineering & Innovation at Soltegro bij Soltegro

Franc heeft zijn ervaring opgedaan op het gebied van systeem architect en systeemintegratie bij complexe infrastructurele projecten. Zijn doel is om klanten optimaal te ondersteunen bij innovatie projecten. In zijn vrije tijd is hij veel met voetbal bezig zowel voor z'n kinderen als voor hemzelf. Hij leest veel non-fictie boeken, die hem ideeën geven voor innovatiestrategie.