webservices

Syndicate content

Kenmerken van een succesvolle webservice

Een (web)service is pas een service als deze wordt gebruikt en vooral wordt hergebruikt voor andere doeleinden of toepassingen dan waar de service oorspronkelijke voor in het leven is geroepen. Maar, hoe bevorder je nu (her)gebruik van bedrijfsservices?

Een veel gebruikte methode om het gebruik van services te bevorderen is het instellen van ‘governance’. Een comité stelt beleid op ten aanzien van de benodigde services en het gebruik ervan. En daar waar beleid wordt gecreëerd dient deze ook te worden afgedwongen. Eventueel zelfs met repercussies. Een goed comité zorgt ervoor dat het opgestelde beleid breed gedragen wordt binnen een organisatie. Bijvoorbeeld door belanghebbenden uit de organisatie innig te betrekken bij het opstellen van het beleid.

Desondanks blijkt de praktijk weerbarstig en loop je bij de implementatie van services tegen zaken als de volgende aan:

  • SOA webservices, met name W3C webservices, zijn sterk gestandaardiseerd. De standaarden zijn echter complex en ook de op de standaarden gebaseerde software is technisch complex;
  • Services zijn vaak een compromis qua functionaliteit. Er is altijd iemand die teleurgesteld is in wat een service kan. Dit remt hergebruik;
  • Doorontwikkelingen kosten in de praktijk vaak veel tijd. Vanwege de complexiteit van de software, maar mogelijk ook vanwege de regeldruk van de governance zelf;
  • Financiering kan een rol spelen. Bijvoorbeeld: de eigenaar van een service wil niet dat de ontwikkelkosten van een gewenste functionaliteit van een andere afdeling op zijn/haar budget drukt;
  • Versiebeheer van W3C webservices maakt bijvoorbeeld dat afnemers vaak gedwongen hun software moeten aanpassen zonder dat er voor hen een directe noodzaak is of dat er direct voordeel uit te halen is.

Daar waar webservices binnen bedrijven vaak maar moeizaam worden (her)gebruikt zijn services die gekoppeld zijn aan applicaties en diensten op het internet vaak enorm populair. Sterker nog, de webservice vormt soms zelfs de basis van het succes van een internet applicatie. Wat maakt deze webservices zo populair? En wat kunnen eigenaren van webservices binnen bedrijven hiervan leren?

Een goed voorbeeld is Twitter. Twitter heeft een website waarmee je Twitter berichten kan schrijven. Maar, de meeste mensen gebruiken één van de vele Twitter programma’s voor op hun computer of voor op hun mobiele telefoon om Twitter berichten te volgen en te schrijven. Die vele tientallen programma’s kunnen ontstaan omdat Twitter een eenvoudig te gebruiken webservice aanbiedt.

Laten we de Twitter webservice eens zelf gebruiken. De volgende link toont alle Twitter berichten van de gebruiker ‘infoinnovator’ in zogenaamd JSON formaat: Twitter berichten van InfoInnovator. Wat je te zien krijgt is afhankelijk van de browser die je gebruikt, maar als het goed is zie je een lijst van Twitter berichten met nog een hele hoop informatie er omheen.

Waar het mij met dit voorbeeld om gaat is de eenvoud. Een simpele url die je in je browser kan plakken geeft je toegang tot de gestructureerde informatie van een internet dienst. Iedereen kan dit doen. Als afnemer heb ik aan niemand toestemming hoeven te vragen om dit te doen. Ik hoef ook aan niemand verantwoording af te leggen wat ik met de informatie ga doen. Ik kan mijn idee, om bijvoorbeeld een helemaal te gek en hip Twitter programma te maken, heel snel uitproberen. De drempel voor ontwikkelaars maar ook anderen om de Twitter webservice te gebruiken is dus heel erg laag. Dat verklaart de grote hoeveelheid aan Twitter programma’s en andere vormen waarin Twitter wordt gebruikt. Gebruikers kiezen hun favoriete programma en gaan Twitteren dat het een lieve lust is. En het gebruik van het Twitter platform en dus niet zozeer de website zelf, groeit enorm. Twitter is een platform. Een dienst waarop anderen hun diensten weer kunnen bouwen. Een informatie ecosysteem met de dienst Twitter in het middelpunt.

Natuurlijk is niet alle informatie op Twitter zo gemakkelijk toegankelijk. Bepaalde functies zijn beveiligd en alleen toegankelijk na authenticatie. Maar, de basis blijft eenvoud.

Als ik een aantal populaire internet webservices langs loop dan hebben die de volgende kenmerken. De webservice…

  • heeft een voor de gebruiker duidelijk en nuttig doel;
  • is laagdrempelig, eenvoudig en simpel in gebruik;
  • kent een (zeer) liberaal beleid ten aanzien van het gebruik van de webservice;
  • kent een levendige en actieve community van gebruikers die elkaar informeren en helpen en waarbij de webservice eigenaar actief participeert in die community;
  • biedt continu nieuwe, innovatieve en of verbeterde mogelijkheden;
  • heeft zo min mogelijk beveiliging daar waar het kan en een zo streng mogelijke beveiliging daar waar het moet;
  • is technisch eenvoudig, waarbij de techniek heel nauw aansluit bij reeds bestaande en algemeen geaccepteerde technieken (REST);
  • is flexibel in het ondersteunen van meerdere formaten waarin je de informatie kan opvragen;
  • kent een informatiestructuur die losjes en iteratief tot stand is gekomen;
  • heeft uitstekende documentatie die de service beschrijft met praktisch toepasbare voorbeelden;
  • kent een duidelijk (informatie)beleid ten aanzien van nieuwe versies van de webservice met ruime overgangsperioden;
  • is financieel vaak omzet gedreven in tegenstelling tot interne bedrijfsservices die vaak kosten gedreven zijn. Dit verschil is ook van invloed op hoe je tegen doorontwikkelingen van de webservices aankijkt.

Mijn persoonlijke mening is dat het succes van internet webservices uiteindelijk zal overslaan op het bedrijfsleven en de overheid, waarbij de goede dingen van W3C enterprise webservices elkaar zullen ontmoeten in de goede dingen van de internet REST webservices.

Bedrijven, gemeenten en instellingen hebben zo hun eigen dynamiek. Het zijn niet allemaal hippe internetbedrijven. Per bedrijf zal je moeten kijken wat het beste bij je past. Of juist sterk gestandaardiseerde systemen met stevige governance of juist meer laagdrempelige, eenvoudig te gebruiken systemen met een meer liberaal gebruiksbeleid of wellicht een mix van beide. Kies, maar kies weloverwogen.

Berry Groenendijk is informatie architect bij Caerleon.