De Omnichannel Retail Suite van Centric wordt al jaren met succes ingezet als point-of-sale oplossing (POS) door grote en middelgrote retailers in Benelux en Scandinavië. Maar de retailwereld verandert snel en nieuwe businessmodellen zijn nodig voor een duurzame toekomst. Daarom moet ook Centric zich blijven ontwikkelen met innovatie en nieuwe technologieën in de Omnichannel Retail Suite. Software development manager Martijn Schutten legt uit hoe Centric dit aanpakt.

 

Retailers lijken tegenwoordig steeds sneller nieuwe functies te willen ontvangen. Zie jij dat ook?

“Jazeker, hoewel de houding van retailers per land of regio verschilt. De wens om steeds sneller nieuwe functies te ontvangen geldt niet alleen voor inPosition, de frontend-oplossing voor op de kassa’s in de winkel, maar ook voor het Omnichannel Business Platform (OBP), het platform dat op het hoofdkantoor van de retailer draait en alle data verwerkt die uit winkeltransacties voortkomen. Snelheid is cruciaal voor retailers, en diverse factoren beïnvloeden de snelheid waarmee nieuwe functies worden ontwikkeld. Een belangrijke factor is de flexibiliteit van de Omnichannel Retail Suite, een standaardproduct met meer dan vier miljoen regels code dat zeer configureerbaar is voor retailers. De verschillende configuratiemogelijkheden zorgen voor diversiteit bij het ontwikkelen van nieuwe functionaliteiten, elke code wordt bij elke release opnieuw getest.


Om de snelheid te verhogen, investeren we veel in het waarborgen van de kwaliteit van de softwarecode. Daarnaast hebben we de overstap gemaakt naar Azure DevOps met functies als pipelines as code en configuration as code, waarbij we gebruik maken van YAML, Terraform en Ansible voor continuous delivery. Deze modernisering was nodig om onze complexe ontwikkelen implementatieprocessen beheersbaar te houden. Dit resulteert in stabielere builds en een gestructureerde aanpak door de modulaire opbouw van de build- en deploymentcode.”


“Hoewel retailers deze veranderingen niet direct merken, zullen ze op lange termijn profiteren van de verhoogde efficiëntie en ontwikkelsnelheid, wat bijdraagt aan het sneller leveren van nieuwe functies. Snelheid gaat hand in hand met de kwaliteit van de oplossing. Idealiter willen we op beide geen compromissen sluiten.


De snelheid waarmee we software kunnen ontwikkelen, is sterk afhankelijk van de kwaliteit van de code. Daarom wordt de kwaliteit van alle software van Centric, en dus ook van de Omnichannel Retail Suite, beoordeeld door de Software Improvement Group (SIG). Uit de laatste metingen van het afgelopen jaar blijkt dat de code van OBP is gestegen van een score van 3* naar 4* voor nieuwe code, en dat inPosition een score van 4* heeft behaald voor zowel bestaande als nieuwe code. Een score van 4* wordt door SIG gezien als ideaal. Een score van 5* is simpelweg te perfectionistisch en moeilijk te bereiken zonder concessies te doen aan andere aspecten zoals ontwikkelsnelheid. We zijn trots dat de kwaliteit van ons werk door SIG wordt bevestigd. Dat stimuleert ons om ons werk zo goed mogelijk te blijven doen.”

 

 

“Voor optimale softwareontwikkeling is ook inspanning van de retailer nodig, bijvoorbeeld door bij te blijven met technologie en updates.”

 

 

Je geeft aan dat snelheid en kwaliteit hand in hand gaan. Hoe waarborgen jullie de kwaliteit van de software?

“Daarvoor hebben we verschillende stappen gezet in quality assurance (QA). Het hele estproces is cruciaal om fouten te identificeren in elke fase van het ontwikkelingsproces. Dit begint met unit tests door ontwikkelaars en omvat ook geautomatiseerde smoke- en regressietests. Met een smoke test controleren we bij elke nieuwe build of alles functioneert zoals verwacht. Met de regressietest waarborgen we dat de bestaande basisfunctionaliteiten goed blijven werken in de nieuwe build. We automatiseren steeds meer tests om sneller problemen te kunnen opsporen en tijdig te verhelpen. Alle twaalf testers van onze retailoplossingen gebruiken daartoe een zelf ontwikkeld testframework, waarmee we tests kunnen maken zonder te hoeven programmeren. We praten ook vaker met onze retailklanten over hun tests en onze tests. Zo kunnen we samen meer testcoverage krijgen door specifieke tests op te nemen in onze automatische tests. Dit bespaart tijd en voorkomt problemen voor zowel Centric als deze retailers.”

 

OCM - 18 - Martijn Schutten (3)

 

Hoe ervaren retailers de samenwerking met Centric?

“We werken met agile- en scrum-teams om sneller nieuwe functies te leveren. Elk team is verantwoordelijk voor een specifiek functioneel onderdeel van ons product, wat zorgt voor een diepere expertise en meer focus. We gaan richting full-stack development, zodat elk team zelf functies kan afronden zonder afhankelijk te zijn van anderen. Daardoor verloopt alles soepeler, aangezien ontwikkelaars en testers meer kennis opdoen van zowel OBP als inPosition. De feedback laat zien dat we het steeds beter doen, al blijft er altijd ruimte voor verbetering.


De product owner is de schakel tussen onze retailklanten en deze ontwikkelteams. We laten product owners direct met klanten praten over gewenste functies in de Omnichannel Retail Suite, zodat dit een standaardproduct blijft voor alle retailers. Het streven is om duidelijke, transparante en snelle interactie te hebben met klanten.


Als we eenmaal nieuwe functies hebben uitgedacht, maken we met hulp van onze professionele UI/UX specialisten zo snel mogelijk een prototype. Klanten zien direct wat ze krijgen en kunnen feedback geven zonder dat het ontwikkelteams extra tijd kost. Deze prototypes bespreken we één-op-één met klanten of in user groups per retailsegment zoals food, non-food of fashion. Zo weten retailers wat ze krijgen en kunnen ontwikkelteams eenvoudiger aan de slag.”