KLANTCASES
wat klanten over
ons zeggen
PRODUCTEN & DIENSTEN
vandaag klaar zijn voor
de zorg van morgen
CARRIÈRE
hier begint jouw nieuwe
ICT-uitdaging
Dit artikel verscheen in het februarinummer van AG Connect.
IT-systemen in de zorg zijn steeds meer een onderdeel van het primaire zorgproces. De eis van continue beschikbaarheid verhoogt de druk op IT-afdelingen. Veel tijd gaat echter op aan onderhoudswerkzaamheden. Er blijft weinig tijd over voor het implementeren van nieuwe modules of applicaties. Continuous delivery kan daar verandering in brengen.
De groei van softwaresystemen in de zorg vraagt meer en meer expertise van IT-afdelingen. Steeds meer specifieke kennis zit bij individuen, wat de afhankelijkheid vergroot. De behoefte aan standaardisatie en automatisering van softwarebeheer neemt toe bij de IT-afdeling, terwijl de zorgorganisaties automatisering nog niet direct als noodzaak zien. Hierin valt veel winst te behalen. Tegelijkertijd staan zorgorganisaties financieel onder druk, zijn bezuinigingen noodzakelijk, en nemen kwaliteitseisen toe; bijvoorbeeld doordat cliënten steeds betere zorg eisen. Deze zaken staan haaks op elkaar en vragen veel van zorgorganisaties en daarmee ook van de IT-afdelingen.
Efficiëntie en slimme procesoptimalisatie zijn noodzakelijk om sneller aan zowel de behoefte van de cliënt als de organisatie te kunnen voldoen. Continuous delivery is het geautomatiseerd installeren van nieuwe softwareversies en speelt in op dergelijke uitdagingen. Nog meer efficiëntie is te bereiken met een cloudstrategie en het uitbesteden van het softwarebeheer. Met continuous delivery kunnen organisaties een kwaliteitsverbetering doorvoeren met een minimale time to market. Met één druk op de knop wordt software in een productieomgeving bijgewerkt door de IT-afdeling, waarbij er een minimale productieverstoring is. Continuous delivery gaat niet zozeer om techniek, maar om het streven van het dagelijks doorvoeren van verbeteringen en het nastreven van hogere prestaties.
Voordelen
Als zorgorganisaties continuous delivery doorvoeren, zijn dit de voordelen:
Risico’s
Wanneer continuous delivery wordt ingevoerd, moet wel gelet worden op de risico’s die het met zich meebrengt. Zeker wanneer het een geheel geautomatiseerd proces is, is bijvoorbeeld diepgaande monitoring essentieel om te controleren of alle systemen operationeel zijn. Wanneer in de keten een fout optreedt, zal de applicatiebeheerder gewaarschuwd moeten worden en zijn veelal handmatige herstelacties nodig. Het gevaar is dat wanneer monitoring onvoldoende is ingericht, te laat wordt geacteerd op fouten, dit in tegenstelling tot handmatige installaties, waarbij een beheerder zelf fouten signaleert. Ook in complexe infrastructuren is continuous delivery een risico, zeker op het gebied van databases.
Indien er meerdere webservers actief zijn op dezelfde database, zal in het continuous-deliveryproces zowel het oude als het nieuwe databaseschema ondersteund moeten worden. Dit maakt het proces complex. Continuous delivery zal dan ook niet voor elke infrastructuur toepasbaar zijn. Ten slotte is het lastig of vaak onmogelijk om een update terug te draaien. Eenmaal een versie in productie, kunnen fouten vaak alleen worden opgelost door middel van nieuwe updates. Voor organisaties die softwarereleases volgens het ‘watervalmodel’ installeren, is het overgaan naar continuous delivery een grote uitdaging. Het zijn vooral culturele aspecten van een organisatie die haaks staan op de werkwijze van continuous delivery. En veranderingen kosten tijd. Daarbij hebben applicatiebeheerders vooral baat bij een stabiele productieomgeving. Voor organisaties die gewend zijn aan een handmatige manier van werken, zal het doorvoeren van automatisering alleen maar wantrouwen wekken.
De sleutel is het realiseren van kleine successen. Door het boeken van succes op succes zal het vertrouwen in het geautomatiseerde proces groeien en de scepsis bij critici verminderen. Wanneer organisaties continuous delivery willen doorvoeren is het belangrijk een goede visie op dit onderwerp uit te werken. Wanneer aan dit voortraject te weinig tijd wordt besteed, bestaat het risico dat er onvoldoende fundament is gecreëerd voor de oplossing. Dit zal de stabiliteit niet ten goede komen en daarbij zal er veel tijd opgaan aan het repareren van verkeerde keuzes uit het verleden.
Vijf fases
Tegenwoordig werken software-ontwikkelteams agile (flexibel) en volgens het Scrum-principe. Met Scrum leveren multidisciplinaire teams in twee tot vier weken productiewaardige software op. Continuous delivery biedt vervolgens een antwoord op het snel in productie nemen van deze nieuwe software. Het is het antwoord om op elk gewenst moment te kunnen beschikken over de nieuwste softwareversies. Door het volgen van vijf fases (zie stappenplan) is een organisatie meer toekomstbestendig.
Met continuous delivery is de kans op fouten klein, maar monitoring blijft essentieel. De productieverstoring is minimaal bij het uitvoeren van updates. Softwarewijzigingen zijn snel, veiliger en laagdrempelig te realiseren. Nieuwe functionaliteiten, bugfixes en configuraties zijn snel geïnstalleerd. Omdat veranderingen in de software kleiner zijn door regelmatige updates, is de druk op de organisatie minder groot. Ten slotte is de feedback richting softwareleveranciers sneller zodat eventuele verbeteringen sneller opgepakt kunnen worden. Voor zorgorganisaties die het geautomatiseerde proces kunnen omarmen, is continuous delivery een grote stap vooruit, zij kunnen sneller inspelen op veranderingen.
Stappenplan
Continuous delivery biedt een antwoord op het snel in productie nemen van nieuwe software. Door het volgen van de volgende vijf fases is een organisatie sneller toekomstbestendig.
1 Zorg voor een goed versiebeheersysteem
Zorg als ontwikkelteam voor software om de versies te beheren. Versiebeheersoftware ondersteunt ontwikkelteams tijdens de samenwerking. Versiebeheer is een systeem waarin alle codeaanpassingen van een softwareproduct worden bijgehouden. Een goed versiebeheersysteem is essentieel voor een software-ontwikkelteam. Het wordt gebruikt om broncode te delen tussen ontwikkelaars en deze te kunnen bundelen tot softwarereleases. Testomgevingen dienen echter handmatig te worden bijgewerkt met de laatste versie.
2 Continuous integration
Zonder continuous delivery wordt een groot aantal stappen handmatig doorlopen. Continuous integration richt zich op het automatiseren van deze stappen: de meest recente versie uit het versiebeheersysteem wordt automatisch gecompileerd en vervolgens geïnstalleerd op een testomgeving. Dit proces vindt meestal ’s nachts plaats, zodat niemand er hinder van ondervindt. Het grote voordeel: ontwikkelteams beschikken binnen één dag over de meest recente versie binnen de testomgeving. Daardoor vindt er snellere feedback plaats naar het ontwikkelteam en hoeven er geen handmatige stappen ondernomen te worden die capaciteit vragen.
3 Regressietesten
Regressietesten controleren of de software na aanpassingen nog steeds werkt zoals bedoeld. Hiervoor wordt gebruik gemaakt van vooraf opgestelde testscenario’s. Testers doorlopen deze scenario’s handmatig en raken hiermee de meest kritieke paden. Eventuele bevindingen worden voor een release opgelost. Een regressietest is belangrijk om de kwaliteit van de software te waarborgen.
4 Geautomatiseerde regressietesten
Als het handmatige regressieproces volwassen genoeg is en het regelmatig wordt doorlopen, is de volgende fase het automatiseren van de testen. Met behulp van een specifiek tool worden handmatige testen geautomatiseerd. Dit levert een aanzienlijke tijdsbesparing op en daarnaast is het mogelijk ze op elk moment uit te voeren (bijvoorbeeld elke nacht) zonder dat dit menselijke capaciteit kost. Door in een vroeg stadium in het ontwikkelproces de belangrijkste fouten te vinden, worden de herstelkosten beperkt (curve van Boehm) en de kwaliteit gewaarborgd.
5 Optimaliseer het uitleverproces
Om in de productieomgeving snel een nieuwe versie te kunnen installeren, moeten de stappen van het uitleverproces geautomatiseerd worden. Waar handmatige stappen foutgevoelig zijn en een hoge productieverstoringstijd hebben, biedt het automatiseren hiervan een oplossing.
PinkRoccade is een partner die goed zicht heeft op de ontwikkelingen van vandaag en morgen en deze vandaag weet toe te passen. Zo dragen wij bij aan de doelstellingen van onze klanten. Wij hebben passie voor de zorg. Samen met klanten uit de zorgsector creëren we toekomstbestendige oplossingen. Wij zijn ervan overtuigd dat het inspelen op en slim toepassen van technologische ontwikkelingen de sleutel tot succes is. Zo zijn onze klanten klaar voor veranderingen en kunnen zij zich focussen op hun primaire taken.
Met PinkRoccade bent u vandaag klaar voor de zorg van morgen.