Categorie: ISO 25010 Categorien

ISO 25010 – Betrouwbaarheid

Betrouwbaarheid – ISO 25010


De mate waarin een systeem, product of component gespecificeerde functies uitvoert onder gespecificeerde condities gedurende een gespecificeerde hoeveelheid tijd.


De derde categorie is Betrouwbaarheid, die bestaat uit Herstelbaarheid, Foutbestendigheid, Beschikbaarheid en Volwassenheid. In de ISO 9126 was Betrouwbaarheid als attribuut opgenomen, die wij in Kwaliteit op Maat als Bedrijfszekerheid hadden benoemd. Ik volg hier de naamgeving zoals in de ISO 25010 wordt gehanteerd, waarbij ik Bedrijfszekerheid eigenlijk beter dan Betrouwbaarheid vind. In de ISO 25010 is Betrouwbaarheid gepromoveerd naar categorie. Op zich terecht, want organisaties worden steeds meer afhankelijk van de ICT.


Bezoekers van een webshop willen niet alleen toegang tijdens kantooruren. Laat staan als het zelfs een mondiale webshop betreft, dan dient deze 24/7 beschikbaar te zijn. Op ieder gewenst moment moet het dan mogelijk zijn om een order te plaatsen om te voorkomen dat klanten afhaken. Hoe dichter een applicatie bij het uiteindelijke klantcontact wordt gebruikt, hoe belangrijker Beschikbaarheid is. Ook als de noodzaak voor snelheid van handelen hoog is, bijvoorbeeld bij een 112-centrale, dan moet een applicatie beschikbaar te zijn.

Naarmate het informatiesysteem een belangrijkere rol speelt in het primaire bedrijfsproces, zullen strengere eisen aan de Betrouwbaarheid worden gesteld. De noodzaak voor het stellen van eisen heeft te maken met de kans op optreden van uitval, maar vooral ook met de mogelijke gevolgen daarvan.
Een voorbeeld is de software in een hart-bewakingssysteem; aangezien hier mensenlevens in het geding zijn, moet een dergelijk systeem extreem Betrouwbaar zijn.


Sommige systemen moeten 24 uur per dag beschikbaar zijn en dat gedurende 7 dagen per week. Dit is bijvoorbeeld het geval met plaatsreserveringssystemen voor vliegtuigen. Voor andere systemen is het voldoende als ergens in de loop van de week een keer een uur van het systeem gebruik gemaakt kan worden. Wel geldt in het algemeen, dat een gebruiker het als zeer vervelend ervaart als een systeem niet beschikbaar is wanneer hij er op rekent.
Beschikbaarheid binnen productkwaliteit heeft een sterke connectie met de kwaliteit tijdens gebruik (Quality in use). Ik kom hier later op terug.


Definities attributen


Volwassenheid (Maturity)

  • De mate waarin een systeem, product of component aan betrouwbaarheidsbehoeften voldoet onder normale werkomstandigheden.

Beschikbaarheid (Availability)

  • De mate waarin een systeem, product of component operationeel en toegankelijk is wanneer men het wil gebruiken.

Foutbestendigheid (Fault tolerance)

  • De mate waarin een systeem, product of component werkt zoals bedoeld ondanks de aanwezigheid van hard- of softwarefouten.

Herstelbaarheid (Recoverability)

  • De mate waarin het product of systeem, in geval van een onderbreking of bij een fout, de direct betrokken gegevens kan herstellen en het systeem in de gewenste staat kan terug brengen.

Informatiesystemen vallen soms uit. Zeker voor systemen, die over grotere afstand moeten communiceren, is dat niet altijd te vermijden: Er kan onverwacht een communicatieprobleem optreden. Wanneer er eisen worden gesteld aan de beheersing van de gevolgen van een dergelijke storing, worden deze in het kader van Herstelbaarheid expliciet gemaakt. Hoe lang mag de uitval maximaal duren ? Is ingrijpen van een operator mogelijk of moet het systeem zichzelf herstellen ? Hoeveel transacties mogen er maximaal verloren gaan ? Er wordt zelfs zelfherstellende software ontwikkeld. In welke mate dit enkel hardware problemen opvangt of zelfs fouten in de software, de tijd zal het ons leren.


