Documentatie op basis van metadata (1)

Vergelijkbare documenten
DATAMODELLERING CRUD MATRIX

Historische informatie in een Spatial Dynamisch Data Warehouse. Wil de Jong Enterprise Architect

DATAMODELLERING DATA MAPPING MODEL

Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

Agile Business Intelligence met datavirtualisatie

Form follows function -Louis Henry Sullivan

DATAMODELLERING BASIS UML KLASSEMODEL

DATAMODELLERING TOEPASSEN DATA ANALYTICS

DATAMODELLERING RACI MATRIX

Het belang van. Data Modellering. GEMINIT Training. Data Modellering. Frédéric BARBIER

DATAMODELLERING ER DIAGRAM

Business Intelligence. Toepassing BI Database en Datawarehouse BI proces BI Organisatie Implementatie BI

DATAMODELLERING BEGRIPPENBOOM

TROWA. Visie en scope Informatiemodel Waterschapsverordening. Datum : : 2.0, definitief

DATAMODELLERING SIPOC

Data Warehouse. Een introductie. Algemene informatie voor medewerkers van SYSQA B.V.

Organisatie SYSQA B.V. Pagina 1 van 6 Titel Overzicht Versie 1.0 Onderwerp Overzicht blackbox testtechnieken Datum 15 februari 1996

Canonieke Data Modellering op basis van ArchiMate. Canonieke Data Modellering op basis van Archimate Bert Dingemans

Software Test Plan. Yannick Verschueren

Technisch Ontwerp W e b s i t e W O S I

Testen van Datawarehouses en Informa2e. Kan het 2x zo snel, 2x zo goedkoop en 2x zo volledig?

Conceptueel Modelleren GEÏNTEGREERD DATA MODELLEREN MET DEMO EN DATA VAULT

1. Milieuklacht Handleiding opladen XML in mkros Werken met Refertes... 5

Curriculum Vitae Ishak Atak. Naam : Ishak Atak Roepnaam : Ishak. Woonplaats : Utrecht Geboorte datum :

Kwaliteitsbewaking en testen in ICT beheerorganisaties

Data Governance van visie naar implementatie

Tools voor canonieke datamodellering Bert Dingemans

Technische architectuur Beschrijving

DATAMODELLERING SCORE MATRIX

Project Fasering Documentatie Applicatie Ontwikkelaar

Haaglanden Medisch Centrum

Technisch Ontwerp Ontwerp template

Automated Engineering White Paper Bouw & Infra

DATAMODELLERING ARCHIMATE DATAMODELLERING

Dat we scherpe en compacte schema s kunnen maken voor berichten in koppelvlakken, en die ook kunnen beheren. Dat we op een consistente manier

BI appliance op maat. Ruud Geerlings

DATAMODELLERING ARCHIMATE DATA- & APPLICATIEMODELLERING

Inhoud: Inleiding tot Taak Omschrijving van vacatures 2 Matrix van benodigde 5 Bronvermeldingen 7

Solvency II: Een ander soort uitdaging voor BI?

Technische keuzes Management Informatie Systeem MeanderGroep

Tool voor certificering instrumenten voor verantwoord digitaal

Introductie. NAV performance. Derk Jan Oelemans. Manager Development, BI en E-Business Qurius Business Solutions

Beveiligingsbeleid. Online platform Perflectie

MA!N Rapportages en Analyses

Intake <applicatie> Conclusie & Aanbevelingen. <Datum> 1.0. <Auteur> ###-#######

Checklist basisontwerp SDM II

Syfadis Suite. LMS & Talent applicatie

Monitoring & logging bij DUO

Thinking of development

Invantive Producer. Als integriteit en compliance noodzakelijk is. Maar niks extra mag kosten.

Persoonlijke gegevens. Werkgevers / Projecten. Certificering. Werkervaring. E.H.B. (Ewout) Vocking

Asset Lifecycle Informatie Management. Visie op Asset management

Betekent SOA het einde van BI?

Release notes. Versie 2.3

Rapportage Pizzasessie Functioneel-beheer.com Specialisten Managers Adviseurs Algemeen functioneel beheer applicatiebeheer informatiemanagement

