Het testen van apps brengt vele technische uitdagingen met zich mee. Los van de functionaliteit hebben we rekening te houden met de specifieke kenmerken van mobiele apparaten, zoals sensoren, schaarse resources en allerlei privacyaspecten. Bovendien kunnen inkomende gesprekken, notificaties en een uitvallende netwerkverbinding de transacties van de gebruiker onderbreken. Geautomatiseerd testen op verschillende fysieke devices of in geëmuleerde omgevingen voegt een extra technische dimensie toe. Maar dit is niet het hele verhaal.
Apps rukken op. Uit marktonderzoek blijkt dat 84 procent van de organisaties die nog er geen hebben ontwikkeld, overweegt dit op korte termijn te doen. Steeds meer bedrijven denken na over hun mobiele strategie. Dienstverleners proberen klanten aan zich te binden met eigen domeinen en verleiden hen om regelmatig hun persoonlijke site te bezoeken. Apps vormen hierbij een laagdrempelige portal. Als je in de broekzak van je klant zit, zit het wel goed met de customer intimicy.
Hoe geven IT-afdelingen invulling aan de mobiele strategie van hun organisatie? Frappant genoeg ontstaan veel apps helemaal niet in opdracht van de business maar juist lokaal. Op zich niet verwonderlijk want ze zijn relatief goedkoop (dus je hoeft niet hoog de boom in om het budget goedgekeurd te krijgen) en een ontwikkelclubje heb je zo ingehuurd. Dat lokale heeft ook een keerzijde: ik sprak de productmanager mobile van een grote organisatie, die aangaf het moeilijk te vinden om de huisstijl te handhaven. ‘Veel apps ontstaan buiten mijn medeweten om’, klaagde hij, ‘en het is moeilijk reeds opgedane kennis te hergebruiken.’
Daar ligt een groot terrein braak. Naast de technische aspecten en de huisstijl is er een lange lijst aandachtspunten die het succes van de mobiele strategie bepalen. Bovenaan staat de businessaanleiding: waarom een app ontwikkelen? In tegenstelling tot bij legacy applicaties zijn de beweegredenen vaak nog te achterhalen. Dit stelt ons in staat om ons gedurende design, bouw en test te richten op het werkelijke businessdoel.
De businessdrivers bepalen niet alleen de acceptatiecriteria, ze zijn ook leidend voor de ontwerpkeuzes. Mobiele devices hebben nu eenmaal technische beperkingen; ontwikkelaars dienen bijvoorbeeld na te denken over batterijgebruik en beveiliging. Als we speciale caching toepassen om de performance te verbeteren en het netwerkverkeer te beperken, moeten we dit ook testen. Als we speciale mechanismen inbouwen om campagnes te voeren en pushberichten te sturen, moeten we deze meenemen in zowel de technische als de acceptatietests.
En laten we de achterkant niet vergeten. Klassiek is de mislukte marktintroductie waarbij de app wel klaar was maar de benodigde aanpassingen in de backoffice pas drie maanden later. Enige regie in de keten(test) had hier wonderen kunnen doen.
Ik geloof daarom dat er een vraag is naar testers die niet alleen de techniek snappen maar ook het ontwikkelproces van apps. Zij kunnen vraagtekens zetten bij bedrijfsdoelstellingen en organisaties bewust maken van de bijbehorende ontwerpkeuzes. Omdat de ontwikkeling gebeurt in korte, agile projecten, zijn rollen niet strikt gescheiden en kunnen testers over de hele linie een bijdrage leveren. Ze hebben overzicht en inzicht in het waarom van tests. Ze kunnen aangeven wat de betekenis van technische tests is voor de mobiele strategie. Het testen van apps is dus een mix van technische en businessuitdagingen, en daarmee een uitstekende kans om het gat tussen de verschillende disciplines te dichten.