Deze blog is een vierde vervolg op de blog Zorgplicht van IT-leveranciers ingevuld door IT-branchenormen. Deze blog geeft een overzicht van de leidende principes afkomstig van ISO-norm 25010: de internationale standaard voor softwarekwaliteit. Deze leidende principes kunnen onder omstandigheden een rol spelen bij een conflict tussen een IT-leverancier en zijn klant. Het gaat hierbij vooral over wat de klant van de IT-leverancier verwacht mocht worden in de uitvoering van zijn opdracht, gelet op de zorgplicht die op een IT-leverancier rust. Wil je erachter komen hoe dit precies in elkaar steekt en welke andere standaarden mogelijkerwijs een rol spelen bij geschillen omtrent IT-contracten? Lees het in deze blog. 

ICT-conflict

ISO 25010: Norm voor softwarekwaliteit

ISO 25010 beschrijft de kwaliteitskenmerken van software en systemen. Hierbij valt softwarekwaliteit uiteen in 2 brede categorieën: 

  • Quality in use: Deze categorie houdt verband met hoe de menselijke interactie met het product wordt ervaren.
  • Product quality: Deze categorie houdt verband met de statische en dynamische onderdelen van de software.

 

Ten aanzien van de Quality in use zijn er 5 principes van belang: 

  • Effectiveness 

Het gaat hierbij over de nauwkeurigheid en volledigheid waarmee gebruikers gespecificeerde doelen behalen. 

 

  • Efficiency 

Het gaat hierbij over de benodigde hulpbronnen die gebruikt zijn in verhouding tot in hoeverre de gebruikers in staat zijn hun specifieke doelen te behalen. 

 

  • Satisfaction

Het gaat hierbij over de vraag of behoeftes van de gebruiker vervuld worden als het product door hen gebruikt wordt. Om satisfaction te bereiken zijn 4 elementen van belang: 

  1. Usefulness: Gaat over de vraag of de gebruiker tevreden is met de behaalde doelen, inclusief de resultaten van het gebruik van het systeem en de consequenties van het gebruik van het systeem.
  2. Trust: Gaat over de vraag of een gebruiker of andere betrokkenen vertrouwen heeft dat het product of systeem zich zal gedragen zoals bedoeld.
  3. Pleasure: Gaat over de vraag of de gebruiker plezier haalt uit het verwezenlijken van zijn persoonlijke behoeften.
  4. Comfort: Gaat over de vraag of een gebruiker tevreden is over zijn fysieke welzijn.

 

  • Freedom from risk

Het gaat hierbij over de vraag of een product het potentiële risico beperkt met betrekking tot economische status mensenlevens, gezondheid of de omgeving. Om freedom from risk te bereiken zijn dan ook 3 elementen van belang: 

  1. Economic risk mitigation: Gaat over de vraag of een product de potentiële risico’s beperkt m.b.t. financiële status, efficiënte werking, commerciële eigendommen, reputatie of andere middelen in de beoogde gebruikscontexten.
  2. Health and safety risk mitigation: Gaat over de vraag of een product de potentiële risico’s met betrekking tot personen beperkt in de beoogde gebruikscontexten.
  3. Environmental risk mitigation: Gaat over de vraag of een product de potentiële risico’s met betrekking tot eigendommen of de omgeving beperkt in de beoogde gebruikscontexten.

 

  • Context coverage

Het hierbij om de mate waarin een product gebruikt kan worden met effectiviteit, efficiëntie, vrijheid van risico en voldoening in verschillende gebruikscontexten. Om context coverage te bereiken zijn de 2 elementen van belang: 

  1. Context completeness: Gaat over de vraag of een product gebruikt kan worden met effectiviteit, efficiëntie, vrijheid van risico en voldoening in alle gespecificeerde gebruikscontexten. 
  2. Flexibility: Gaat over de vraag of een product gebruikt kan worden met effectiviteit, efficiëntie, vrijheid van risico en voldoening in anders dan gespecificeerde gebruikscontexten.  

 

Ten aanzien van de Product quality zijn er 8 principes van belang: 

  • Functional Suitability 