1 XML/CSV documentatie

DATAMODELLERING DATA FLOW DIAGRAM

informatiemanagement.heliview.nl

Genereren van een webapplicatie op basis van DLA

INTRODUCTIE MAVIM BPM ONZE SOFTWARE DEMONSTRATIE

4orange Connect. 4orange, Hogehilweg CD Amsterdam Zuidoost

Voorwaarden en definities supportovereenkomst

Incore Solutions Learning By Doing

Business Intelligence White Paper

OP KOERS NAAR EEN DATAGEDREVEN ORGANISATIE?

DRIVEN BY AMBITION SUCCESVOL EXACT IMPLEMENTEREN IN DE PRIVATE CLOUD

Identity Management Gebruikers en Rechten in Beheer (GRiB)

CEL. Bouwstenen voor een elektronische leeromgeving

occurro Vertrouwt u uw gegevens? BI wordt volwassen Kasper de Graaf 31 maart 2009 De kracht van BI en Architectuur in de praktijk - Centraal Boekhuis

KIM. Slimme acties ondernemen

Quick scan data kwaliteit. Andre Bal

Taxis Pitane SQL beheerder. Censys BV - Eindhoven

ARE methodiek Het ontwikkelen van Informatie Elementen

PowerPivot voor Excel 2016 Level I

Update branche RI&E Waterschappen

Samenvatting NOTITIE. : Ellen Debats & Arjan KLoosterboer. : Leden van de expertgroep informatiemodellen

Proefexamen ITIL Foundation

Business Intelligence Teststrategie

Toekomstbestending maken van selectie tool Rekening houdend met strikte privacy wetgeving

Agenda Wat zijn de gevolgen van Cloud en Gridcomputing voor de gebruikersorganisatie en de beheersfunctie.

Ontwikkelaar ICT. Context. Doel

BUSINESS INTELLIGENCE

OpenText RightFax. Intuitive Business Intelligence. Whitepaper. BI/Dashboard oplossing voor OpenText RightFax

Begrippenlijst Inzicht in de wereld van big data, marketing en analyse

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen:

Beveiligingsbeleid Perflectie. Architectuur & Procedures

Registratie Data Verslaglegging

Cursus PowerPivot voor Excel 2016 Level I

Olde Bijvank Advies Organisatieontwikkeling & Managementcontrol

Software Test Plan. Yannick Verschueren

RUM. requirements Management. SPIder session Project. driven by requirements 25th april. Risk assessed User

Business Process Management

5 Programmastructuur

Het digitaal samenstellen en uniformeren van projectdocumentatie.

Installatie Avalanche Windows

Koppeling Profit <> Textkernel

Transcriptie:

Methode voor documentatieaanpak DWH-omgeving Documentatie op basis van metadata (1) Burkhard Lau Velen van ons stonden als ontwikkelaar of beheerder van een datawarehouse al eens voor de taak om de effecten van een wijziging van een bestaande informatiestroom in kaart te brengen (impact-analyse). Of wij moesten ooit als beheerder documentatie beoordelen met de bedoeling om het bijbehorende softwarepakket in beheer te nemen. Velen van ons kennen dan ook het gevoel naar een speld in een hooiberg te moeten zoeken, waarbij het niet eens zeker is of de speld überhaupt in de hooiberg aanwezig is. Dit artikel is de eerste in een reeks van drie waarin een methode beschreven wordt die anders dan het conventionele documenteren meer op het genereren van de nodige documentatie inzet. Globaal Ontwerp De gebruikelijke manier om kennis over IT-processen vast te leggen, is om deze te documenteren, zie afbeelding 1. Organisaties met een datawarehouse beginnen een documentatieprobleem te voelen, wanneer er wijzigingen op de bestaande processen plaats moeten vinden. Ondanks het feit dat er flink wat resources (inspanning, tijd, geld) in de opzet van standaards en richtlijnen voor het documenteren en het vervaardingen van documentatie zelf gestopt werd, heeft men vaak toch een gevoel van onvolledige of onbetrouwbare documentatie. Het lijkt wel een inherente eigenschap van documentatie om onvoldoende te zijn. Om toch een betrouwbare basis voor een volgend release te verkrijgen, worden dikwijls veel tijd en kosten besteed aan het reverse engineren van de bestaande processen; een inspanning die bij voldoende en goede documentatie overbodig zou zijn. Soorten documentatie Voor software bestaan twee soorten documentatie: Black Boxdocumentatie en White Box-documentatie. Black Box-documentatie beschrijft het product van de buitenkant met de doelstellingen zoals vermeld in tabel 1. Doelgroep Document Doelstelling Aanpak Gebruikers Informatie- De gebruikers- Vraag in analyse vraag terug- rapportagevorm Functioneel Ontwerp koppelen representeren Gebruikers Gebruiks- Handleiding De functionali aanwijzing voor het teit van het gebruik van het product vertalen product in de manier van gebruik Technisch Ontwerp Test Plan Operators Operator- Informatie over Foutcodes toeinstructies het starten, lichten, batch stoppen en windows specifimonitoren van ceren, herstart- het product acties uitleggen DBA s DBA-instructies Waarborgen van Opgave van Bouw Test Uitvoering frequenties beschikbaarheid nodige schijfvan database ruimte, backup- Afbeelding 1: Documenteren is de gebruikelijke manier om kennis over IT-processen vast te leggen. Tabel 1. Database Magazine Nummer 1 februari 2006 11

