Skip naar hoofdcontent

Continuous integration met JamOps

Klant

Gemeente Rotterdam

Diensten

Web Applicatie ontwikkeling

Jaar

2020

Bij het ontwikkelen van een applicatie zijn vele handelingen nodig die steeds opnieuw uitgevoerd moeten worden. Denk aan het deployen van code naar de verschillende omgevingen en het testen en het controleren van de wijzigingen. Dat kan efficiënter, vonden wij. Daarom ontwikkelden we JamOps, om deze processen te automatiseren en optimaliseren.

De klant

De gemeente Rotterdam ontwikkelt elk jaar tientallen apps om hun inwoners beter van dienst te zijn. Sinds kort gebruiken ze het Mendix platform om de applicaties sneller en efficiënter te kunnen ontwikkelen.

Bij het ontwikkelen met Mendix zijn er altijd verschillende acties die je keer op keer moet uitvoeren. Denk bijvoorbeeld aan het deployen van de code naar de test omgeving. Elke keer dat er functionaliteit af is, moet deze handmatig worden gedeployed. Voor de gemeente Rotterdam betekent dit dat het veel tijd kost om alle functionaliteiten steeds te deployen.

Bij JAM-IT volgen we de DevOps filosofie, wat inhoudt dat we ernaar streven om de functionaliteit zo snel mogelijk beschikbaar te maken voor de eindgebruiker. Tot nu toe werkte dit nog niet out of the box bij het gebruik van het Mendix platform, omdat er nog veel acties niet geautomatiseerd zijn. Als oplossing hiervoor hebben we JamOps ontwikkeld, een tool die zulke herhalende acties automatiseert. De tool zorgt er zo voor dat je de DevOps mentaliteit kunt gebruiken in combinatie met Mendix.

Om de tool bruikbaar te maken voor partijen buiten JAM-IT, zoals de gemeente Rotterdam, moest hij omgevormd worden naar een gebruikersvriendelijke applicatie.

De oplossing

JAM-IT heeft een Mendix applicatie ontwikkeld als schil voor de bestaande JamOps tool. Voor  de functionaliteiten maakt de applicatie gebruik van verschillende webservices. De tool automatiseert verschillende taken om zodoende de kwaliteit, veiligheid en efficiëntie van applicatie ontwikkeling te vergroten.

Ten eerste maakt JamOps Continuous Integration and Deployment [link naar productpagina] mogelijk. Met Continuous Integration wordt nieuwe code automatisch getest en geïntegreerd in de laatste versie van de applicatie. Dit proces vermindert het aantal handmatige handelingen en voorkomt conflicten en bugs. Als er een test mislukt, wordt de code niet geïntegreerd totdat de fout is gecorrigeerd. Dit zorgt ervoor dat alleen kwalitatief hoogstaande code wordt geïntegreerd in de applicatie.

Daarnaast maakt JamOps Continuous Delivery mogelijk, waarmee aanpassingen na het testen automatisch worden doorgezet naar de gewenste omgeving. Dit proces vermindert de tijd die nodig is om nieuwe functionaliteiten beschikbaar te maken voor eindgebruikers. Met Continuous Delivery kunnen nieuwe functies snel en betrouwbaar worden uitgerold, waardoor gebruikers er direct gebruik van kunnen maken.

Het gebruik van JamOps voor Continuous Integration en Delivery helpt bij het verbeteren van de kwaliteit en betrouwbaarheid van jouw applicaties. Door automatisering van deze processen kunnen ontwikkelteams zich concentreren op het schrijven van code en nieuwe functies, terwijl de tool de rest van het werk doet. Dit resulteert in snellere releases, minder fouten en hogere klanttevredenheid.

Ten tweede automatiseert JamOps enkele beheeractiviteiten. Te beginnen met de Java dependencies; de tool zorgt voor de nieuwste versie van elk onderdeel en ruimt dubbele versies op. Daarnaast checkt het of er certificaten zijn die binnenkort verlopen, en als dat het geval is, stuurt hij een herinnering naar de beheerders. Tot slot optimaliseert het de export en import processen van Mendix modules in nieuwe projecten.

Omdat de applicatie continu bezig is met het verwerken van meerdere projecten en taken, maakt het veelvuldig gebruik van queue implementation en multithreading. Zo wordt de time-to-market geoptimaliseerd voor elke wijziging in de code.

Het resultaat

Dankzij het automatiseren van processen, zorgt JamOps voor snellere innovatie en verbetering van software. Sinds de gemeente Rotterdam de tool heeft geïmplementeerd, hebben ze een aanzienlijke kortere time-to-market bij het ontwikkelen van applicaties.

Daarnaast voorkomt de tool het lekken van data en andere gevaren. De kwaliteit en veiligheid van de software worden gewaarborgd door verschillende geautomatiseerde testen.

Een bijkomend voordeel is de mogelijkheid om processen te stroomlijnen en standaardiseren. Alle ontwikkelaars van de gemeente Rotterdam gebruiken JamOps bij het ontwikkelen van software. Omdat alle taken en projecten door dezelfde tool en met dezelfde tests verwerkt worden, worden vele handmatige fouten voorkomen. Dit resulteert in meer controle over de processen en meer veiligheid van de applicaties.

Wil je meer informatie?

Armando Jacobus

Neem contact op met Armando Jacobus via:

Schrijf je nu in voor een kennismakingsgesprek, een Mendix demo of een App in a Day sessie!

WhatsApp openen
Hallo 👋
Ik ben Armando, kan ik je ergens mee helpen?