Het gaat hierbij om de mate waarin een softwareproduct functies levert die voldoen aan de verlangde behoeftes. Om functional suitability te bereiken zijn  3 elementen van belang: 

  1. Functional completeness: Gaat over de vraag in hoeverre de functionaliteiten alle gespecificeerde taken en gebruiksdoelen ondersteunen. 
  2. Functional correctness: Gaat over de vraag of een softwareproduct de juiste resultaten met de benodigde nauwkeurigheid beschikbaar stelt. 
  3. Functional appropriateness: Gaat over de vraag of de functie bijdragen aan het behalen van specifieke doelen en taken. 

 

  • Maintainability 

Het gaat hierbij om de mate waarin een systeem of product gemakkelijk gewijzigd kan worden door de beheerders. Om maintainability te bereiken zijn 5 elementen van belang: 

  1. Modularity: Gaat over de vraag of het product is opgebouwd in losstaande elementen zodat wijziging in 1 component niet per definitie invloed heeft op andere componenten. 
  2. Reusability: Gaat over de vraag of een bestaand onderdeel gebruikt kan worden in meer dan één systeem of bij het bouwen van een nieuw onderdeel. 
  3. Analysability: Gaat over de vraag of het mogelijk is om effectief en efficiënt de impact, van een geplande verandering van één of meer onderdelen, op een product of systeem te beoordelen, om afwijkingen en/of foutoorzaken van een product vast te stellen of om onderdelen te identificeren die gewijzigd moeten worden.
  4. Modifiability: Gaat over de vraag of een product of systeem effectief en efficiënt gewijzigd kan worden zonder dat sprake is van fouten of kwaliteitsvermindering. 
  5. Testability: Gaat over de vraag of effectief en efficiënt testcriteria vastgesteld kunnen worden voor een (component van een) product en waarin tests uitgevoerd kunnen worden om vast te stellen of aan die criteria is voldaan.

 

  • Useability 

Het gaat hierbij om de mate waarin een product gebruikt kan worden door gespecificeerde gebruikers om efficiënt en naar tevredenheid gespecificeerde doelen te bereiken in een gespecificeerde gebruikscontext. Om useability te bereiken zijn 6 elementen van belang: 

  1. Appropriateness recognisability: Gaat over de vraag of gebruikers kunnen bepalen of een product geschikt is voor hun behoeften. 
  2. Learnability: Gaat over de vraag of een product gebruikt kan worden door gebruikers om gespecificeerde leerdoelen te bereiken met betrekking tot het gebruik van het product of systeem met effectiviteit, efficiëntie, vrijheid van risico en voldoening. 
  3. Operability: Gaat over de vraag of een product attributen heeft die de bedienen en beheersing daarvan makkelijk maken. 
  4. User error protection: Gaat over de vraag of het systeem gebruikers beschermt tegen het maken van fouten.  
  5. User interface aesthetics: Gaat over de vraag of een gebruikersinterface het de gebruiker mogelijk maakt om een prettige interactie te hebben. 
  6. Accessibility: Gaat over de vraag of een product gebruikt kan worden door een diverse groep mensen om een gespecificeerd doel te bereiken in een gespecificeerde gebruikscontext.

 

  • Performance Efficiency 

Het gaat hierbij om de prestaties in verhouding tot de hoeveelheid middelen gebruikt.  Voor de performance efficiency zijn 3 elementen van belang: 

  1. Time-behaviour: Gaat over de vraag of antwoord- en verwerkingstijden en doorvoersnelheid van een product voldoet aan de wensen.
  2. Resource utilization: Gaat over de vraag of de hoeveelheid en type middelen die gebruikt worden door een product of systeem, tijdens de uitvoer van zijn functies, voldoet aan de wensen.
  3. Capacity: Gaat over de vraag of de maximale limieten van een product parameter voldoet aan de wensen. 

 

  • Security 

Het gaat hierbij om de mate waarin een product informatie en gegevens beschermt. Voor de security zijn 5 elementen van belang: 

  1. Confidentiality: Gaat over de vraag of een product ervoor zorgt dat gegevens alleen toegankelijk zijn voor diegenen die daarvoor autorisatie hebben. 
  2. Integrity: Gaat over de vraag of een product of component ongeautoriseerde toegang tot of aanpassing van computerprogramma’s/gegevens verhindert. 
  3. Non-repudiation: Gaat over de vraag of het voorvallen van bepaalde acties of gebeurtenissen bewezen kan worden, zodat deze niet ontkend kunnen worden. 
  4. Accountability: Gaat over de vraag of acties van een entiteit herleid kunnen worden naar die specifieke entiteit. 
  5. Authenticity: Gaat over de vraag of een bewering over de oorsprong/auteur van informatie verifieerbaar is. 

 

  • Reliability 