Doelgroep Document Doelstelling Aanpak Applicatie Informatie- Betrouwbare Door een overbouw, analyse, basis voor zichtelijke plattebeheer FO s en TO s verdere soft- grond snel de plek ware releases voor wijzigingen bepalen, en via impact-analyse het effect op andere informatiestromen in kaart hebben Informatie- Informatie- Datakwaliteit Gegevensdefinities manager analyse, controleren beheren, de FO s en TO s naleving van business-regels controleren Tabel 2. White Box-documentatie beschrijft de interne werking van het product met de doelstellingen zoals vermeld in tabel 2. In deze artikelserie gaat het over White Box-documentatie, specifiek vanuit de beheersbaarheid van de opgeleverde processen en gegevensstructuren. Probleemanalyse In de praktijk bestaan twee oorzaken van gebrek aan vertrouwen in de bestaande documentatie: onvoldoende toegankelijkheid en onvoldoende betrouwbaarheid. Dan gaan we er overigens gemakshalve van uit dat men de juiste applicatie heeft om de documentatie in ieder geval te kunnen lezen. Meestal is dit in één of ander MS Office-formaat, maar wanneer deze in een ander formaat is opgesteld, zoals PDF, UML, SDW enzovoort, dan moet uiteraard wel de bijbehorende applicatie beschikbaar zijn. Dat blijkt ook nog al eens voor problemen te zorgen. Onvoldoende toegankelijkheid zoals in dit artikel bedoeld heeft ermee te maken dat de informatie alleen met moeite of helemaal Anders 12% In de hoofden van medewerkers 42%% niet ontsluitbaar is. Achter elkaar loopt men tegen de volgende drie niveaus aan: - op welke plek moet ik het document zoeken; - plek gevonden: welk van (de versies van) de documenten is het; - versie gevonden: waar precies en op welke manier staat de informatie in het document? Onvoldoende betrouwbaarheid heeft ermee te maken dat de informatie niet volledig en correct is: - informatie wel gevonden, maar blijkt niet (meer) overeen te komen met het proces (verkeerde documentversie); - informatie niet gevonden, is nooit gedocumenteerd. David Marco, een internationaal erkende expert op het gebied van metadata stelt dat bijna 50 procent van alle informatie niet expliciet vastgelegd is (afbeelding 2). Abstractieniveaus Documentatie op papier 26% Elektronische documentatie 20% Bron Meta Data & Knowledge Management: Meta Data Repository Myths by David Marco. Afbeelding 2: Waar zijn volgens David Marco data gedocumenteerd? Documentatie bestaat in drie niveaus van abstractie, alleen zijn de afbakeningen niet altijd even duidelijk. Als we veronderstellen dat een architect de functionele modules en hun interfaces van de applicaties (de grote lijnen), maar ook de te kiezen hardware en software (implementatie randvoorwaarden) heeft vastgelegd, hebben we hiermee ook de afbakeningen van de drie abstractieniveaus vastgelegd (zie tabel 3). Niveau Essentie Rol Activiteit Resultaat Toelichting Conceptueel Wat proces- Informatie Analist Bepaling van Informatie-analyse/ De informatiebehoefte onafhankelijke informatiestromen Bron-analyse van gebruikers in kaart informatiestromen brengen, en deze aan de bron(nen) relateren Functioneel Hoe applicatie- Functioneel Toevoeging van Functioneel ontwerp Het structureren van onafhankelijk ontwerper procesinformatie (FO) / Logisch informatiestromen in Datamodel (LDM) processen Technisch Hoe techniek- Technisch ontwerper, Vertaling van Technisch ontwerp TO tools zijn ETL tools, afhankelijk Tool specialist functioneel ontwerp (TO) / Technisch datamodelleringtools, naar de techniek Datamodel (TDM) en rapportagetools Tabel 3. 12 Database Magazine Nummer 1 februari 2006

