HomeKwaliteit in software ❱ Vijf sleutelfactoren voor succesvolle software ontwikkeling (deel 4): Bouw voor geen -en elke- omgeving

Vijf sleutelfactoren voor succesvolle software ontwikkeling (deel 4): Bouw voor geen -en elke- omgeving

Dit is deel 4 in de reeks Vijf sleutelfactoren voor succesvolle software ontwikkeling.

4. Bouw voor geen -en elke- omgeving

Elke applicatie stelt specifieke eisen aan beschikbaarheid, performance en capaciteit. Soms is dit zelfs afhankelijk van het tijdstip, de dag van de week of het seizoen. Cloud architectuur biedt in dit geval de perfecte omgeving voor jouw applicatie.

Want in een cloud omgeving kun je de resources voor de applicatie op- en neerschalen wanneer dat nodig is. Gepland op gezette tijden, zoals bepaalde weekdagen of een specifieke sales-periode.

Maar ook automatisch, bijvoorbeeld wanneer de applicatie een grenswaarde aan processorkracht of geheugen bereikt.

Zelfs als je het systeem niet in de cloud onderbrengt, is het verstandig om de applicatie zodanig te laten ontwikkelen dat deze klaar is voor elke omgeving.

Dus voor gebruik op je eigen netwerk of bij je hosting partner, maar ook voor in een cloud omgeving.

Het doel moet eigenlijk zijn: software voor géén omgeving.

Omgevingsvrije software heeft een aantal architectuur eigenschappen die de kwaliteit van de software sterk vergroten.

Drie voorbeelden:

  • Omgevingsvrije software is schaalbaar in de breedte. De applicatie kan over meerdere werkprocessen (machines) verdeeld worden om zo meer aanvragen tegelijkertijd te verwerken.
  • Omgevingsvrije software is overdraagbaar. De software kan gemakkelijk naar een ander werkproces (machine) verplaatst worden, en alle uitgaande en inkomende verbindingen kunnen naar het nieuwe netwerkadres worden verwezen.
  • Omgevingsvrije software is staatloos. De software bevat geen componenten die de actuele "staat" van de applicatie (gegevens van een gebruiker, sessie of proces) lokaal bewaren. Alle staatinformatie wordt gedeeld in een externe, centrale locatie.

Deze drie architectuureigenschappen leveren samen de flexibiliteit die je nodig hebt. Op het eerste gezicht biedt dit functioneel weinig voordeel. En misschien vertrouw je erop dat dit gewoon goed geregeld wordt. Maar daar ligt nu precies het gevaar.

Dit zijn uitgerekend verborgen specificaties die nadrukkelijk moeten worden vastgelegd. 

Want een systeem ontwerpen volgens deze architectuur is wel de beste aanpak, maar niet de gemakkelijkste.

Aangenomen dat jouw software een groot succes wordt en lang zal bestaan, krijg je hiervoor vroeg of laat de rekening gepresenteerd.

En dat kon wel eens eerder zijn dan je denkt, bijvoorbeeld wanneer:

  • de applicatie meer resources nodig heeft;
  • de back-up omgeving de applicatie moet overnemen ivm een storing;
  • je wil overstappen naar een nieuwe hosting provider met betere prijzen of SLA;
  • je een server moet vervangen ivm storingen of onderhoud;
  • het bedrijf gaat verhuizen.

Kortom, ook als jouw applicatie niet in de cloud wordt ondergebracht, dan zijn dit belangrijke kwaliteitsindicatoren van je software systeem.

Maak dus afspraken over schaalbaarheid, overdraagbaarheid en staatloosheid van de oplossing.

Over deze reeks

We beschrijven de vijf sleutelfactoren voor succesvolle software ontwikkeling in een reeks artikelen, één sleutelfactor per artikel.

Je kunt ook onze gratis whitepaper downloaden waarin alle 5 de sleutelfactoren behandeld worden.

Gerelateerde berichten

Is jouw onderneming Excel ontgroeid?

De voor- en nadelen van ons webapplicatie platform

Contact

  • Kanaalweg 18-G
  • 3526KL Utrecht
  • BTW: NL.108886888.B01
  • KvK: 30187211