Een mogelijk knelpunt in het project is dat er op het raak vlak van XML/GML en objectmodellering weinig kennis be schikbaar is - net zo min bij ProRail als in de markt. Deze kennis moet dus tijdens het project worden ontwikkeld. Hier moet een belangrijk risico worden onderkend: wat als de gevraagde kennis te diepgaand of specifiek is om zelf standig op te bouwen? Om dit risico te verminderen, wordt de mogelijkheid open gehouden om externe kennis van buiten ProRail in te zetten. De uitvoering van de pilot wordt vervolgens ingericht aan de hand van de volgende stappen: 1. ontwerp van het gegevensmodel; 2. inrichting van een database; 3. opstellen van een GML-schema; 4. ontwikkelen van een export-script; 5. exporteren van gegevens naar GML; 6. opstellen en versturen van de wijzigingsopdracht naar leveranciers; 7. importeren van gewijzigde GML-gegevens. Alvorens er geëxporteerd kan worden, moet er een database zijn met gegevens over de railinfrastructuur. Zoals eerder geconstateerd, is er binnen ProRail niet één database met gestructureerde gegevens die daarvoor als uitgangspunt kan dienen: er zijn juist vele databases die vaak eerder CAD- en ras- terbestanden bevatten, dan objectgerichte gegevens voorzien van syntax en semantiek. Er moet dus een database worden ontworpen die als bron kan dienen voor de gegevensexport. De volgende belangrijke constatering is dat het best gemak kelijk zou zijn wanneer het gegevensmodel van de database en het gegevensmodel van het GML-bestand overeen zou den komen. Binnen de pilot wordt daarom al snel besloten om eerst een gegevensmodel te ontwerpen dat als basis zal dienen voor zowel de database als het exportbestand. Gelukkig is het project voor dat gegevensontwerp niet volle dig op zichzelf aangewezen. Er is namelijk binnen ProRail een zogenaamde 'Objectenstructuur' beschikbaar. Deze objecten structuur zou de basis moeten zijn voor de grootscheepse ob- jectisering van de informatiesystemen. Theoretisch dus een mooie basis voor het gegevensmodel voor de pilot. Na enig onderzoek wordt vervolgens besloten om het gege vensmodel te definiëren in de UML-schematielc (Unified Mo delling Language). Deze beslissing is genomen op basis van de volgende argumenten: vastleggen in een strak omlijnde standaard als UML voor komt onduidelijkheden en vaagheden. Dubieuze of mul- ti-interpretabele constructies komen in UML vrij snel bovendrijven - dit zou wellicht anders pas bij het tech nisch ontwerp van de database of het GML-schema aan het licht komen; Het gegevensmodel zou omwille van uitwisselbaarheid van gegevens, met andere grote civiele opdrachtgevers, moeten aansluiten op de NEN3610-standaard. Deze stan daard is op het moment dat de pilot start net definitief ge worden - en vastgelegd in UML. Dit werlc is grotendeels uit gevoerd op de TU Delft, waar ProRail ook contacten heeft en daarmee de aanwezige kennis en hulp kan gebruiken; via de TU Delft wordt ook ontdekt dat er een open source Java-pro- gramma beschikbaar is dat UML-be- standen direct converteert naar een GML-schema. Fig. l.Aanslui- Gegevensmodel: hoe de theorie de praktijk ting RailGML en ontmoette NEN3610. Het pilotproject gaat vervolgens hoop vol aan de slag om de ProRail-objec tenstructuur vast te leggen in UML. Het uitgangspunt daarbij zijn de docu menten in Microsoft Word en Excel die tot dat moment zijn gebruikt. Tijdens het proces van omzetting naar UML blijkt hoe strak de eisen zijn die UML stelt: verschillende onduidelijkheden en zaken die voor meerdere uitleg vat baar zijn, blijken hun weg gevonden te hebben naar de objectenstructuur. Het zijn voor een informatie-analist her kenbare zaken: wat is in de oorspronkelijke struc tuur de relatie tussen elementen en direct ondergelegen elementen? Het blijkt de ene keer te gaan om de Stap 1: Ontwerp van het gegevensmodel class Aansluiting NEN3610 J7" O.." realisatie; lange teimijn buiten bedrijf, buiten gebruik. geslotei niet meer aanwezig beginTijd: DateTime [0..1) eindTijd: DateTime [0..1J geometriePoint: GM_Point (01 geometrieCurue: GM_Cun/e [0..1J geometrieSurface: GM_Surface [0..1] identificatie; CharacterStiing locatie: Locatie naam: ScopedName [0..*l object8eginTijd: DateTime (0..1j objectEindTijd: DateTime (0..1J status: Status [0..1) versieBeginTijd: DateTime [0..1J veisieEindTijd: DateTime (0..1) Aanschafdatum: Date [0..1J Aansch afwaaide: Integer {0..1] AantalSamenstellendeElementen: Integer {0..1J bouwdatum: Date J0..1) Buitendienststellingdatum: DateTime (0..1) EconomischeLevensduur. Integer p..t] Eigenaar: CharacterStiing {0..1] Fabrikant: CharacteiString [0..1] Indienststellingsdatum: DateTime £0..1] Leverancier: CharacterStiing JQ..1) QbjectlD: Integer [0..1J Objectnaam: CharacterString [0..1] SpoorbaanObjectStatus: SpoorbaanObjectStatus [0.1] TechnischeLevensduur: Date [0..1] Tekeningnummer: Integer [01 «FeatureType» SpoorbaanObjecI GEO-INFO 2007-7/8

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

Geo-Info | 2007 | | pagina 28