IA/GO Globaal ontwerp: Data stores voor user data, Data manipulatie processen Person Data Key Name Date of Birth IDs Names Date without time Log updates FO Applicatie-onafhankelijk ontwerp; logisch datamodel, functioneel ontwerp Person Key num Yes Name string No Date of Birth Date without time No Log updates by identifying the process and the records updated TO Applicatie-afhankelijk ontwerp: technisch datamodel, technisch ontwerp Dim_Persoon ID int 4 Yes Naam char 35 No Geboortedatum date 8 No Use database trigger on every mutation to log the process and the records updated Bouw Operationele metadata: schema information (DDL) en/of process software DWH.DIM_Persoon ID int PK Naam nchar(35) Geboortedatum date Update Trigger on Table Persoon: WriteRecord Proces(ID, Today); WriteRecord Mutation (Persoon.ID, proces.id); End; Operation Gegevens: User data (Database) en/of Process Data (Log) 23 Piet 16-05-1964 63 Jan 23-11-1972 23 1 63 1 23 2 1 03/24/05 2 03/26/05 Afbeelding 3: Voorbeeld. Tussen de drie abstractieniveaus bestaan inhoudelijk relaties; ze zijn immers metadata voor hetzelfde gegeven, alleen op verscheidene abstractieniveaus voor verscheidene doeleinden. Er bestaat echter ook een relatie met de uiteindelijk gebouwde of gegenereerde applicaties en gegevensstructuren in de proceslaag, die op hun beurt weer een interpretatie aan de bedrijfs- en procesgegevens in de proceslaag geven (zie tabel 4). Zie afbeelding 3 voor een voorbeeld van de hier geschetste vijf niveaus. Toepassing op BI Tot hier ging het over documentatie in algemene zin, BI heeft echter een speciaal applicatietype, waarmee we ook de documentatiebehoeftes specifieker kunnen maken. Een informatiestroom in een BI-omgeving bestaat altijd uit een aantal ETL-stappen met gegevensverzamelingen als begin en eindpunt, gevolgd door een publicatiestap om gegevens grafisch verantwoord in een afgesproken rapportagevorm aan gebruikers aan te bieden. Hiermee hebben we meteen drie verscheidene soorten van documentatie te pakken: 1. Gegevensverzamelingen; 2. ETL-processen; 3. Rapportages. Terwijl gegevensverzamelingen in veel meer gebieden dan alleen in BI worden toegepast, is de toepassing van ETL of rapportage betrekkelijk kenmerkend voor BI. De technieken en tools voor het vastleggen van documentatie voor gegevensverzamelingen zijn dan ook stukken verder verspreid en gevorderd dan voor ETL en rapportages het geval is. Om een informatiestroom vanaf de bron tot een rapport te kunnen volgen, is het nodig om de bij elkaar horende documenten per abstractieniveau bij elkaar te kunnen voegen. Op technisch niveau is voor gestructureerde metadata het Common Warehouse Metamodel (CWM) bedoeld, maar voor ongestructureerde documentatie of documenten op functioneel niveau zijn geen integratiemogelijkheden bekend. Een integrale beschrijving op Niveau Essentie Rol Activiteit Resultaat Toelichting Operationeel Operationele metadata Ontwikkelaar Vertaling van technisch Database schema s, Alles wat TO tools niet ontwerp naar een ETL software, kunnen genereren, implementatie Report-definities moet gebouwd worden Gegevens Afspiegeling van DBA, operationeel Monitoring van Bedrijfsgegevens / Deze activiteiten hebben realiteit of processen beheer processen en groei Procesgegevens niets met metadata, bedrijfsgegevens maar met data te maken Tabel 4. Database Magazine Nummer 1 februari 2006 13