ISO 25010 – Overdraagbaarheid

Overdraagbaarheid – ISO 25010


De mate waarin een systeem, product of component effectief en efficiënt overgezet kan worden van één hardware, software of andere operationele of gebruiksomgeving naar een andere.


Met de klok mee is Overdraagbaarheid de tweede categorie, die bestaat uit Aanpasbaarheid, Installeerbaarheid en Vervangbaarheid. Webapplicaties moeten correct functioneren, ongeacht welke browser er wordt gebruikt. Voor bijvoorbeeld een Android App die je kan downloaden is het ook handig dat deze geïnstalleerd kan worden op ieder Android tablet.

Als men eenmaal gewend is aan een webapplicatie, dan is het niet wenselijk om bij het wisselen van een IPad naar een Android tablet afscheid te moeten nemen. Feitelijk moet het niet uitmaken wat voor tablet er wordt gebruikt. In de praktijk zien we hier nog wel veel problemen. Niet alleen over de verschillende besturingssystemen heen, maar ook binnen één besturingssysteem. Als gebruiker heb je geen enkele grip op het aantal releases van je App of besturingssysteem. Maar hopen dat de ontwikkelaar niet alleen tijdig maar ook correct alle aanpassingen heeft gedaan, of eisen stellen aan de aanpasbaarheid van de App zelf.

Zoals in mijn vorige blog aangegeven onderkennen we in de productrisicoanalyse drie doelgroepen, namelijk de business (product owner), beheer(ders) en gebruik(ers). Iedere doelgroep heeft zijn eigen argumenten waarom met Overdraagbaarheid meer of minder risico wordt gelopen. Afhankelijk met welke bril er gekeken wordt naar de drie attributen, bepaalt hoe belangrijk een attribuut. Gelijke belangrijkheid wil nog niet zeggen dezelfde argumentatie waarom een attribuut belangrijk wordt gevonden. Communiceren dus.


Vaststellen of een webapplicatie op alle mogelijke soorten telefoons of tablets werkt met alle gangbare releases en browsers is kostbare en tijdsintensieve aangelegenheid. Er zijn tegenwoordig wel hulpmiddelen die hierbij ondersteunen. Zelf vind ik als Overdraagbaarheid erg belangrijk wordt gevonden een vorm van crowd testing een goed alternatief. Ergens in de testcommunity is er wel iemand die beschikt over een telefoon van type x met besturingssysteem y en versie z en ook nog chinees spreekt.


Definities attributen


Aanpasbaarheid (Adaptability)

  • De mate waarin een product of systeem effectief en efficiënt aangepast kan worden voor andere of zich ontwikkelende hardware, software of andere operationele of gebruiksomgevingen.

Installeerbaarheid (Installability)

  • De mate waarin het product of het systeem effectief en efficiënt geïnstalleerd of verwijderd kan worden in een gespecificeerde omgeving.

Vervangbaarheid (Replaceability)

  • De mate waarin een product een ander specifiek softwareproduct, met hetzelfde doel in de zelfde omgeving, kan vervangen.

Binnen Overdraagbaarheid komen we eisen met betrekking tot Vervangbaarheid minder vaak tegen. Als een applicatie wordt ontwikkeld is het meestal ter vervanging va een (verouderde) applicatie. Het besluit om een nieuwe applicatie te ontwikkelen geeft al aan hoe belangrijk Vervangbaarheid vanuit het perspectief van de te vervangen applicatie wordt gezien. Maar hoe zit het met het op termijn vervangen van de nieuwe applicatie. Moet er niet worden nagedacht of er bij de ontwikkeling van de applicatie afspraken nodig zijn hoe de applicatie ooit vervangen moet kunnen worden. We hebben nog heel veel legacy, nadenken over vervangbaarheid in de toekomst van de applicatie gaat de aanwas van legacy tegen.


