Wat is een bedrijfslogica-laag?
In de logische architectuurpraktijk van het informatiesysteem bestaat een bedrijfslogica-laag (BLL) uit bedrijfslogica in een codebasis die gescheiden is van de gegevenslaag en de presentatie- of grafische gebruikersinterface, laag. Bedrijfslogica kan niet alleen berekeningen omvatten, maar ook bedrijfsobjecten zoals producten of werknemers. Het zal voorzien in methoden voor toegang tot en onderhoud van gegevens, en het zou de verplaatsing van werk van de ene functie naar de andere mogelijk kunnen maken. Bovendien definieert de BLL andere bedrijfsregels. Het wordt ook wel de domeinlaag genoemd, omdat deze de bedrijfs- of domeinlogica bevat.
Het gebruik van een bedrijfslogica-laag is een aanbevolen software-engineeringconventie. Het opzetten van een bedrijfslogica-laag samen met een data- en presentatielaag in een multitier-architectuur ondersteunt een modulair ontwerp en herbruikbaarheid van code. Er zijn een aantal voordelen te behalen door een applicatie in verschillende lagen te compartimenteren.
Een van de voordelen van multitier-architectuur is eenvoudiger code-onderhoud. Wanneer bedrijfsvereisten veranderen, is de BLL mogelijk het enige gebied dat codewijzigingen vereist. Wanneer geen gecompartimenteerd ontwerp wordt gebruikt, kan het onduidelijk zijn waar in de toepassing de logische codewijzigingen moeten worden aangebracht.
Een ander voordeel is dat het uitrollen van toepassingsreleases eenvoudiger kan zijn. In gevallen waarin alleen de BLL is bijgewerkt, is dat de enige component die moet worden vrijgegeven in de productieomgeving. De gegevenslaag en de presentatielaag kunnen ongewijzigd blijven.
Ontwikkelteams kunnen ook profiteren wanneer een BLL- en multitier-architectuur wordt gebruikt. De medewerkers kunnen zich specialiseren in vaardigheden op het gebied van data, bedrijfslogica of presentatieontwikkeling en kunnen sneller hun deel van de applicatie leren kennen. Werk in elke laag kan tegelijkertijd worden gedaan, waardoor het algemene ontwikkeltijdsbestek kan worden gecomprimeerd.
Het gebruik van een BLL en ondersteunende gegevens- en presentatielagen is belangrijk in webapplicaties. Als een voorbeeld van een webapplicatie die multitier-architectuur gebruikt, zou een website van een verzekeringsmaatschappij een applicatie kunnen hosten waar klanten hun verzekeringspolissen kunnen bekijken. De klanten gebruiken een webbrowser om de website te bezoeken en de browser werkt samen met de code van de presentatielaag van de toepassing. De klantbeleidsgegevens worden bijgehouden in een database; dit is de gegevenslaag. De toepassingscode die bepaalt welk beleid een klant mag zien en alle berekeningen of bedrijfslogica die op die gegevens worden toegepast, zijn ondergebracht in de BLL.
Multitier-architectuur, met een gecompartimenteerde bedrijfslogica-laag, kan worden gebruikt bij de ontwikkeling van traditionele softwareapplicaties en bij de ontwikkeling van webapplicaties. De systeemarchitectuur van de traditionele softwareapplicatie zal vergelijkbaar zijn met die van de webapplicatie. Dezelfde voordelen zullen ook worden gerealiseerd.