Har du helt styr på protokolhåndtering

Har du helt styr på protokolhåndteringen, når du udvikler services?

Når man udvikler services, ser jeg desværre alt for ofte, at man, uden rigtigt at være bevidst om det, får syet jakken fast i huden. Dén talemåde kender du måske ikke?

Nå, men det er nu også bare én, jeg selv har fundet på for at illustrere en vigtig pointe om protokolhåndtering, nemlig at protokolhåndtering skal varetages i et tyndt lag. Og hvad vil det så sige?

Dine services skal gøres tilgængelige

Udvikling af services skal altid tage udgangspunkt i det forretningsmæssige behov (det har vi tidligere underholdt lidt om i det her indlæg) – og så skal dine services selvfølgelig gøres tilgængelige på en eller anden måde. Det sker i reglen med dagens mainstream protokol; i forgårs var det CORBA, i går SOAP services, i dag REST, lige om lidt måske gRPC – og i morgen er det nok noget, vi ikke kender endnu.

Men uanset hvilken protokol, der er hot eller not at bruge, så skal man holde sig for øje, at substansen – det forretningsmæssige – ikke ændres bare fordi, der kommer en ny måde at snakke med servicen på. Og nu kommer vi til det med jakken…

Protokolhåndteringen skal varetages i et tyndt lag

Den forretningsmæssige service skal ikke ændres, bare fordi man skifter protokol. Derfor skal protokolhåndteringen varetages i et tyndt lag, der let kan udskiftes eller suppleres uden behov for at ændre på implementeringen af forretningslogikken.

Sagt på en anden måde, så er det lige præcis et eksempel på Single Responsibility Principle, der lidt forenklet siger, at der kun må være én årsag til at ændre i en komponent: Skal servicen udstilles med en ny protokol, skal der ikke ændres i forretningslaget – og en ændret implementering i forretningslaget skal ikke ændre på, hvordan data transporteres.

Lidt på samme måde som, at behovet for at skifte jakke eller tage en ekstra trøje på helst ikke skal give bekymringer om, hvorvidt huden nu kan holde 😕

Morten Hauch

Mail: mha@openminds.dk
Mobil: +45 3023 7021

Læs mere

Seneste blogindlæg

Effektiv opgavestyring i jeres it-udvikling

De fleste softwareprojekter benytter sig af en eller anden form for opgavestyring, hvor man kan oprette, organisere og ændre status på opgaver.

Bachelorprojekt med Vores Elnet er i mål

Nu er det bachelorprojekt, vi har stået fadder til i samarbejde med Vores Elnet kommet i mål. Projektet handlede om at få lavet en forretningsproces for håndtering af fejl i forbindelse med aflæsninger – og automatisere processen.