Professionele IT-ers stellen niet hoge eisen aan de Installeerbaarheid. Zij weten vaak wel wat ze moeten doen en iedere vorm van hulp vinden ze lastig. Zelf wil ik graag de controle over de installatie hebben en het liefst zoveel mogelijk handmatig doen. Eindgebruikers daarentegen willen het liefst dat het installeren volledig (automatisch) voor hun wordt gedaan.


ISO 25010 – Uitwisselbaarheid

Uitwisselbaarheid – ISO 25010


De mate waarin een product, systeem of component informatie uit kan wisselen met andere producten, systemen of componenten, en/of het de gewenste functies kan uitvoeren terwijl het dezelfde hard- of software-omgeving deelt.


Uitwisselbaarheid is de vierde categorie die ik met je doorneem. Zelf vind ik de naam uitwisselbaarheid wat verwarrend. Het lijkt vanuit de naam veel op het attribuut vervangbaarheid binnen Overdraagbaarheid, maar ook wel op Herbruikbaarheid in Onderhoudbaarheid. Maar het gaat niet over de applicatie zelf die uitwisselbaar (vervangbaar) moet zijn of waarvan delen uitwisselbaar moeten zijn met andere applicaties (herbruikbaarheid), maar het gaat of de applicatie in staat is om naast andere applicaties te bestaan en gegevens uit te wisselen. Als we applicaties gaan rangschikken op Uitwisselbaarheid, scoren de systemen van de belastingdienst ongetwijfeld erg hoog. Veel gegevens worden al verkregen uit andere applicaties, zelfs van andere organisaties. Banken maken het ook steeds makkelijker om de dagafschriften te importeren in de financiële administratie. Het tijdrovende overkloppen van het papieren afschrift is niet meer nodig. Als we echter naar de hardwarecomponenten kijken, komt het geregeld voor dat het verschil uitmaakt welk merk en type gebruik wordt. Het ligt niet altijd zo voor de hand als een applicatie niet met andere applicaties gekoppeld kan worden, dat dit dan aan de hardware ligt. Maar toch komt dit geregeld voor.


Er zijn applicaties die continu informatie met elkaar uitwisselen. Koppelbaarheid is bijvoorbeeld bij een online beursapplicatie, die gebruik maakt van realtime beursinformatie, erg belangrijk. Ook de systemen van de politie dienen bijvoorbeeld te beschikken over de actuele en juiste informatie. Heb je al te snel gereden, wordt je aangehouden en dan krijg je nog een opvoedkundige reprimande om dat de vorige nog openstaat. Die had je nou net gisteren betaald en je partner die naast je zit wist niets van die bekeuring. Hoewel computergeheugen steeds goedkoper en groter wordt, moet een applicatie wel rekening houden met het geheugenbeslag. Het mag niet gebeuren dat als de applicatie live gaat, andere systemen niet meer functioneren. Naast geheugencapaciteit mag natuurlijk ook de netwerkbelasting niet te groot te zijn. Zo zijn er nog wel meer componenten te noemen die het naast elkaar laten bestaan van applicaties moeilijk maken.


Definities attributen


Beïnvloedbaarheid (Co-existence)

  • De mate waarin een product zijn gewenste functies efficiënt kan uitvoeren terwijl het een gemeenschappelijke omgeving en middelen deelt met andere producten, zonder nadelige invloed op enig ander product.

Koppelbaarheid (Interoperability)

  • De mate waarin twee of meer systemen, producten of componenten informatie kunnen uitwisselen en de uitgewisselde informatie kunnen gebruiken.

ISO 25010 – Efficiëntie

Efficiëntie – ISO 25010


De prestaties in verhouding tot de hoeveelheid middelen gebruikt onder genoemde condities