Het gaat hierbij om de mate waarin een product gespecificeerde functies uitvoert onder gespecificeerde condities in een bepaalde tijdspanne. Voor de reliability zijn 4 elementen van belang: 

  1. Maturity: Gaat over de vraag of een product of component daar aan betrouwbaarheidsstandaarden voldoet onder normale werkomstandigheden. 
  2. Availability: Gaat over de vraag of een product of een component daarvan operationeel en toegankelijk is als men het wil gebruiken. 
  3. Fault tolerance: Gaat over de vraag of een product of een component daarvan werk zoals bedoeld, zelfs bij de aanwezigheid van hardware of softwarefouten. 
  4. Recoverability: Gaat over de vraag of een product, bij een onderbreking of fout, de direct betrokken gegeven kan herstellen en het weer teruggebracht kan worden in de gewenste staat. 

 

  • Compatibility 

Het gaat hierbij om de mate waarin een product of een component daarvan informatie kan uitwisselen met andere producten, en/of het de gewenste functies kan uitvoeren terwijl het dezelfde hardware of software-omgeving deelt. Voor compatibility zijn 2 elementen van belang 

  1. Co-existence: Gaat over de vraag of 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.
  2. Interoperability: Gaat over de vraag of twee of meer producten informatie kunnen uitwisselen en de uitgewisselde info kunnen gebruiken. 

 

  • Portability 

Het gaat hierbij om de mate waarin een product effectief en efficiënt overgezet kan worden van één hardware, software of andere operationele of gebruiksomgevingen naar een andere. Voor portability zijn 3 elementen van belang: 

  1. Adaptability: Gaat over de vraag of een product effectief en efficiënt aangepast kan worden voor andere (of in ontwikkeling zijnde) hardware, software of andere operationele of gebruiksomgevingen.
  2. Installability: Gaat over de vraag of een product effectief en efficiënt geïnstalleerd of verwijderd kan worden in een gespecificeerde omgeving. 
  3. Replaceability: Gaat over de vragen of een product een ander specifiek software product, met eenzelfde doel in eenzelfde omgeving kan vervangen.

Conclusie

Als een klant tegen problemen aanloopt met zijn IT-leverancier, is het van belang dat vast komt te staan welke verwachting de klant mocht hebben van de IT-leverancier in de uitvoering van zijn werkzaamheden. Het is daarbij raadzaam dat op voorhand de wensen en verwachtingen van de klant in kaart worden gebracht, zodat de IT-leverancier een inschatting kan maken of hij aan die wensen kan voldoen. Vervolgens is het van belang dat een deugdelijk IT-contract wordt opgesteld, waarin niet uitsluitend een inspanningsverplichting wordt opgenomen. Echter, een klant staat niet zomaar met lege handen als een contract op dat punt geen duidelijkheid verschaft. In die situatie kan namelijk bekeken worden of de IT-leverancier aan zijn zorgplicht voldaan, door te handelen volgens de professionele standaard. Gaat het daarbij om softwarekwaliteit? Dan kan ISO 25010 een grote rol spelen.

IT-advocaat?

Heeft u hulp nodig bij het opstellen van een IT-contract? Of bent u benieuwd hoe deze normen wellicht voor u behulpzaam kunnen zijn? Bel of mail vrijblijvend met Lawfox: info@lawfox.nl; 013 207 7 107. 

Naar blog overzicht

tip

Mannelijke advocaat met bril, donkere kleding, oranje achtergrond. LAWFOX

Wouter Dammers / Over de auteur

Als oprichter van LAWFOX combineert Wouter Dammers cum laude juridische expertise met een diepe technische achtergrond. Hij is de advocaat voor ondernemers die de ‘uitleg-fase’ willen overslaan. Wouter snapt direct wat uw API, blockchain-protocol of IT-stack doet. Hij staat bekend als de juridische rebel die strijdt tegen technologisch machtsmisbruik en ‘vendor lock-in’. Met baanbrekende successen, zoals het eerste NFT-beslag in Nederland, bewijst hij dat het recht ook in Web3 gehandhaafd kan worden. Wouter biedt “Champions League kwaliteit in spijkerbroek”: topniveau advocatuur, maar dan toegankelijk, direct en zonder poeha.