Deel II: Van maatwerk naar generieke parameterisatie
In het vorige deel van dit tweeluik bespraken we de effecten van maatwerk op je bedrijf als solutions provider of softwarebouwer. Deze effecten zijn voornamelijk negatief.
Dus in plaats van maatwerk uit te besteden of misbruik te maken van je vaste ontwikkelpersoneel, wil je de behoefte van je klanten aan maatwerk beperken met generieke parameterisatie. Er zijn verschillende niveaus om dit te doen:
Hard gecodeerde op maat gemaakte execution paths. Dit begint meestal met een of twee if-then-else statements om enkele belangrijke klanten een bepaalde optie, afgeleide berekeningen, of specifieke processtappen toe te staan. Dit niveau van maatwerk is moeilijk te onderhouden, leidt tot technische schuld, en wordt beschouwd als ‘bad practice’.
Het maken van een beperkte set configureerbare opties. Jij bepaalt zelf voor welke onderdelen binnen je applicatie je deze configuraties aanbiedt. En omdat je een eindige reeks variaties aanbiedt, kun je het effect op de applicatie als geheel beheersen. Omdat je moet kiezen welke opties je aanbiedt, stel je per definitie sommige van je klanten teleur.
Uploadbare besturingstabellen. Met deze optie, apart of in combinatie met configureerbare opties, kan je klant het gebruik van je applicatie uitgebreider beïnvloeden. Het biedt gemak, maar beperkt de configuratie tot een beperkte reeks vooraf gedefinieerde kenmerken.
In-app scripting. Met deze optie kan je klant specifieke beslisregels, berekeningen en workflows implementeren. Het is een zware belasting voor je organisatie, omdat de uitgebreide functionaliteit onderhouden moet worden.
Embeddable business rule engine. Met deze optie kun je je volledig richten op je generieke ontwikkeling op het gebied waarin je uitblinkt. Als je een volwassen business rule engine inbouwt, kun je met minimale inspanning een maximaal effect bereiken. Als de business rule engine API-bouwmogelijkheden heeft, is het bijkomende voordeel dat je je klant in staat kunt stellen ook zijn eigen integraties te implementeren.

Het is belangrijk om er rekening mee te houden dat, ongeacht het type parameterisatie dat je kiest, de op maat gemaakte instellingen voldoen aan de volgende criteria:
Transparant. Compliance vereist in de meeste branches transparantie. En je verlegt daarmee ook de aansprakelijkheidrisico’s van jouzelf naar je klant.
Versie-onafhankelijk. Backwards compatibility is essentieel. Welk niveau je ook kiest, zorg ervoor dat de op maat gemaakte instellingen en integraties van je klant niet kapot gaan.
Door een business rule engine met de juiste mogelijkheden in te bouwen, kun je al je resources inzetten voor je generieke ontwikkeling, zonder je klant zijn maatwerk te ontzeggen. Het verhoogt de snelheid van releasen van nieuwe functionaliteit. Het versterkt ook je verkoopkracht. Want je implementatieteam is niet langer de remmende factor bij het aantrekken van nieuwe klanten.
Samengevat creëer je met een embeddable business rule engine een schaalbare situatie met mogelijk grotere marges. Als neveneffect verlost het je ontwikkelaars van vervelend werk zoals het bijwerken van API’s en het maken van bijpassende documentatie.
Rulecube is een volledig embeddable business rule engine die voldoet aan de eisen van aanbieders van bedrijfsoplossingen. Als je nieuwsgierig bent naar wat Rulecube voor jouw bedrijf zou kunnen betekenen, vraag dan een demo aan, zodat we in jouw specifieke behoeften en uitdagingen kunnen duiken.