Niveau Gegevensopslag ETL Rapport Conceptueel Informatie model Entiteit-operatoren, Attribuut-transformaties, Informatie model Attribuut-validaties Functioneel Logisch Datamodel Functioneel ontwerp met procesinformatie Layout, autorisaties Technisch Databaseafhankelijk technisch Technisch ontwerp met implementatie- Rapportage tool-afhankelijke datamodel afhankelijke details realisatie Tabel 5. conceptueel niveau is mogelijk, wanneer een rapport als een entiteit binnen een informatiemodel wordt gezien. Dan kan namelijk de gehele informatiestroom als een volgorde van gegevenstransformaties worden gemodelleerd. Documentatie-oplossing White Box-documentatie is dus in een matrix te plaatsen, waarbij horizontaal informatiestromen beschreven worden, en verticaal deze beschrijving van informatiestromen op drie abstractieniveaus gebeurt (zie tabel 5). De oplossing voor de boven genoemde problemen ligt in de relationele sfeer: - Horizontale relaties: door de bij een informatiestroom behorende documenten aan elkaar te relateren, wordt de toegankelijkheid gewaarborgd; - Verticale relaties: door vanuit de proceslaag via de technische en functionele documenten naar de conceptuele documenten van een bepaald item uit de proceslaag te relateren, is de documentatie verifieerbaar en hiermee dus is de betrouwbaarheid groter. Als neveneffect zijn de geproduceerde documenten consistenter, waardoor ook ontwikkeltijden worden verkort. Horizontale relaties: toegankelijkheid De oplossing voor onvoldoende toegankelijkheid is om structuur aan te brengen. Zoals bestanden in een bestandssysteem door hun plek in een boomstructuur teruggevonden kunnen worden, kan ook informatie door het volgen van een structuur teruggevonden worden. Documenten moeten zowel onderling structuur hebben (een externe structuur), als ook binnen elk afzonderlijk document dient een structuur te bestaan (interne structuur). Voor de externe documentenstructuur worden vaak afspraken gemaakt over directory-structuren en documentnaamgevingen, terwijl voor de interne documentstructuur sjablonen bestaan. Hiermee zou het probleem van de toegankelijkheid opgelost zijn, als de volgende punten uit de praktijk geen roet in het eten zouden gooien: 1. Zowel de externe als de interne documentenstructuren zijn niet expliciet beschreven, waardoor de betekenis onduidelijk is; 2. De externe documentenstructuur wordt niet nageleefd; 3. De sjabloon, die de interne documentenstructuur bepaalt, wordt vervormd. Daarnaast is deze aanpak zeer gevoelig voor redundantie. Dezelfde structuur komt vaak voor in meerdere documenten, zelfs binnen één document kan dezelfde structuur gemakkelijk meermaals voorkomen. Dit is niet alleen saai voor functionele ontwerpers, maar werkt ook het ontstaan van inconsistenties in de hand. Een andere invalshoek verkrijgen we als we de structuren van een sjabloon, maar ook de afspraken over externe documentatiestructuren, in databasestructuren vertalen. We hebben dan in plaats van Word wel een ander gebruikersinterface nodig, maar met dit uitgangspunt komen bovengenoemde punten óf te vervallen, óf wegen stukken minder: 1. De gekozen databasestructuur kan met metadata beschreven worden, de betekenis van elk item kan dus consistent op één plek worden vastgelegd; 2. De externe documentenstructuur wordt afgeleid uit de relaties in de database; 3. De interne documentenstructuur wordt afgedwongen, want de rubrieken op zich kunnen niet worden gewijzigd, alleen kan niet worden afgedwongen dat de rubriek ook inhoudelijk correct wordt ingevuld; 4. Sterkste punt is echter het ontbreken van redundantie. Structuren worden in de database slechts één keer vastgelegd, en kunnen vervolgens in diverse afgeleide documenten voorkomen, maar steeds op dezelfde manier. Verticale relaties: betrouwbaarheid In gebruikelijke projectmethodieken is de documentatie leidend, wat wil zeggen dat eerst de datastructuren en processen op papier worden gezet, die pas daarna gebouwd worden. Minder aandacht is er doorgaans voor het verifiëren of het technische ontwerp ook daadwerkelijk met het functionele ontwerp overeenkomt of dat het gebouwde proces ook volgens het technische ontwerp gemaakt is. Daarom wordt doorgaans ook afgeleide documentatie gegenereerd, dat betekent dat de bestaande datastructuren en processen worden gere-engineerd en de resultaten weer in documenten worden vastgelegd. Die documenten beschrijven dan het actuele beeld van het proces nauwkeurig. Deze documenten staan over het algemeen los van de projectdocumentatie, en geven eveneens naar verloop van tijd de realiteit niet meer goed weer. De oplossing voor betrouwbaarheid is de verifieerbaarheid van de documentatie. Wanneer de documentatie op detailniveau koppelbaar is aan het gedocumenteerde proces of/en gegevensstructuur, 14 Database Magazine Nummer 1 februari 2006

