Appt Evaluatiemethode (Appt-EM)
Huidige versie: 1.1.0, laatst aangepast op 4 juli 2023.
Stichting Appt heeft de Appt Evaluatiemethode (Appt-EM) ontwikkeld om de toegankelijkheid van apps op een uniforme en reproduceerbare manier vast te stellen.
Vanuit Europese norm EN 301 549 V3.2.1 (2021-03) zijn apps verplicht om te voldoen aan een deel van de Web Content Accessibility Guidelines 2.1 (WCAG 2.1). De bijpassende evaluatiemethode is de Website Accessibility Conformance Evaluation Methodology (WCAG-EM).
Zowel de WCAG, als WCAG-EM, zijn echter geschreven voor websites en daardoor niet zomaar toepasbaar op apps. Appt-EM is specifiek geschreven voor apps en is gebaseerd op WCAG-EM.
Basisvoorwaarden
Om Appt-EM succesvol te gebruiken wordt aangenomen dat er een goed begrip is van WCAG en toegankelijkheidsfuncties van Android en iOS.
Evaluatieprocedure
Dit hoofdstuk beschrijft de stappen en activiteiten van de evaluatieprocedure. Bij elke stap voer je een aantal activiteiten uit. Het kan zijn dat je één of meerdere stappen terug moet doen wanneer je nieuwe inzichten opgedaan hebt.
De stappen van Appt-EM zijn vergelijkbaar met die van WCAG-EM:
Stap 1 – Bepaal scope
Stap 2 – Onderzoek app
Stap 3 – Selecteer schermen
Stap 4 – Voer audit uit
Stap 5 – Rapporteer resultaten
Stap 1 – Bepaal scope
In deze stap wordt de scope van de evaluatie bepaald. Om de scope te bepalen moet duidelijk worden wat binnen en buiten de scope van het onderzoek valt.
Stap 1a – Bepaal scope app
Het bepalen van de scope start met het vaststellen van het besturingssysteem, de installatiemethode en het versienummer. Bepaal vervolgens de schermen die onderdeel uitmaken van het onderzoek.
Bepaal besturingssysteem
Apps zijn vaak beschikbaar voor Android en iOS. Leg vast op welk besturingssysteem je het onderzoek uitvoert. Per besturingssysteem moet er een los onderzoek gedaan worden. We raden aan om per besturingssysteem een los rapport op te leveren.
Bepaal installatiemethode
Een app is vaak via een app store te downloaden en heeft dan een unieke downloadlink. Het is belangrijk om de volledige downloadlink over te nemen, inclusief alle URL parameters. Per land kunnen er namelijk verschillende versies van een app beschikbaar zijn. Daarnaast kunnen er ook verschillende varianten beschikbaar zijn, zoals een ‘lite’ versie.
Indien een app (nog) niet gepubliceerd is, dan kan deze ook beschikbaar worden gemaakt via een installatiebestand. Het installatiebestand heet op Android een Android Application Package (.apk) en op iOS een iOS App Store Package (.ipa). Neem in dit geval de downloadlink en/of de volledige naam van het installatiebestand op.
Bepaal versienummer
Het versienummer kun je vinden in de app store. Na installatie kun je het versienummer ook vinden bij de instellingen van je toestel. Het versienummer staat vaak ook ergens in de app vermeld.
Bepaal schermen
Bij apps is meestal geen sitemap beschikbaar met een overzicht van alle schermen. Daarnaast hebben schermen meestal geen unieke URL. Leg daarom het pad vast dat je bent doorlopen om op het scherm te komen. Gebruik hiervoor de namen van de schermen, bijvoorbeeld: Home → Profiel → Wijzigen. Indien een scherm geen naam heeft, dan zul je zelf een beschrijvende naam moeten bedenken.
De beschikbare schermen binnen een app kun je op verschillende manieren bepalen. Meestal komt het erop neer dat je door alle schermen van de app zal moeten navigeren.
Stap 1.b – Bepaal het conformiteitsniveau
Bepaal het conformiteitsniveau dat getoetst wordt: niveau A, AA of AAA. Het conformiteitsniveau AA wordt veel gebruikt. Vanuit de Nederlandse wetgeving wordt ook naar dit niveau verwezen voor overheidsorganisaties.
Let op: vanuit de EN 301 549 zijn 6 succescriteria uitgezonderd voor apps, zie Bijlage I.
Stap 1.c – Bepaal scope hardware/software
Bepaal scope hardware
Afhankelijk van de hardware is het mogelijk dat een app anders reageert.
Bepaal de toestellen
Bepaal de schermafmetingen
Bepaal scope software
Afhankelijk van de software is het mogelijk dat een app anders reageert. Het is belangrijk om het versienummer van het besturingssysteem te noteren.
Bij apps zijn de toegankelijkheidsfuncties ingebouwd in het besturingssysteem. De toegankelijkheidsfuncties verschillen per fabrikant. Ondersteunende hulpmiddelen zoals de schermlezer, stembediening, schakelbediening en toetsenbordbediening hebben vaak een eigen versienummer, noteer deze.
Noteer tot slot relevante systeeminstellingen die invloed hebben op het gedrag van de app, zoals taal en locatie.
We raden aan om tenminste te testen met tekstvergroting en de schermlezer. Aanvullend kun je testen met toetsenbordbediening, stembediening, schakelbediening en andere beschikbare toegankelijkheidsfuncties.
Bepaal versienummer van besturingssysteem
Bepaal toegankelijkheidsfuncties en hun versienummers
Bepaal relevante systeeminstellingen
Bepaal met welke hulpmiddelen en toegankelijkheidsfuncties er getest moet worden
Stap 2 – Onderzoek app
In deze stap wordt het gebruik, doel en functionaliteit van de app vastgesteld. Hiervoor moeten de schermen nader onderzocht worden.
Stap 2.a – Bepaal belangrijkste schermen
Bepaal of er schermen zijn die gebruikers meerdere keren tegenkomen bij het gebruik van de app. En bepaal op welke schermen gebruikers de meeste tijd doorbrengen.
Kies in ieder geval schermen die functionaliteit bevatten die essentieel zijn om de app te kunnen gebruiken, zoals registreren, inloggen, wachtwoord resetten, etc. Schermen die direct benaderbaar zijn vanuit het hoofdscherm van de app zijn vaak ook belangrijk om te onderzoeken.
Stap 2.b – Bepaal essentiële functionaliteit
Bepaal welke flows essentieel zijn in de app. Een flow bestaat uit meerdere stappen of schermen die je moet doorlopen om een taak uit te voeren. Door de belangrijke flows van de app te omschrijven kun je vervolgens alle schermen van deze flows testen.
Stap 2.c – Bepaal veelvoorkomende elementen
Bepaal welke soort elementen gebruikt worden in de app. In de onderstaande tabel staat een overzicht van veelvoorkomende Android, iOS, Flutter en React Native elementen.
Element | Android | iOS | Flutter | React Native |
---|---|---|---|---|
Afbeelding | ImageView | UIImageView | Image | Image |
Video | MediaPlayer | AVPlayer | VideoPlayer | Video |
Audio | MediaPlayer | AVPlayer | AudioPlayer | Audio |
Tekst | TextView | UILabel | Text | Text |
Knop | Button | UIButton | TextButton | Button |
Link | URLSpan | NSAttributedString | TextSpan | Text |
Invoerveld | EditText | UITextField | TextField | TextInput |
Selectievakje | CheckBox | UISwitch | Checkbox | Switch |
Navigatiebalk | Toolbar | UINavigationBar | AppBar | NavigationBar |
Tabbladbalk | TabLayout | UITabBar | AppBar | BottomTabs |
Stap 2.d – Gebruikte technieken
Bepaal welke technieken er gebruikt zijn om de app te ontwikkelen.
Programmeertalen, bijvoorbeeld Swift of Kotlin
Frameworks, bijvoorbeeld SwiftUI of React Native
Libraries, bijvoorbeeld Alamofire of Expo
Stap 2.e – Overige relevante schermen
Bepaal of er specifieke functionaliteiten of schermen aanwezig zijn voor gebruikers met een beperking. Voeg schermen met uitleg over de app of met contactinformatie ook toe aan het onderzoek.
Stap 3 – Selecteer schermen
Selecteer de schermen die deel uitmaken van het onderzoek. Je kan kiezen om alle schermen van de app te onderzoeken. Of je kan een representatieve steekproef nemen bestaande uit een gestructureerde steekproef en willekeurig gekozen schermen.
Stap 3.a – Gestructureerde steekproef
Bij een gestructureerde steekproef selecteer je schermen die een goede weerspiegeling zijn van alle schermen van de app.
Selecteer de schermen als volgt:
De belangrijkste schermen zoals bepaald in stap 2.a
De overige relevante schermen zoals bepaald in stap 2.e
Als de schermen van stap 2.a en 2.e niet voldoende zijn voor een representatieve gestructureerde steekproef, voeg dan deze schermen toe:
Schermen met essentiële functionaliteit uit stap 2.b
Schermen met veelvoorkomende elementen uit stap 2.c
Schermen die gebruik maken van de technieken uit stap 2.d
Stap 3.b – Voeg willekeurige schermen toe
Kies willekeurig één of meerdere schermen om te controleren of de gestructureerde steekproef een goede afspiegeling is van de app. Het aantal willekeurige schermen moet minimaal 10% van het aantal schermen in de steekproef zijn.
Bijvoorbeeld: bij 20 schermen in de steekproef moet je minimaal 2 willekeurig gekozen schermen toevoegen ter controle.
Stap 3.c – Voeg flows toe
Bekijk of er schermen uit stap 3.a en 3.b zijn die deel uitmaken van een flow. Voeg de schermen van de gevonden flows toe aan de selectie.
Apps bestaan voornamelijk uit flows van meerdere schermen. Het kan dus zijn dat je uiteindelijk (bijna) alle schermen moet testen.
Stap 4 – Voer audit uit
Beoordeel de schermen volgens het gekozen conformiteitsniveau uit stap 1.b.
Voer de volgende stappen uit:
Stap 4.a Beoordeel alle schermen
Stap 4.b Beoordeel alle flows volledig
Stap 4.c Vergelijk structurele steekproef met willekeurig gekozen schermen
Let op: Anders dan bij websites is het bij apps belangrijk om de schermafbeelding mee te sturen. Als je een scherm herlaadt dan zal de content wellicht de volgende keer anders zijn waardoor het niet reproduceerbaar is zonder schermafbeelding.
Stap 5 – Rapporteer resultaten
Een auditrapport moet aan bepaalde vormvereisten voldoen. Zie hoofdstuk 5 van WCAG-EM voor verdere toelichting.
Voor apps zijn er afwijkingen en aanbevelingen die hieronder worden toegelicht. Hierdoor voldoen de rapporten aan de minimale kenmerken die nodig zijn om de bevindingen te reproduceren.
Afwijkingen
Benamingen en definities
Een app heeft specifieke benamingen en definities. Er is bijvoorbeeld geen sprake van een webpagina, maar van een scherm. Gebruik de juiste benamingen en definities voor apps.
Rapporteer pad
Bij apps worden meestal geen URL’s gebruikt om schermen te identificeren. Rapporteer in plaats van de URL het pad dat je hebt afgelegd om op het scherm te komen.
Aanbevelingen
Voeg oplossingen en codevoorbeelden toe
Bij de definities van de WCAG succescriteria staan alleen oplossingen en codevoorbeelden voor websites. Rapporteer oplossingen en codevoorbeelden voor apps, bijvoorbeeld door naar relevante pagina’s uit de Appt kennisbank te verwijzen. Je kunt gebruik maken van onze WCAG shortlinks, appt.nl/1.1.1 verwijst bijvoorbeeld naar onze uitleg over succescriterium 1.1.1.
Voeg schermafbeeldingen toe
Bij apps is het belangrijk om schermafbeeldingen toe te voegen aan het rapport. Apps zijn veel dynamischer dan websites waardoor het moeilijk is om de fout te reproduceren. Een schermafbeelding toont precies hoe de app er uit zag op het moment van rapporteren.
Bijlage I: Toegankelijkheidseisen uit de EN 301 549 v3.2.1
De Europese norm EN 301 549 V3.2.1 (2021-03) bevat toegankelijkheidseisen voor software, waaronder mobiele applicaties (apps). Apps vallen onder de categorie ‘Open functionality’. In hoofdstuk 11 zijn 44 succescriteria uit de Web Content Accessibility Guidelines 2.1 (WCAG 2.1) opgenomen. Dit zijn er 6 minder dan voor websites.
Closed en open functionality
In de norm worden de termen “Open functionality” en “Closed functionality” gebruikt. De gegeven definitie voor “Closed functionality” is: “Computers that do not allow end-users to adjust settings or install software are functionally closed”. Bij mobiele telefoons is het mogelijk om (systeem)instellingen aan te passen en om apps te installeren. Mobiele telefoons en apps zien wij daarom als “Open functionality”.
Verplichte succescriteria uit WCAG 2.1
In hoofdstuk 11 zijn alle succescriteria met niveau A en AA uit de WCAG 2.1 opgenomen. In totaal zijn er 6 succescriteria niet van toepassing. Bij 13 succescriteria is er een kleine aanpassing in de notities of definities. De gedachte en het doel achter deze succescriteria is hetzelfde, alleen is de term “webpage” vervangen door “software”.
Let op: Apps hoeven dus maar aan 44 succescriteria te voldoen in plaats van 50.
Een overzicht van de afwijkingen:
6 succescriteria zijn niet van toepassing.
13 succescriteria hebben kleine aanpassingen in de notities of definities. De context is grotendeels hetzelfde.
31 succescriteria zijn direct toepasbaar zonder aanpassingen.
In onderstaande tabel staat een volledig overzicht met de opmerkingen per succescriterium.
Voor de volledige toelichting zie hoofdstuk 11 van de Europese norm EN 301 549 V3.2.1 (2021-03).