Functionele Specificatie van GRCcontrol Rieks Joosten (rieks.joosten@tno.nl) 4 september 2014
Inhoudsopgave 1 Inleiding 2 2 Gemeenschappelijke taal 3 2.1 Automatiseerbare samenhangen................... 3 3 Diagnose 4 4 Conceptuele Analyse 6 5 Procesanalyse 7 5.1 Automatiseerbare samenhangen................... 7 6 Gegevensstructuur 9 6.1 Classificaties............................. 9 6.2 Basiszinnen.............................. 9 6.3 Logisch gegevensmodel........................ 9 6.4 Technisch datamodel......................... 10 6.4.1 Tabel: Bron1......................... 10 6.4.2 Tabel: Functie........................ 11 6.4.3 Tabel: Maatregel....................... 11 6.4.4 Tabel: Norm......................... 11 6.4.5 Tabel: Organisatie...................... 11 6.4.6 Tabel: bron2......................... 11 6.4.7 Tabel: heeftvoldaanaan................... 12 6.4.8 Tabel: iscompliantmet................... 12 6.4.9 Tabel: isdirectedeelnormvan................ 12 1
Hoofdstuk 1 Inleiding Dit document 1 definieert de functionaliteit van een informatiesysteem genaamd GRCcontrol. Het definieert de database en de business-services van GRCcontrol door middel van bedrijfsregels 2. Deze afspraken staan opgesomd in hoofdstuk 2, geordend op thema. De diagnose in hoofdstuk 3 is bedoeld voor de auteurs om gebreken uit hun Ampersand model op te sporen. 1 Dit document is gegenereerd op 4-9-2014 om 11:40:38, dmv. Ampersand v3.0.3.1406, build time: 25-Aug-14 12:54:30 UTC. 2 Het ontwerpen met bedrijfsregels is een kenmerk van de Ampersand aanpak, die gebruikt is bij het samenstellen van dit document. 2
Hoofdstuk 2 Gemeenschappelijke taal Dit hoofdstuk beschrijft een natuurlijke taal, waarin functionele eisen ten behoeve van GRCcontrol kunnen worden besproken en uitgedrukt. Hiermee wordt beoogd dat verschillende belanghebbenden hun afspraken op dezelfde manier begrijpen. De taal van GRCcontrol bestaat uit begrippen en basiszinnen, waarin afspraken worden uitgedrukt. Wanneer alle belanghebbenden afspreken dat zij deze basiszinnen gebruiken, althans voor zover het GRCcontrol betreft, delen zij precies voldoende taal om afspraken op dezelfde manier te begrijpen. Alle definities zijn genummerd omwille van de traceerbaarheid. 2.1 Automatiseerbare samenhangen Nu volgen definities van de concepten organisatie, bron en norm. Definitie 1: een bedrijf, of onderdeel daarvan, die één implementatie van GRCcontrol gebruikt. Definitie 2: een identificatie van (naam voor) de oorsprong van een verzameling Normen. Definitie 3: een uitspraak, gedaan in een Bron, waaraan voldaan moet zijn om compliant te zijn c.q. te voldoen aan die Bron. Organisatie Bron Norm 3
Hoofdstuk 3 Diagnose Dit hoofdstuk geeft een analyse van het Ampersand-script van GRCcontrol. Deze analyse is bedoeld voor de auteurs van dit script. Op basis hiervan kunnen zij het script completeren en mogelijke tekortkomingen verbeteren. GRCcontrol specificeert niet welke rollen de inhoud van welke relaties mogen wijzigen. GRCcontrol kent regels aan rollen toe. De volgende tabel toont welke regels door een bepaalde rol kunnen worden gehandhaafd. regel ExecEngine Compliance vaststellen Compliance herroepen Niet langer voldoen aan samengestelde Norm Voldoen aan samengestelde Norm Alle concepten in dit document zijn voorzien van een bestaansreden. Relaties iscompliantmet, bron, isdirectedeelnormvan en heeftvoldaanaan zijn niet voorzien van een reden van bestaan (purpose). Alle relaties in dit document worden in één of meer regels gebruikt. Op regelnummers 62, 69, 76 en 83 van bestand CompLions.adl worden regels gedefinieerd, zonder verdere uitleg. Onderstaande tabel bevat per thema (dwz. proces of patroon) tellingen van het aantal relaties en regels, gevolgd door het aantal en het percentage daarvan dat een referentie bevat. Relaties die in meerdere thema s gedeclareerd worden, worden ook meerdere keren geteld. Thema Relaties Met referentie % Regels Met referentie % 4
Automatiseerbare samenhangen 0 0-4 0 0% Gehele context 4 0 0% 4 0 0% Alle regels in proces Automatiseerbare samenhangen zijn gekoppeld aan rollen. Alle rol-regel-koppelingen gaan over regels die binnen proces Automatiseerbare samenhangen gedefinieerd zijn. De populatie in dit script beschrijft geen onderhanden werk. De populatie in dit script overtreedt geen regels. 5
Hoofdstuk 4 Conceptuele Analyse Dit hoofdstuk beschrijft een formele taal, waarin functionele eisen ten behoeve van GRCcontrol kunnen worden besproken en uitgedrukt. De formalisering dient om een bouwbare specificatie te verkrijgen. Een derde met voldoende deskundigheid kan op basis van dit hoofdstuk toetsen of de gemaakte afspraken overeenkomen met de formele regels en definities. 6
Hoofdstuk 5 Procesanalyse GRCcontrol specificeert niet welke rollen de inhoud van welke relaties mogen wijzigen. GRCcontrol kent regels aan rollen toe. De volgende tabel toont de regels die door een bepaalde rol worden gehandhaafd. Rol ExecEngine Regel Compliance vaststellen Compliance herroepen Niet langer voldoen aan samengestelde Norm Voldoen aan samengestelde Norm 5.1 Automatiseerbare samenhangen Compliance vaststellen Om te komen tot de formalisatie in vergelijking 5.4 zijn de volgende drie relatiesen nodig. heeftvoldaanaan : Organisatie Norm (5.1) bron : Norm Bron (5.2) iscompliantmet : Organisatie Bron (5.3) Activiteiten, die door deze regel zijn gedefinieerd, zijn afgerond zodra: heeftvoldaanaan bron iscompliantmet (5.4) Dit komt overeen met Compliance vaststellen (?? op pg.??). Compliance herroepen We gebruiken definities 5.1 (heeftvoldaanaan), 5.2 (bron) en 5.3 (iscompliantmet). Activiteiten, die door deze regel zijn gedefinieerd, zijn afgerond zodra: iscompliantmet heeftvoldaanaan bron (5.5) Niet langer voldoen aan samengestelde Norm Om dit te formaliseren is een relatieisdirectedeelnormvan nodig (5.6): 7
isdirectedeelnormvan : Norm Norm (5.6) Daarnaast gebruiken we definitie 5.1(heeftVoldaanAan) om eis?? te formaliseren: Activiteiten, die door deze regel zijn gedefinieerd, zijn afgerond zodra: heeftvoldaanaan; (I Norm isdirectedeelnormvan ; isdirectedeelnormvan) heeftvoldaanaan isdirec (5.7) Voldoen aan samengestelde Norm We gebruiken definities 5.6 (isdirecte- DeelnormVan) en 5.1 (heeftvoldaanaan). Activiteiten, die door deze regel zijn gedefinieerd, zijn afgerond zodra: heeftvoldaanaan isdirectedeelnormvan heeftvoldaanaan (5.8) 8
Hoofdstuk 6 Gegevensstructuur Dit hoofdstuk bevat het resultaat van de gegevensanalyse. De opbouw is als volgt: We beginnen met het classificatiemodel, gevolgd door een overzicht van alle relaties, die samen de basis vormen van de rest van deze analyse. tenslotte volgen achtereenvolgend het logische- en technische gegevensmodel. 6.1 Classificaties Er zijn geen classificaties gedefinieerd. 6.2 Basiszinnen In deze paragraaf worden de basiszinnen opgesomd, die een rol spelen bij het ontwerp van de gegevensstructuur. Per basiszin wordt de naam en het bron- en doelconcept gegeven, alsook de eigenschappen van deze relatie. iscompliantmet : Organisatie Bron Eigenschappen: -- bron : Norm Bron Eigenschappen: SUR isdirectedeelnormvan : Norm Norm Eigenschappen: ASY, IRF heeftvoldaanaan : Organisatie Norm Eigenschappen: -- 6.3 Logisch gegevensmodel De afspraken zijn vertaald naar een gegevensmodel. Dit gegevensmodel is in figuur 6.1 weergegeven. Er zijn geen gegevensverzamelingen. 9
Figuur 6.1: Logisch gegevensmodel van GRCcontrol 6.4 Technisch datamodel De afspraken zijn vertaald naar een technisch datamodel. Dit model is in figuur 6.2 weergegeven. Figuur 6.2: Technisch gegevensmodel van GRCcontrol Het technisch datamodel bestaat uit de volgende 9 tabellen: 6.4.1 Tabel: Bron1 Deze tabel heeft de volgende 1 velden: Bron Dit attribuut is de primaire sleutel. SQLVarchar 255, Verplicht, Uniek. 10
6.4.2 Tabel: Functie Deze tabel heeft de volgende 1 velden: Functie Dit attribuut is de primaire sleutel. SQLVarchar 255, Verplicht, Uniek. 6.4.3 Tabel: Maatregel Deze tabel heeft de volgende 1 velden: Maatregel Dit attribuut is de primaire sleutel. SQLVarchar 255, Verplicht, Uniek. 6.4.4 Tabel: Norm Deze tabel heeft de volgende 1 velden: Norm Dit attribuut is de primaire sleutel. SQLVarchar 255, Verplicht, Uniek. 6.4.5 Tabel: Organisatie Deze tabel heeft de volgende 1 velden: Organisatie Dit attribuut is de primaire sleutel. SQLVarchar 255, Verplicht, Uniek. 6.4.6 Tabel: bron2 Dit is een koppeltabel, die de relatie Norm bron Bron implementeert. De tabel bestaat uit de volgende kolommen: Bron Dit attribuut is de primaire sleutel. SQLVarchar 255, Optioneel. Norm Dit attribuut implementeert de relatie Norm bron Bron. SQLVarchar 255, Verplicht. 11
6.4.7 Tabel: heeftvoldaanaan heeftv oldaanaan Dit is een koppeltabel, die de relatie Organisatie N orm implementeert. De tabel bestaat uit de volgende kolommen: Organisatie Dit attribuut verwijst naar een voorkomen in de tabel Organisatie SQLVarchar 255, Verplicht. Norm heeftv oldaanaan Dit attribuut implementeert de relatie Organisatie N orm. SQLVarchar 255, Verplicht. 6.4.8 Tabel: iscompliantmet Dit is een koppeltabel, die de relatie Organisatie iscompliantmet Bron implementeert. De tabel bestaat uit de volgende kolommen: Organisatie Dit attribuut verwijst naar een voorkomen in de tabel Organisatie SQLVarchar 255, Verplicht. Bron Dit attribuut implementeert de relatie Organisatie iscompliantmet Bron. SQLVarchar 255, Verplicht. 6.4.9 Tabel: isdirectedeelnormvan isdirectedeelnormv an Dit is een koppeltabel, die de relatie Norm N orm implementeert. De tabel bestaat uit de volgende kolommen: SrcNorm Dit attribuut verwijst naar een voorkomen in de tabel Norm SQLVarchar 255, Verplicht. TgtNorm isdirectedeelnormv an Dit attribuut implementeert de relatie Norm N orm. SQLVarchar 255, Verplicht. 12
Woordenlijst Bron een identificatie van (naam voor) de oorsprong van een verzameling Normen.. 3 Norm een uitspraak, gedaan in een Bron, waaraan voldaan moet zijn om compliant te zijn c.q. te voldoen aan die Bron.. 3 Organisatie een bedrijf, of onderdeel daarvan, die één implementatie van GRCcontrol gebruikt.. 3 13