Al die woorden op het scherm. Weer een blogartikel. Zoveel informatie, wanneer moet ik dit allemaal lezen? Ook Guardian360 levert weer een deel van alle informatie die je allemaal maar tot je moet zien te nemen en interpreteren. Een dashboard in een auto levert je als het goed is alleen maar de informatie die op dat moment essentieel is. Tesla begrijpt dat heel goed. Hun interface verandert ook met elke ‘Over the Air’ update. Soms is het een ander lettertype dat prettiger leest. Soms is het een nieuwe functie die de eerste keer bizar klinkt, maar uiteindelijk heel handig lijkt. Zoals ‘Joe-mode’, waarbij meldingen en geluiden van de auto alleen uit de speaker linksvoor (dus bij de bestuurder) komen en niet over alle speakers. Zodat de kleintjes achterin lekker kunnen doorslapen. Te simpel voor woorden, maar zo’n ontzettend goed idee.
Van idee naar daadwerkelijk inbouwen
Zo willen we ook graag denken bij Guardian360: het brainstormen over ideeën is vaak leuker dan het idee zelf. En vaak doen we ook helemaal niks met die ideeën. Want in de meeste gevallen introduceert nieuwe functionaliteit helemaal geen toegevoegde waarde voor de gebruikers van ons Lighthouse platform. Soms blijft een idee echter wel hangen. Het begint wel altijd met ‘Weet je wat een goed idee zou zijn?’. Dat maakt het ontwikkelen van software ook zo leuk, je kunt elke dag weer spelen met goede ideeën en die ook daadwerkelijk inbouwen – zodat klanten er blij van worden en prettiger met het product of de dienst kunnen werken.
PHP eruit, versimpel en versnel implementatie van nieuwe functionaliteit
Tot op heden bestaat Guardian360 uit meerdere platforms. Een front-end, een back-end, een API die alles aan elkaar knoopt en het scanner orchestration gedeelte. De front-end is met name opgebouwd met PHP en Javascript (en nog wat andere trukendozen). In het nieuwe platform willen we heel PHP eruit halen. Dat maakt het leven namelijk veel eenvoudiger, want als we nu een simpele checkbox willen toevoegen, dan betekent dat Javascript aanpassen, PHP aanpassen, in de backend dingen aanpassen, in de API, database voorbereiden, testen of het overal werkt – dat duurt nu echt heel lang. Als we de PHP eruit zouden kunnen halen dan heb je alleen nog maar Javascript op de front-end servers nodig die direct met de APIs communiceren en hoeven we bij een nieuw idee of een nieuwe feature alleen de back-end nog maar aan te passen. Doel is uiteindelijk om te versimpelen en te versnellen. Maar goed, simpel is moeilijk en tijdens de verbouwing is onze winkel open – dus het kost nog wat zweet en denkwerk.
We moeten dus het onderhoud simpeler maken en nieuwe features sneller kunnen toevoegen. Alleen Javascript en HTML/CSS op de front-end, that’s it. Dit levert ook wat ‘technische snelheid’ op, er gaan lagen tussenuit. Pagina’s die iets sneller laden is altijd fijn en mooi meegenomen, maar het gaat feitelijk om grotere dingen die moeten gebeuren.
Nieuwe functionaliteit voor snelle informatie
Het plan met het nieuwe dashboard was eerst om het huidige Lighthouse ‘na te bouwen’, maar uiteindelijk zijn we tot de conclusie gekomen dat we gelijk de klant blij moeten maken met nieuwe handige functionaliteit. Dingen als ‘company filtering’: één keer instellen en dan werkt het voor alle andere pagina’s ook. Klinkt als iets kleins, maar het kan een groot praktisch verschil maken in het dagelijks gebruik. Ook ogenschijnlijk simpele dingen als ‘date filtering’. Het zat er wel in, maar werkte niet altijd mee om praktisch informatie te vergaren en snel af te beelden. Dat pakken we nu ook aan.
Verbeterde inzichten voor auditing
Ook nieuw is ‘issue trends’: hoeveel issues van een bepaald risiconiveau waren er over een bepaalde periode. Handig als je auditor op bezoek komt. Dan kan je veel beter je afname van risico’s over de tijd laten zien. Je wilt immers dat het aantal issues over een niet al te lange periode afneemt en dus dat het risico verminderd wordt. Iets wat een auditor probeert vast te stellen: ben je over een bepaalde periode ‘in control’?
Een issue is echter wel dat de data op dit moment niet altijd handig of efficiënt opslagen wordt. Bijvoorbeeld een gevonden issue wordt elke dag ‘opnieuw’ geregistreerd. Wanneer een gebruiker vervolgens een gevonden issue accepteert, dan moet er iets verzonnen worden wat er gebeurt aan het einde van de acceptatieperiode. Dat de keuze ‘datum geaccepteerd’ ook na een bepaalde periode weer opnieuw zichtbaar wordt dus. Als je veel issues accepteert, dan zie je opeens na afloop van die periode een enorme ‘spike’ van het aantal open issues. Je kan echter als gebruiker nooit allemaal onthouden dat dit issues waren die zijn teruggekomen na een periode van acceptatie. Daar moeten dus notificaties van komen om uitleg te verschaffen: ‘dit issue was tijdelijk op stil gezet, er zijn wat geaccepteerde issues losgekomen’.
En zo zie je dat een ogenschijnlijk eenvoudige functie als ‘risico accepteren’ leidt tot een boel keuzes in het systeem. Doordenken dus!
Zo bedenken de SRE’s (bijna) iedere dag weer een nieuw idee waar klanten blij van worden. Dat is ook het leuke van softwareontwikkeling. Geen enkel idee moet op neergekeken worden, alles is bespreekbaar, maar niet alles hoeven we (nu) te doen. Creativiteit in wat cool gaat zijn is echt heel belangrijk en geeft ons energie!
Visualiseren helpt met snel inzicht krijgen
Wat gaat er dan cool zijn? Bijvoorbeeld visualisatie is echt een ding. Dit gaat op zich niet veel toevoegen aan technische functionaliteit, maar wel het leven wat makkelijker maken. Een manier van inzicht krijgen door overzicht te hebben.
Eén van die ideeën is om te zien hoe je het ten opzichte van ‘de ernst van de bedreiging in de wereld’ doet. En hoe gaan we dat visualiseren? Is een critical wel echt een reële bedreiging? Kan het wachten? Het zou leuk zijn als de klant dit ook zelf kan classificeren. Misschien zelfs per asset, om zo beter je eigen view te kunnen maken. Veel meer het gevoel krijgen dat je in control bent, en dat is toch het doel met informatiebeveiliging?