Bedrijfsregel management systemen (BRMS’en), business rules engines, knowledge management systemen, expert systemen, predictive analytics systemen, decision management systemen zijn op dit moment maar een paar van de termen die gebruikt worden om softwarepakketten aan te duiden die bedrijfsregels (beslissingen / kennis) specificeren, uitvoeren en beheren. Maar wordt elke term gebruikt om te verwijzen naar een softwarepakket met unieke eigenschappen? Heel voorzichtig uitgedrukt: waarschijnlijk niet. Een belangrijke vraag die dan meteen opkomt is: “Hoe kunnen bedrijfsregel management systemen geclassificeerd worden?” Voor bedrijven kan deze classificatie een belangrijke rol spelen in het selectieproces van een BRMS.

Er bestaan meerdere classificatieschema’s van BRMS’en. Drie veelgebruikte schema’s zijn: 1) een classificatie naar de variabiliteit van een bedrijfsregel, 2) een classificatie naar de levenscyclus van een bedrijfsregel en 3) een classificatie naar de waardepropositie van een bedrijfsregel. In dit artikel gaan we dieper in op het tweede classificatieschema: de classificatie naar de levenscyclus van een bedrijfsregel.

Bij het classificatieschema naar de levenscyclus worden BRMS’en onderverdeeld in vier categorieën: 1) analyse- en ontwerpsystemen, 2) pure-play specificatiesystemen, 3) pure-play business rule engines en 4) specificatie- en executie systemen. Deze onderverdeling is gemaakt op basis van welke van de zeven ontwikkelfasen door een BRMS worden ondersteund (zie Figuur 1). De zeven ontwikkelfasen die doorlopen worden voor het opstellen van een bedrijfsregelset zijn: elicitatie, ontwerp, specificatie, verificatie, validatie, uitrol en uitvoer (zie Figuur 1). Naast de zeven ontwikkelfasen worden ook nog twee aanvullende fasen voor management en control onderscheiden: evaluatie en beheer. Beide management en control fasen vereisen specifieke functionaliteit van een BRMS, maar hier wordt pas in een later artikel op teruggekomen. Tot op heden zijn er, voor zover onze kennis reikt, geen integrale softwaresystemen op de markt beschikbaar die elk van de zeven fasen ondersteunen.

De eerste categorie, analyse- en ontwerpsystemen, ondersteunen de elicitatie- en ontwerpfase. Deze softwaresystemen ondersteunen een materiedeskundige bij het analyseren en annoteren van brondocumentatie. Analyse- en ontwerpsystemen bieden de mogelijkheid om de brondocumentatie in te laden en te annoteren met betrekking tot verschillende elementen. Voorbeelden van elementen die geannoteerd kunnen worden zijn: contexten, termen, rollen en bedrijfsregels. Tevens wordt in dit soort softwaresystemen ook de mogelijkheid geboden om de geannoteerde elementen in structuren te plaatsen, bijvoorbeeld contextstructuren en afleidingsstructuren.

artikel_classificatie_schema_brms_deel1

Figuur 1: Classificatieschema BRMS

De tweede categorie, pure-play specificatiesystemen, ondersteunen de ontwerpfase, specificatie fase, verificatie fase, validatie fase en uitrol fase. Naast het ontwerpen van de contextstructuren en bijbehorende afleidingsstructuren, ondersteunen deze softwaresystemen ook het definiëren van: de bijbehorende bedrijfsregels, (bedrijfs)concepten, feittypen en feitwaarden. Hierbij ontbreekt bij de meeste pure-play specificatiesystemen de mogelijkheid om een koppeling te maken van de verschillende producten (contextstructuren, bedrijfsregels etc) naar de brondocumentatie en annotatie op deze bedrijfsregels. Daarentegen bevatten deze softwaresystemen vaak wel de mogelijkheid om automatisch te kunnen controleren of bedrijfsregels lexicale, syntactische, of domein fouten bevatten. Daarnaast kunnen deze softwaresystemen controleren of er conflicterende, identieke of equivalente bedrijfsregels aanwezig zijn. Het validatieproces wordt ondersteund door het opstellen van testgevallen waarmee de gespecificeerde bedrijfsregels kunnen worden gevalideerd. Daarnaast bevatten deze systemen de mogelijkheid om de gedefinieerde contexten en onderliggende bedrijfsregels en feiten (automatisch of ondersteund door automatisering) uit te rollen naar (verschillende) business rule engines. Tevens dient bij pure-play specificatiesystemen de opmerking gemaakt te worden dat veel van deze softwaresystemen een beperkte ondersteuning voor de verificatie fase en validatie fase biedt en nog meer de uitrol fase niet ondersteunen.

De derde categorie, pure-play business rule engines, zijn softwaresystemen die over het algemeen maar uit twee componenten bestaan: 1) een engine (inferencer) waarmee de bedrijfsregels daadwerkelijk worden uitgevoerd en 2) een repository waarin de bedrijfsregels die uitgevoerd dienen te worden staan opgeslagen. Het verschil tussen een bedrijfsregel management systeem (BRMS) en een pure-play business rule engine is dat een engine zich enkel richt op het executeren van bedrijfsregels en geen andere activiteiten ondersteund. Dit betekent dat bijvoorbeeld de activiteiten ontwerpen en specificeren van de bedrijfsregels in een ander softwaresysteem dient te gebeuren.

De laatste (vierde) categorie, de specificatie- en executie systemen, zijn softwaresystemen die alle fasen van ontwerp en/of specificatie tot en met executie ondersteunen. Waarbij de uitrol fase altijd leidt tot een uitvoering op de eigen executie engine. Het verschil tussen een pure-play specificatiesysteem en een specificatie- en executiesysteem is dat bij een pure-play specificatiesysteem de bedrijfsregels implementatie-onafhankelijk gespecificeerd worden en er vanuit gegaan wordt dat de bedrijfsregels in een ander softwaresysteem worden geëxecuteerd. Zoals eerder gesteld, een specificatie- en executiesysteem heeft zijn eigen executie engine (inferencer) waarbij ook de bedrijfsregels specifiek voor deze eigen engine gespecificeerd zullen worden.

 
Reviewer: Eline de Haan