Om applicaties flexibel en kosteneffectief te ontwikkelen en te implementeren zijn Domain-Driven Design, Containerization en Serverless Computing van groot belang. Deze concepten hebben betrekking op de ontwikkelings- en operationele kant van DevOps. In dit artikel leg ik uit wat deze inhouden en dat het low code platform Uniface bij uitstek geschikt is om met deze concepten te werken.
Domain-Driven Design (DDD)
In DDD wordt een softwareoplossing verdeeld in discrete domeinen die je ook terugziet in de verschillende werkprocessen. De gegevens, activiteiten en objecten worden gecombineerd met bedrijfslogica om diverse domeinservices te leveren. Bijvoorbeeld een Human Resources-toepassing kan worden samengesteld uit domeinen zoals Afwezigheid, Payroll en Recruitment.
DDD volgt drie kernprincipes:
- De primaire focus van een project is het kerndomein- en domeinlogica.
- Complexe ontwerpen zijn gebaseerd op modellen van het domein.
- Creatieve samenwerking tussen technische en domeinexperts.
Deze principes leiden tot tastbare resultaten zoals modulair onderhoudbare systemen binnen goed gedefinieerde omgevingen. Het implementeren van deze kernprincipes is basis functionaliteit van Uniface, wat het bijvoorbeeld mogelijk maakt om microservices te ontwikkelen die van grote waarde zijn voor de business.
Cloud Deployment
Cloud computing heeft zich sterk ontwikkeld. Twee benaderingen die hiervoor gebruikt worden, zijn Containerization & Serverless Computing. Cloud deployment is meestal bedoeld om de overhead (kosten, arbeid, processen etc.) voor het inrichten en onderhouden van lokale infrastructuur te verlagen én tegelijkertijd de schaalbaarheid te vergroten. Deze doelen kunnen prima worden bereikt maar er zijn ook een paar potentiële nadelen aan het gebruik van dergelijke Infrastructure as a Service (IaaS) diensten.
Containerization – Containers as a service (CaaS)
Met IaaS besteden bedrijven nog steeds tijd aan onderhoud en beheer van het serverpark, ook al is het in de cloud. Het schalen van de infrastructuur gaat eenvoudig en snel, maar taken zoals deployment en patching blijven nog steeds mankracht vragen. Containerization lost dit op door de applicatie, zijn afhankelijkheden en de configuratie in een container te verpakken. Een dergelijke container kan ingezet worden op elke server met de juiste runtime omgeving. Dit is een populaire aanpak. Echter, met een Serverless aanpak kan een tweede belangrijk aspect van IaaS worden geoptimaliseerd.
Serverless – Functions as a Service (FaaS)
Stel je voor dat je een speciale taxi gebruikt die permanent stand-by staat in de buurt van je huis. Dat is natuurlijk verre van efficient omdat je ook moet betalen voor de tijd dat de taxi staat te wachten tussen twee ritten. Serverless Computing biedt een voor de hand liggende oplossing gegeven de taxi analogie. Betaal alleen wanneer je de taxi (de server) daadwerkelijk gebruikt. Je neemt alleen een server process af tijdens je ‘taxirit’ en je betaalt niet voor het continue gebruik van de server.
In een Serverless architectuur hou je je alleen bezig met het ontwikkelen van domein microservices en zet je deze microservices in bij een cloud FaaS provider. Serverinrichting, capaciteitsplanning, elasticiteit (naar boven en beneden schalen) en onderhoud zijn de verantwoordelijkheid van de cloud serviceprovider. Zo betaal je alleen voor de gebruikte diensten, niet voor een vooraf bepaald aantal servers.
Uniface. That’s code for happiness!
In dit artikel heb ik kort een aantal concepten geïntroduceerd die jou helpen bij het ontwikkelen van nieuwe en/of het moderniseren van bestaande bedrijfsoplossingen. Het low code platform Uniface ondersteunt deze concepten nu en in de toekomst. Uniface, het meest productieve en betrouwbare development & deployment platform in de markt. Met gebruik van modelgestuurde omgevingen voor de snelle ontwikkeling van schaalbare bedrijfskritische toepassingen.
- Probeer de gratis Uniface Community Edition en begin vandaag nog!
- Meer weten over hoe eenvoudig je kunt leren te programmeren met Uniface? Klik dan hier.
- Lees meer over Uniface op: www.uniface.com