Performancetesten is na het testen van de functionaliteit de meest voorkomende testsoort. We raken steeds meer gewend (verwend) dat een applicatie snel reageert op onze handelingen. Als een webwinkel ons lang in de wachtrij laat staan, zappen we al naar een andere webwinkel. De gewenste functionaliteit van een webwinkel is nu wel bekend, nu gaan klanten verloren door de beperkte snelheid van de applicatie.

Meerdere geautomatiseerde informatiesystemen worden tegelijk gebruikt. Ieder van deze systemen legt beslag op een deel van de beschikbare capaciteit. Hoewel het tegenwoordig steeds ‘goedkoper’ wordt om de capaciteit uit te breiden, zijn er toch vaak bottle-necks die niet opgelost kunnen worden. Het netwerk heeft bijvoorbeeld een maximale bandbreedte en meer kan er echt niet over. In the cloud of juist lokaal, virtuele servers versus fysieke apparaten, Wifi of bedraad, allemaal keuzes die de performance beïnvloeden.

Het oplossen van de ene bottle-neck levert vaak op een andere plek weer een nieuwe bottle-neck op. Een spitsstrook zorgt dan wel voor een betere doorstroming op de snelweg, maar voor meer opstoppingen in de stad. Mocht een spitstrook al een bottle-neck oplossen, deze is vaak na verloop van tijd weer aanwezig. Er worden geen files meer gemeld en iedereen denkt dat dit een optimale route is om op het werk te komen. Het ‘zuigende’ effect van een betere doorstroming zorgt dan voor een groter aanbod en in het slechtste geval weer nieuwe en ditmaal grotere vertragingen. Ergo, het bijplaatsen van een server omdat de schrijfruimtes vol zijn, lost slechts een beperkte tijd het probleem op.


Wie een kaartje koopt voor de bus wordt geacht hooguit één zitplaats te gebruiken. Als een passagier ook plaatsen in beslag neemt voor zijn benen en rugzak, houdt hij zich niet aan deze afspraak en ontstaat er op zijn minst een fikse discussie als de bus vol raakt. Bij informatiesystemen geldt een vergelijkbaar verhaal. Wanneer verwacht mag worden, dat een systeem bovengemiddeld gebruik gaat maken van bijvoorbeeld het lokale netwerk, dan dient dit gebruik vooraf te worden gekwantificeerd.

Wanneer het informatiesysteem na de laatste ‘Enter’ van het invoerscherm de klantgegevens gaat bijwerken, is er even tijd voor een kop koffie. In bepaalde omstandigheden is dat acceptabel, in andere niet. Veel zal afhangen van de soort gebruikers en de aard van het gebruik. Een belangrijk element is ook (daar komt ie weer!) de verwachting van de gebruiker op dat moment.


Definities attributen


Snelheid (Time-behaviour)

  • De mate waarin antwoord- en verwerkingstijden en doorvoersnelheid van een product of systeem, tijdens de uitvoer van zijn functies, voldoet aan de wensen.

Middelenbeslag (Resource utilization)

  • De mate waarin de hoeveelheid en type middelen die gebruikt worden door een product of systeem, tijdens de uitvoer van zijn functies, voldoet aan de wensen.

Capaciteit (Capacity)

  • De mate waarin de maximale limieten van een product- of systeemparameter voldoet aan de wensen.

ISO 25010 – Beveiligbaarheid

Beveiligbaarheid – ISO 25010


De mate waarin een product of systeem informatie en gegevens beschermt zodat personen, andere producten of systemen de juiste mate van gegevenstoegang hebben passend bij hun soort en niveau van autorisatie.


Geregeld zien we nieuwsberichten over hackers die vertrouwelijke informatie hebben buitgemaakt. De toegang tot de data was onvoldoende afgeschermd. Hoe zit het dan met toegang tot de systemen zodat ongemerkt criminele activiteiten kunnen worden uitgevoerd onder valse naam. Ik vergelijk dit altijd maar met het rondrijden met mijn kentekenplaten op een andere auto. Ik heb er zolang er niets gebeurt geen last van, maar ik loop wel ongemerkt een risico.

