Modelleren in draw.io
Voor het tekenen van conceptuele informatiemodellen gebruiken we draw.io. Deze tool is gekozen omdat ze vrij beschikbaar is, makkelijk in gebruik, en goed samenwerkt met versiebeheer via GitHub. Draw.io ondersteunt de notatiestijl die wij hanteren voor conceptuele informatiemodellen: entiteit-relatienotatie in Barker-stijl.
Notatiestijl
Voor de notatie van onze diagrammen gebruiken we, net als Salesforce, in de basis de Barker-notatie, vanwege de compacte en goed leesbare weergave van entiteiten en relaties. Waar draw.io Barker niet volledig ondersteunt, vallen we terug op elementen uit de Information Engineering (IE) Notation, die visueel en inhoudelijk goed aansluit. Deze combinatie biedt voldoende expressiviteit voor conceptuele modellen, zonder te vervallen in technische details.
Vormgeving
De links in bovenstaande paragraaf leggen de notatiestijl gedetailleerd uit. Het diagram hieronder toont welke stijlkeuzen we hebben gemaakt in draw.io.
Enkele elementen lichten we eruit. Voor bijna elk punt is het achterliggende principe: visuele rust en duidelijkheid!
Positionering
- Alle elementen zijn uitgelijnd op een raster, met consistente afstanden tussen de entiteiten.
- Entiteiten lijnen op elkaar uit. Zie bijvoorbeeld de hoge
Aansluitingen het bredeOverdrachtspunt. - Lijnen zijn alleen horizontaal en verticaal. Ze mogen waar mogelijk niet kruisen of knikken.
- Bij een-op-veel-relaties staat de entiteit aan de een-zijde standaard links of boven.
- De positie van een relatienaam bepaalt de leesrichting en staat dichtbij de entiteit die haar beheert. Bijvoorbeeld: een
Aansluitingisdeel vaneenNetgebied.
Kleuren
- Entiteiten hebben een kleur gebaseerd op NBility.
- We gebruiken hiervoor de kleuren die standaard aanwezig zijn in draw.io, omdat ze de NBility-kleuren voldoende benaderen.
Structuur
- Een entiteit wordt geïdentificeerd door een combinatie van eigenschappen en relaties (aangegeven met een
#). Zo wordt eenAftakkinggeïdentificeerd door de combinatie vanzijde,nominale waarde,serienummer(Meettransformator),identificatie(Primair deel meetinrichting) enEAN-code(Overdrachtspunt). - Specialisaties zijn weergegeven met nesting. Dit maakt overerving van eigenschappen en relaties intuïtief.
- Specialisaties zijn volledig en niet overlappend. Dus elke
Meettransformatoris óf eenSpanningsmeettransformatoróf eenStroommeettransformator. Merk op dat de notie van ‘abstracte klasse’ (zonder instanties) niet kan bestaan in een conceptueel model. - Een
OF-boog geeft aan dat exact één van de relaties geldt. - Een
en/of-boog geeft aan dat minimaal één van de relaties geldt.
Symbolen
#voor identificerende eigenschappen en relaties●voor essentiële (of ‘verplichte’) eigenschappen○voor accidentiële (of ‘optionele’) eigenschappen/voor entiteiten, eigenschappen of relaties die logisch of computationeel afleidbaar zijn uit andere elementen in het model⏲voor tijdslijnmarkeringen (zie Tijdlijnen)