3.4 Logisch modelleren (MIM niveau 3)

Kan werken op MIM-beschouwingsniveau 3 (logisch modelleren).

Wat is logisch modelleren?

Logisch modelleren op MIM niveau 3 vertaalt het conceptuele model naar een implementatie-onafhankelijke gegevensstructuur. Het voegt technische details toe zonder vast te leggen op een specifiek platform.

Verschil met conceptueel niveau:

  • Conceptueel (niveau 2): WAT moet worden vastgelegd
  • Logisch (niveau 3): HOE kan het worden gestructureerd

Logische modelkenmerken

Uitgebreidere specificatie

  • Datatypes: Concrete gegevenstypes (tekst, nummer, datum)
  • Lengtebeperkingen: Maximale aantal karakters of cijfers
  • Formaat-specifaties: Reguliere expressies, waardenlijsten
  • Constraintregels: Bedrijfsregels en validatielogica

Technische verfijning

  • Kardinaliteiten: Exacte minimale en maximale aantallen
  • Identificatie: Primaire sleutels en unieke attributen
  • Referentie-integriteit: Verwijzingen tussen objecttypen
  • Indexering: Performance-overwegingen voor toegang

Logische modelleerelementen

Verfijnde attributen

A-------ttODLPCCArbaeaoauijtntnrtbeagrsdhucttotieutyeornnttp:naatsye:iliop:Enieoex[ttkr:Na0:e:tuc-i:Imt9EtJne]l:aBgr9{fSei9-[(Nzec}p1bekir.r(tjo.oBefe1nunef]rerigsmseovreeBstrRepPrkl)vliioccpheptneunemnmeurn)iek)

Gespecificeerde relaties

R-----elBDICGaromoetoepnlinllsde::etismrgoINeahonuniergmtnitematd:zet:seripItaeAenea:lrgnnlieedFeozuoede[irnet1de:e.iian.ngdVe*gnra]enw[ks-o0esto.yeon.ntt1r]ebdoliapanttnuNiemuenmvmNeeerrdpaelarinlcdahuntidding

Gegevensgroepen

G--egCB---eoevmvTEWepae-enotlmbsseasgiafiirttoltoitoaeeernd:pinr:vbueUaumsRCntm:Lo:ee,nnrAtP::Noae1pcrA0ttsN0igo2,oeo0ngn,feeoevorlepmntasiaotneveallidatie

Transformatieregels vanuit conceptueel model

Objecttypen → Entiteiten

  • Elk objecttype wordt een logische entiteit
  • Abstracte objecttypen kunnen worden weggelaten
  • Specialisaties kunnen samengevoegd worden

Attributen → Velden

  • Conceptuele attributen krijgen concrete datatypes
  • Afleidbare attributen kunnen weggelaten worden
  • Identificerende attributen worden primaire sleutels

Relaties → Koppelingen

  • Associaties worden foreign key relaties
  • Many-to-many relaties krijgen tussentabellen
  • Composities worden geneste structuren

Logische modelleringspatronen

Identificatiepatronen

N---T--aetBBKcUSuSAvhUeuNGKnIqr--iDulInseiDuc(njmhuckomeneereirsvnspoleulerermerusmusataetodoelrenrrlllee:y:nsbo)seupednlnrio)iqpjuevenednie)deinnttiefgieerr))

Temporele patronen

G--S---etlBEaAGSdeitaetignenwagidgithngtejuegermzsielaai:dldcagsdikkdwpigitaeghnoarhegopriei:p:doid:edd:tne:til:dimidamejatesstusttumtam-am-tmptipijjddoptioneel)

Referentiedatapatronen

T-----ypCODGGeomeeedsfllcecidda:hniitriggaAitlNjivto1veaog0i:ntun::s(gt:p:eddrkaaiAsttmNtuua1mmr0y0okpetyi)oneel)

Constraintspecificatie

Domeinregels

CHECK (Geboorte_datum <= CURRENT_DATE)
CHECK (Lengte_x > 0 AND Lengte_x < 1000) 
CHECK (Email LIKE '%@%.%')

Referentiële integriteit

FWOHREERIEGNStKaEtYus(A=dr'eAsc_tIiDe)f'REFERENCESNummeraanduiding(ID)

Bedrijfsregels

EEWeeinnjzpaiedgrrisenosgoenmnokeiatnnbhmeiassxttiaomaraniaslchooeprdr1aetcaodirredemssanzidinjgenersoncpiheritenvgteeonsecgshetrsaetavaneannkanworden

Kwaliteitsbewaking

Normalisatie

  • 1NF: Geen herhalende groepen
  • 2NF: Geen partiële afhankelijkheid van samengestelde sleutels
  • 3NF: Geen transitieve afhankelijkheden

Denormalisatie overwegingen

  • Performance: Strategische redundantie voor snelheid
  • Usability: Vereenvoudiging voor eindgebruikers
  • Integration: Aansluiting bij bestaande systemen

Validatietechnieken

Automatische controles

  • MIM-conformiteit: Tooling voor modelvalidatie
  • Consistentie-checks: Kruisverwijzingen en constraints
  • Volledigheid-analyse: Coverage van functionele requirements

Review-processen

  • Technical review: Architecten en database-specialisten
  • Domain review: Functionele experts en data-eigenaren
  • Implementation review: Ontwikkelaars en system integrators

Documentatie-eisen

Technische specificatie

  • Datatype-definities: Precieze formaten en beperkingen
  • Constraint-catalogus: Alle bedrijfs- en technische regels
  • Indexering-strategie: Performance-optimalisatie

Implementatie-guidance

  • Mapping naar platforms: Hoe het model te implementeren in verschillende databases
  • Migratie-strategie: Hoe bestaande data over te zetten
  • Test-scenario’s: Hoe het model te valideren

Tools voor logisch modelleren

Database-ontwerp tools

  • ER/Studio: Enterprise data modellering
  • PowerDesigner: Comprehensive modellering platform
  • Oracle SQL Developer Data Modeler: Oracle-specifiek
  • MySQL Workbench: MySQL-gericht

Validatie-tools

  • Schema-validatoren: Automatische MIM-controle
  • Data-profiling tools: Analyse van bestaande datasets
  • Constraint-checkers: Validatie van bedrijfsregels

Uitdagingen logisch modelleren

Platform-onafhankelijkheid behouden

  • Vermijd: Database-specifieke datatypes
  • Gebruik: Standaard MIM-datatypes
  • Focus: Op logische structuur, niet implementatie

Performance vs Puurheid

  • Balans: Tussen gegevenskwaliteit en systeemprestaties
  • Documenteer: Afwijkingen van standaardpatronen
  • Rechtvaardigen: Technische beslissingen expliciet

Legacy-integratie

  • Analyseer: Bestaande datastructuren
  • Map: Oude naar nieuwe modellen
  • Migreer: Geleidelijk en gecontroleerd

Logisch modelleren vereist zowel conceptueel inzicht als technische kennis. Het is de brug tussen businessbehoeften en technische implementatie, waarbij kwaliteit en implementeerbaarheid in balans moeten blijven.