Innovatiesnelheid verhogen? Ontsluit data snel én veilig

Een kortere time-to-market van nieuwe diensten. Data delen in de keten. Data-driven beslissingen nemen. En soms zelfs het ontwikkelen van volledig nieuwe businessmodellen op basis van data. Het zijn allemaal redenen om bewust na te denken over een API-strategie. Een strategie die duidelijk onderscheid maakt tussen verschillende typen API’s, die aan alle betrokkenen helder maakt welke API’s door wie worden ontwikkeld en welke tools daarvoor worden gebruikt.

28 mei 2020   |   Nieuws   |   Door: Virtual Sciences Conclusion

Deel

Virtual Sciences Conclusion Innovatiesnelheid verhogen? Ontsluit data snel én veilig

Maak onderscheid tussen relatief eenvoudige data-API’s en complexe services

Hoe je het ook wendt of keert, we zitten al midden in een API-economie. Dat is een economie waarin het draait om waarde halen uit data. Bij de term API denken velen primair aan een ‘stopcontact’ waar externe partijen hun stekker in kunnen steken om data op te halen uit een applicatie. Deze business-API’s voor het exposen van data richting klanten en ketenpartners zijn vaak relatief simpele interfaces die zijn ontwikkeld met de eindgebruiker in gedachten. Dat betekent dat de API zelf simpel is. Maar ook dat deze niet teveel data bevat. Want de gebruiker, bijvoorbeeld een mobiele app, wil alleen informatie ontvangen die is gericht op die ene use case. Deze relatief eenvoudige API’s, waarbij de focus ligt op speed-to-market, kunnen ontwikkeld worden door de businessgebruikers die data willen delen of door de devops-teams die verantwoordelijk zijn voor de bewuste applicatie waar data uit wordt opgehaald.

Er is echter nog een ander type API waar veel minder aandacht voor is: het ontsluiten van functionaliteit die zich in de backbone van je organisatie bevindt naar processen die meer aan de voorkant draaien. Deze API’s worden vaak alleen intern gebruikt en zijn in de regel veel complexer dan de business API’s. Dat komt doordat back-end systemen veelal legacysystemen zijn die stammen uit een tijd dat er nog niet werd nagedacht over standaarden en generieke processen. Ze zijn nogal eigengereid. In het verleden maakten we point-to-point integraties om één type data uit te wisselen met een specifiek ander systeem. Dat soort interfaces is met een beetje verstand van zaken nog wel te bouwen. Maar de API’s die we hier bedoelen zijn bedoeld voor hergebruik. Het ontwikkelen van een herbruikbare, generieke service om functionaliteit of data uit back-end systemen naar een veelheid van andere applicaties te ontsluiten is specialistenwerk.

Hoe geef je API-ontwikkeling vorm?

Veel organisaties worstelen met hoe ze dit specialistenwerk moeten organiseren zonder de vrijheden van de devops teams of businessmensen in te perken. Een centrale integratieafdeling die alle API’s bouwt, werkt niet meer. Zo’n team wordt overbelast door de vele eenvoudige API’s die ook door de business zelf – door zogenaamde citizen developers – of door DevOps teams ontwikkeld kunnen worden. Tegelijkertijd heb je centraal wel specialistische expertise nodig. Daarom pleiten wij voor een Centre of Excellence voor integratie. In dit Centre of Excellence onderscheiden we drie persona’s die alle drie een ander perspectief en kennisniveau hebben:

  • De citizen developer, vaak de gebruiker van een applicatie of een businessanalist;
  • De developer in een DevOps-team, die verantwoordelijk is voor de ontwikkeling en het beheer van een specifiek product;
  • De integratiespecialist, die de complexe herbruikbare enterprise-integraties bouwt.

Het merendeel van de API’s kan in zo’n organisatiestructuur worden gebouwd door citizen developers en DevOps-teams, eventueel ondersteund door de integratie-experts in het Centre of Excellence. Deze experts doen ook een kwaliteitscontrole om erop toe te zien dat API’s altijd op dezelfde manier informatie opvragen. Dat een klant bijvoorbeeld altijd wordt herkend aan zijn klantnummer en niet de ene keer aan zijn naam en de andere keer aan de combinatie postcode en huisnummer.

Deze werkwijze wordt ook meer en meer ondersteund door integratie-tooling. Er komen steeds meer tools op de markt die enerzijds mogelijkheden bieden voor ‘citizen development’, terwijl ze tegelijkertijd ook over zeer diepgaande functionaliteit beschikken voor integratie-experts. Businessgebruikers komen terecht in een simpel ogende omgeving met relatief weinig complexiteit. Als ze vastlopen en de hulp willen inschakelen van een integratie-expert, kan deze voortbouwen op datgene dat al is ontwikkeld in een veel complexere omgeving met diepgaande functionaliteit.

Regel de governance met API-management

Een laatste aspect waar je aandacht aan moet besteden, is de governance. Vragen API’s altijd op dezelfde manier informatie op? Is de authenticatie en autorisatie goed geregeld? Hoe is de API verder beveiligd? Kan de API het aantal verzoeken limiteren zodat de achterkant niet overbelast raakt? Dit alles regel je met API-management. Hiermee zorg je ervoor dat de makers op een eenduidige, veilige en gecontroleerde manier API’s beschikbaar kunnen stellen aan verschillende gebruikers, zowel intern als extern. API-managementproducten bieden:

  • Functionaliteit op het gebied van security, zoals rate limiting en authenticatie;
  • Catalogusfunctionaliteit, waaronder documentatie en self service;
  • Managementfunctionaliteit, zoals access control en monitoring.

Kortom, met API-management zorg je ervoor dat alle persona’s op de juiste manier worden ondersteund in het ontwikkelen en beschikbaar stellen van API’s. Het is belangrijk dat je een oplossing kiest die past bij jouw situatie. Heb je bijvoorbeeld een multi cloud-omgeving, dan is het prettig dat API-management het gebruik van meerdere gateways ondersteunt.

Heb je hulp nodig bij het opzetten van zo’n API-strategie, inclusief de bijbehorende organisatiestructuur, governance en advies over de te gebruiken tools? Neem contact met ons op.