Business Rules
Business Rules kunnen we op twee manieren uitleggen. Als regels binnen het bedrijf en als regels die gelden voor de data in een database.
Wanneer je bij een bedrijf werkt of betrokken bent bij een zakelijk project, zijn er 3 belangrijke regels die waar je je aan moet houden. Meestal hebben deze regels betrekking op het personeel en geven ze aan wat je wel en niet kan doen. Een goed voorbeeld van een bedrijfsregel heeft betrekking op relaties. Bij veel bedrijven mag een manager namelijk geen relatie hebben met een werknemer. Een accountant bij een bedrijf is het bovendien meestal niet toegestaan om met een andere accountant te trouwen. In dit geval is mag het niet omdat de kans groter is dat de echtgenoten financiële informatie kunnen wijzigen en elkaar vervolgens kunnen behoeden voor ontdekking. Deze regels zijn bedoeld om verstoringen in een bedrijf te voorkomen.
In de IT leggen ze een bepaalde vorm van beperking op aan een specifiek aspect van de database. Denk bijvoorbeeld aan de elementen binnen een veldspecificatie of de kenmerken van een bepaalde relatie. De manier waarop we een business rule interpreteren komt dus overeen met de manier waarop de organisatie haar data waarneemt en gebruikt. De manier waarop de organisatie functioneert en zaken doet is daarom bepalend.
Business rules definiëren entiteiten, attributen, relaties en beperkingen. Meestal gebruiken we ze dus in situaties waarin we data opslaan of gebruiken. Deze informatie is alleen van belang als de business rules zijn gedefinieerd. Anders zouden het alleen maar records zijn. Ze ondersteunen medewerkers bovendien om zich te concentreren op de activiteiten van de bedrijfsprocessen. Bij het maken er van moeten we ons houden aan de volgende uitgangspunten:
Het identificeren en documenteren van Business rules is erg belangrijk voor het databaseontwerp. Ze stellen de ontwikkelaar namelijk in staat om regels en beperkingen te ontwikkelen en een correct gegevensmodel te maken. Ze stellen de ontwikkelaar ook in staat om bedrijfsprocessen en de aard, rol en reikwijdte van de data te begrijpen. De Business rules kunnen we daarom vinden bij managers, beleidsmakers, afdelingsmanagers, in schriftelijke documentatie, procedures, standaarden, werkinstructies en interviews met eindgebruikers.
Omdat ze op elkaar lijken, verwart men Business rules vaak met requirements. Requirements liggen echter op een hoger niveau. Zij beschrijven de informatiebehoeften van een organisatie in use cases. Daardoor weten we dus hoe we invulling geven aan de requirements in het systeem.
Er zijn verschillende protocollen voor de manier waarop we ze kunnen opschrijven. We hoeven echter niet ieder protocol te volgen, over het algemeen bestaat een goed geschreven reeks rules hier uit:
Bedenk dat ze bi-directioneel zijn. Dat wil zeggen dat we ze twee kanten op kunnen lezen. Een kind heeft bijvoorbeeld een moeder, een moeder kan echter meerdere kinderen hebben. Als ze goed zijn omschreven is het eenvoudig om de testgevallen er van af te leiden.
Een ander belangrijk aspect van business rules bestaat uit de manier waarop we de regels binnen het bedrijf delen. Een protocol vereist, dat ze ergens zijn vastgelegd. Omdat veel bedrijven informatie direct via internet delen, kiezen sommigen ervoor om ze online te plaatsen op intranet of wiki’s. Dit deelt hen sneller en eenvoudiger met alle medewerkers. Het is erg belangrijk dat ze in duidelijke taal worden geschreven. Als je de ze op een te hoog taalniveau schrijft, is de kans groter dat niet iedereen begrijpt waar ze over gaan of wat aanvaardbaar is.
Een belangrijk aspect van ieder ontwerpproces is het maken van keuzes. In het databaseontwerp moeten we bijvoorbeeld kiezen welke data we in de database willen opslaan. De data die we uiteindelijk kiezen om op te slaan en hoe we deze op slaan, wordt echter bepaald door de manier waarop de organisatie haar data gebruikt.
Om verder te kunnen gaan met het (database) ontwerpproces , hebben we formele instemming van de organisatie nodig. De Business rules zullen van invloed zijn op een breed scala van databasekwesties, zoals:
Het is bijna onmogelijk om een generieke reeks rules te maken die van toepassing kunnen zijn op twee of meer organisaties. Elke organisatie heeft zijn eigen requirement en zijn eigen unieke manier van zaken doen. Daarom heeft iedere organisatie zijn eigen specifieke set business rules nodig.
Er zijn twee hoofdtypen business rules: databasegericht en toepassingsgericht. Beide soorten leggen een vorm van beperking op en helpen bij het afdwingen en handhaven van algehele data-integriteit. Ze verschillen echter met betrekking tot waar en hoe ze zijn opgenomen in het systeem. Hoewel beide soorten belangrijk zijn, zullen we ons tijdens het databaseontwerpproces concentreren op database-georiënteerde business rules.
Database-georiënteerde business rules leggen beperkingen op die we kunt vaststellen binnen het logische ontwerp van de database. We implementeren een data-beperking door verschillende veldspecificatie-elementen, relatie-eigenschappen of een combinatie van beide te wijzigen. De instructie waaruit we de beperking afleiden, is een database-georiënteerde business rule.
Toepassingsgeoriënteerde business rules leggen beperkingen op die we niet kunt vaststellen binnen het logische ontwerp van de database. In plaats daarvan kunnen we ze vaststellen in het fysieke ontwerp van de database of in het ontwerp van de applicatie. Het gaat hierbij vaak om berekende bedragen en tussen resultaten die we niet in de database willen hebben maar wel belangrijk zijn voor de uitkomst.
Enkele voorbeelden van typische business rules en de requirements waar ze uit voortkomen.
Als we als bedrijf Agile willen blijven, kan een Engine voor Business Rules ons helpen om besluitvormingsprocessen onafhankelijk van andere business software te managen. Een Business Rules Management System (BRMS) is in staat om bedrijfslogica realtime te implementeren zonder afhankelijk te zijn van andere software. Zodoende kunnen we de beslissingslogica gemakkelijk delen met de gehele organisatie. Bovendien zorgt een BRMS er voor dat we een complexe regelset consistent kunnen afdwingen, ook in een grotere organisatie.
Een moderne Business Rules Engine bevat een database met bedrijfsregels en maakt vaak gebruik van machine learning om de besluitvorming te optimaliseren.
Mogelijk is dit een vertaling van Google Translate en kan fouten bevatten. Klik hier om mee te helpen met het verbeteren van vertalingen.