is zowel de volledigheid als correctheid controleerbaar. Dit vereist echter een identificatie van zowel documentdetails als procesdetails, en een omgeving om deze aan elkaar te kunnen koppelen. Een opslag in een database is een aangewezen manier om metadata onderwerpen aan fysieke tabellen en velden en ETLprocessen te koppelen. De identificatie van gegevensstructuren en processen zal via hun technische naam gebeuren. FCO-IM Op het eerste gezicht lijkt de geschetste matrix op de aanpak van FCO-IM (Fully Communication Oriented Information Modeling). Beide aanpakken maken een onderscheid tussen drie lagen met onderlinge relaties. De aanpakken verschillen echter in hun doelstellingen, waardoor de uitwerking van de matrix en de relaties verschilt. FCO-IM is een methode om gegevensstructuren op een eerder informele manier aan gebruikers te kunnen presenteren, en hiermee hun geldigheid ook te kunnen toetsen. Uit semantische gegevensmodellen kunnen logische modellen worden afgeleid en transformaties tussen gegevensmodellen kunnen ook worden beschreven. Deze relaties zijn echter niet de kern van FCO-IM en worden ook niet verder gebruikt. De hier beschreven aanpak richt zich echter op het beschrijven van informatiestromen om deze beheersbaar te maken. Hiervoor zijn zowel beschrijvingen van gegevenstructuren als hun transformaties binnen één laag als ook de vertaling naar een lager of hoger abstractieniveau essentieel. Het uiteindelijke doel van de informatiestromen, rapportages, zouden via FCO-IM gepresenteerd kunnen worden aan een gebruiker, terwijl de hiervoor benodigde databases alleen voor techneuten interessant zijn. Wel hebben we voor de beschrijving van informatiestromen nog enige procesinformatie nodig, die buiten de beschouwing van FCO-IM valt. Conclusies In dit artikel is getracht de oorzaken te identificeren van een vaak gehoorde klacht over onvoldoende documentatie, waarbij we het gebrek aan toegankelijkheid en betrouwbaarheid als oorzaken hebben gevonden. Nadat we hebben geconstateerd, dat White Box-documenten altijd via hun abstractieniveau en plek binnen een informatiestroom in een cel in een denkbeeldige matrix geplaatst kunnen worden, hebben we de introductie van horizontale en verticale relaties tussen de individuele documenten als oplossingen gevonden. In het vervolgartikel wordt besproken hoe deze horizontale en verticale relaties in de praktijk gerealiseerd kunnen worden. Burkhard Lau Dr. Ir. Burkhard Lau (burkhard@keper.nl) is senior BI consultant bij BI Garant BV. Database Magazine Nummer 1 februari 2006 15