Opzet van een toolkit voor ISO 27001 (deel 2)

In het eerste artikel hebben we het gehad over de eerste voorzichtige opzet voor een tabelstructuur voor het vastleggen van de normen. Nu we dat hebben is het tijd om de eerste schermen te maken om dit te gaan ontsluiten. Daarvoor maak ik graag gebruik van de basiscode van een reeds bestaand project. Zo hebben we meteen een goede start!

De ISO Toolkit wordt ontwikkeld in CFML (Lucee) in combinatie met een Microsoft SQL Server database. Ik heb getwijfeld of het verstandig was om de toolkit in Thinkwise te ontwikkelen, maar dan zou ik direct te maken krijgen met behoorlijke licentiekosten. In eerste instantie ontwikkel ik de ISO Toolkit ter ondersteuning van mijn eigen werkzaamheden als Security Officer. Op dit moment is het nog niet duidelijk of de ISO Toolkit ook commercieel interessant gaat worden. Vandaar dat niet is gekozen voor Thinkwise. Overigens is het sowieso te overwegen om de ISO Toolkit als open source project te gaan neerzetten, maar dat komt later.

Ik heb dus gekozen om een bestaand project als startpunt te nemen. Het grote voordeel was dat ik direct een aantal zaken goed geregeld had, met name:

  • beveiligde inlog
  • gebruikerbeheer
  • mailen
  • logging
  • framework
  • helpteksten
  • foutafhandeling
  • upgrade scripts

Een mooi begin dus. Omdat het hier om een maatwerk oplossing ging, moest ik eerst de nodige code verwijderen. Gelukkig was een en ander al in een custom framework gezet, dus dit betekende niet veel meer dan het verwijderen van directories, objecten en verwijzingen. Dat ging razendsnel: na ongeveer een uurtje had ik een mooie basis staan voor de ISO Toolkit!

Mijn eerste focus is om de normstructuur beheerbaar te gaan maken. Het gaat dan meer specifiek over de onderdelen: hoofdstuk, alinea en artikel. Deze structuur is als volgt terug te vinden in de tabelstructuur:

onderdeel tabel
hoofdstuk norm_hoofdstuk
alinea norm_hoofdstuk
artikel norm_inhoud

De applicatie kent een beheerdeel en een algemeen deel. In beide delen wil ik dit onderdeel ontsluiten, met dien verstande dat je in het beheerdeel hoofdstukken, alinea's etc. kunt beheren, terwijl je in het algemene deel alleen informatie kunt toevoegen. Denk daarbij bijvoorbeeld aan de bewijslast, maar dat komt later. Tijd om schermen te maken!

De applicatie kent een beheerdeel en een algemeen deel. In beide delen wil ik dit onderdeel ontsluiten, met dien verstande dat je in het beheerdeel hoofdstukken, alinea's etc. kunt beheren, terwijl je in het algemene deel alleen informatie kunt toevoegen. Denk daarbij bijvoorbeeld aan de bewijslast, maar dat komt later. Tijd om schermen te maken!

Gelukkig had ik de normgegevens al in een Excelbestand. Via een snelle import heb ik deze gegevens ingelezen in mijn tabelstructuur. Op die manier kan ik tenminste meteen werken met echte data. Al snel had ik mijn eerste scherm gereed:

Van hieruit wil ik dan kunnen doorklikken naar de details van de norm, waarbij ik een tabstructuur wil hanteren met minimaal de volgende elementen:

  • hoofdstuk
  • alinea
  • artikel
  • bewijslast
  • log

Volgende stap is om deze tabstructuur op te zetten en de beheerschermen hiervoor te maken. Belangrijke uitgangspunten die ik in ieder scherm wil gaan doorvoeren is het loggen van wijzigingen, het aanbieden van een parameterscherm en de mogelijkheid om een item te verwijderen (mits aan bepaalde criteria is voldaan).

Over mij

Mijn naam is Marcel van Langen. Ik ben werkzaam als freelancer. Een harde en eerlijke werker, met een passie voor doelgerichte oplossingen. Ik voer al jaren mooie klussen uit voor geweldige klanten. Mijn technische specialisaties zijn het Thinkwise platform, SQL Server en ColdFusion development.

Lees verder...
Diensten