In de productrisicoanalyse onderkennen we drie doelgroepen, namelijk de business (product owner), beheer(ders) en gebruik(ers). Iedere doelgroep heeft zijn eigen argumenten waarom met Beveiligbaarheid meer of minder risico wordt gelopen. Als we kijken naar de attributen binnen Beveiligbaarheid ligt dit meer genuanceerd. Onweerlegbaarheid is misschien voor de product owner belangrijk, maar voor een beheerder wellicht niet of nauwelijks. Hierover communiceren, zodat men van elkaar weet waarom wat voor de een belangrijk is en voor de ander niet, is dan ook zeer belangrijk.


In mijn komende blogs zal ik geregeld terugkomen op vaststellen de business value, welke prioriteit geven we aan het attribuut en hoeveel inspanning (omvang) denken we nodig hebben om de risico’s te elimineren of te minimaliseren. De business value komt met name van de product owner, risico’s is door alle doelgroepen gezamenlijk te bepalen, de omvang met name door de ontwikkelaars / testers. Als Onweerlegbaarheid belangrijk én risicovol is, dan is het zaak om de criteria met betrekking tot Onweerlegbaarheid te beschrijven, de risico’s die worden gelopen als we niets met Onweerlegbaarheid doen en welke kwaliteitsmaatregelen gaan we inzetten. Niet alles op testen laten aankomen in een van de laatste fasen van het project, dan is het namelijk in veel gevallen te laat.


Definities attributen


Authenticiteit (Authenticity)

  • De mate waarin bewezen kan worden dat de identiteit van een onderwerp of bron is zoals wordt beweerd.
  • De mate waarin een claim over de oorsprong of de auteur van de informatie verifieerbaar is, bijvoorbeeld aan handschrift.

Verantwoording (Accountability)

  • De mate waarin acties van een entiteit getraceerd kunnen worden naar die specifieke entiteit.

Onweerlegbaarheid (Non-repudiation)

  • De mate waarin kan worden bewezen dat acties of gebeurtenissen plaats hebben gevonden, zodat later deze acties of gebeurtenissen niet ontkend kunnen worden.

Integriteit (Integrity)

  • De mate waarin een systeem, product of component ongeautoriseerde toegang tot of aanpassing van computerprogramma’s of gegevens verhindert.

Vertrouwelijkheid (Confidentiality)

  • De mate waarin een product of systeem er voor zorgt dat gegevens alleen toegankelijk zijn voor diegenen die geautoriseerd zijn.

Beveiligbaarheid begint niet pas bij de applicatie of houdt juist op bij de applicatie. Beveiligbaarheid gaat over de gehele keten, van de start van een transactie tot het verwijderen van (verouderde) gegevens. Toegangscontroles door enkel controle op naam en wachtwoord is niet voldoende, dit strekt zich zelfs uit tot het beperken van fysieke toegang. Hoe waardevoller de gegevens zijn voor oneigenlijk gebruik, hoe hoger het risico is dat men loopt op Beveiligbaarheid.


Is Beveiligbaarheid belangrijk, bepaal dan op welke van de onderliggende attributen risico wordt gelopen. Is de kans dat het risico optreedt laag en zijn de faal- en herstelkosten laag, dan lijft Beveiligbaarheid van belang maar kan de inspanning om aan te tonen dat het risico niet aanwezig is, beperkt blijven tot de standaard maatregelen.

 

Contact

  • Telefoon

    0318 - 240 044

  • Email

    info@2b4qa.nl

  • KVK

    601.397.73

  • Postadres

    Cuneraweg 322
    3911 RT Rhenen

  • Bezoekadres

    Kerkewijk 31
    3901 EB  Veenendaal

2B4QA BV  (c) 2018