
Waarom OutSystems applicaties onderhoud nodig hebben, ook al is het cloud

Thomas Broekhuizen
Product (managed) services lead
OutSystems
Basics
OutSystems is een toonaangevend low-code ontwikkelplatform, geboren in Lissabon en inmiddels bij tal van grote Nederlandse organisaties in gebruik. Denk aan Stedin, Eneco, Interfood, DAF en a.s.r. Een mooi voorbeeld van Europese techniek waar we best trots op mogen zijn.
Met OutSystems bouw je applicaties tot 6 keer sneller dan met traditionele softwareontwikkeling, en toch blijft het gewoon softwareontwikkeling.
Je kunt OutSystems on-premise draaien of in de cloud. In de praktijk kiezen de meeste bedrijven voor de cloud-versie. Fijn voordeel: OutSystems onderhoudt dan de onderliggende IT-infrastructuur voor je. Maar de applicaties zelf, en het platform, hebben af en toe ook een beetje aandacht nodig om goed te blijven draaien. In dit blog leggen we uit waarom dat zo is, en wat je er zelf aan kunt doen.
Alles wat je gebruikt, slijt
Je fiets of auto breng je af en toe naar de fietsenmaker of garage voor nieuwe banden of remmen, en een vliegtuig heeft regelmatig onderhoud nodig om meer dan 25 jaar veilig te kunnen vliegen. Alles wat gebruikt wordt, slijt. Dat geldt net zo goed voor software en dus ook voor OutSystems-applicaties. Stel je het onderhoud te lang uit, dan stoppen applicaties op een dag gewoon met werken, of raakt je versie zo verouderd dat de leverancier geen support meer biedt. Gaat er dan iets mis, dan heb je meteen een crisis op je bord. Dat is jammer, want het is prima te voorkomen. Hoe dat onderhoud er in de praktijk uitziet, leggen we hieronder uit.
Onderhoud aan OutSystems-applicaties
Allereerst is er het onderhoud aan OutSystems-applicaties. Dit valt uiteen in:
Issues oplossen: een gebruiker kan niet inloggen, of er verschijnt een foutmelding
Code optimaliseren: onlogische of ongebruikte code opruimen, zodat toekomstig onderhoud makkelijker wordt
Tabellen opschonen: grote hoeveelheden data verwijderen of verplaatsen om de prestaties op peil te houden
Kleine wijzigingen doorvoeren: om de applicatie functioneel up-to-date te houden
Dit onderhoud is erop gericht om verstoringen voor gebruikers te voorkomen of snel te verhelpen en de applicaties ook op de lange termijn onderhoudbaar te houden. Sla je dit een tijdje over, dan worden applicaties langzaam en duren wijzigingen steeds langer, simpelweg omdat de code moeilijker te doorgronden is voor ontwikkelaars, meer overbodige ballast bevat en daardoor gevoeliger wordt voor fouten.
Ook het doorvoeren van kleine wijzigingen valt onder dit type onderhoud. Zo blijft de applicatie niet alleen technisch overeind, maar sluit de functionaliteit ook aan bij wat gebruikers nodig hebben, ook als die behoeften veranderen.
Het loont dus om applicaties regelmatig op te schonen en bij te werken aan nieuwe eisen. Doe je dat met enige regelmaat, dan blijft het onderhoud overzichtelijk en behapbaar. Stel je het te lang uit, dan betaal je daar op een later moment de rekening voor: het onderhoud wordt groter, en kost veel meer tijd.

Onderhoud aan het OutSystems-platform
Een vraag die we vaak krijgen: moet het OutSystems-platform ook onderhouden worden, terwijl het toch in de cloud draait? Voor het nieuwe platform, ODC, is het antwoord: ‘weinig’. ODC is cloud-native en draait altijd automatisch op de nieuwste versie, daar zorgt OutSystems voor. Bij O11 is dat verhaal anders: dat is in feite een server-applicatie die op AWS draait. Daarvoor brengt OutSystems regelmatig nieuwe versies uit, die je per omgeving moet uitrollen. Dus ja, ook het platform heeft onderhoud nodig, alleen ligt de focus hier op andere dingen dan bij de applicaties:
Nieuwe OutSystems-versies bijwerken: van zowel het platform als de UI, zodat je omgeving ondersteund blijft
Forge-componenten bijwerken: nieuwe versies van herbruikbare functies
Nieuwe integratie- en beveiligingsstandaarden doorvoeren: om de werking te optimaliseren
Allereerst brengt OutSystems regelmatig nieuwe versies uit van het O11-platform en van OutSystems UI. Onze vuistregel: het O11-platform twee keer per jaar bijwerken, en de UI vier keer per jaar. Houd je dit bij, dan is het een klusje van een paar uur per omgeving, en sta je altijd klaar voor nieuwe innovaties. Loop je hier flink op achter, dan kan OutSystems op een gegeven moment een upgrade afdwingen om support te kunnen blijven bieden. ODC heeft overigens geen losse platform-updates nodig, wel updates voor de UI.
Daarnaast zijn er de forge-componenten, de openbare bibliotheek met losse onderdelen. Ook hiervan komen af en toe nieuwe versies uit, om compatibel te blijven met nieuwe platform- en UI-versies. Ons advies: check deze componenten een tot twee keer per jaar op updates.
Tot slot het doorvoeren van nieuwe integratie- en beveiligingsstandaarden. Op zichzelf staat dit los van de rest van de omgeving, maar iedere nieuwe versie brengt ook nieuwe functies met zich mee waarmee je de werking van je omgeving verder kunt optimaliseren. Denk aan REST versus SOAP, OAuth, of nieuwe manieren om rollen toe te kennen, bijvoorbeeld in Lifetime of aan gebruikersrollen binnen de applicatie.
Conclusie
We leven in een wereld waarin updates en releases elkaar in hoog tempo opvolgen. En hoewel OutSystems-applicaties meestal in de cloud draaien, kunnen ze niet zonder onderhoud en upgrades blijven functioneren, simpelweg om de technologische ontwikkelingen bij te blijven houden. Ook OutSystems, en de applicaties die erop draaien, kunnen niet zonder onderhoud. Anders worden ze uiteindelijk traag, onveilig, of lopen ze vast, en dan is er een dure upgrade nodig om alles weer bij de tijd te brengen.
Werk je de applicaties en het platform regelmatig bij en schoon je ze op, dan blijft alles up-to-date, blijven de kosten laag, en kan de business optimaal presteren. Dat houdt de time-to-market kort, waardoor je op elk moment klaar bent voor de volgende software-innovatie. Uiteindelijk levert goed onderhoud een langdurige, mooie return-on-investment op.
