Wil jij in je organisatie aan de slag met DevOps? Dan wil je nieuwe functionaliteiten zo snel mogelijk beschikbaar maken voor de eindgebruiker, zónder dat die snelheid ten koste gaat van de kwaliteit, veiligheid en goede werking van je applicatie. JamOps maakt het mogelijk om DevOps te werken met Mendix, door het controleren van de gecomitte code voor een groot deel te automatiseren.
Integratie van Transparantie en Traceerbaarheid
Maak gebruik van Continuous Integration and Delivery
JamOps maakt Continuous Integration and Delivery mogelijk. Continuous Integration is een proces waarbij nieuwe stukjes code automatisch getest en geïntegreerd worden in de laatste versie van de applicatie. Als een test faalt, dan moet de code eerst gecorrigeerd worden voordat hij wordt geïntegreerd. Dit ondervangt veel handmatige handelingen en voorkomt conflicten en bugs. Continuous Delivery zorgt er vervolgens voor dat aanpassingen na het testen automatisch doorgezet worden naar de gewenste omgeving. Dankzij deze processen kunnen eindgebruikers zo snel mogelijk gebruik maken van nieuwe functionaliteiten.
ISO-Certificering en Kwaliteitsbeheer
JamOps ondersteunt de hoogste normen van kwaliteit en veiligheid, waardoor het ideaal is voor organisaties die ISO-certificeringen zoals ISO 27001 en ISO 9001 willen behalen of behouden. ISO-certificeringen vereisen dat de werkwijze nauwgezet wordt vastgelegd en dat elke wijziging traceerbaar is. JamOps biedt de structuur en transparantie die nodig zijn om aan deze eisen te voldoen en ook om deze af te dwingen, ook als developers niet op de hoogte zijn van de afspraken. Zo kan een bedrijf garanderen dat zijn medewerkers volgens de werkwijze werken.
Als een ontwikkelaar zijn werk commit en we ontdekken iets, attenderen we diegene direct. Dit gebeurt op het moment dat de ontwikkelaar nog steeds in de context van het werk zit. Deze actieve aanpak maakt het mogelijk om kleine wijzigingen snel te overzien en op te lossen zonder extra tijdsinvestering.
JamOps gaat verder dan alleen tools en rapporten. Het zet een duidelijk statement neer: er is een manier van werken die ruimte laat voor onderhandelingen maar geen ruimte laat voor uitzonderingen. In een wereld waar talloze kwaliteitstools wekelijks software scannen en rapporten genereren, zien wij dat dit niet altijd effectief is. Rapporten belanden vaak op een stapel zonder actief aan de kwaliteit te werken. Met JamOps hebben we een andere filosofie. Onze analyses zijn direct, actief en gericht op resultaten.
UnusedWidgets Auto-Resolve
Met de UnusedWidgets Auto-Resolve functie van JamOps wordt het beheren van ongebruikte widgets in je Mendix-applicaties eenvoudiger dan ooit. Deze functie detecteert automatisch widgets die niet worden gebruikt in je applicatie en verwijdert deze zonder handmatige tussenkomst. Na een commit controleert JamOps je applicatie op ongebruikte widgets en handelt de verwijdering af.
Het proces is eenvoudig: navigeer naar je widgets directory, kopieer en plak het bijbehorende script (afhankelijk van je besturingssysteem: Unix/Mac of Windows) in je terminal of command prompt, en voer het uit. JamOps zorgt ervoor dat alleen de onnodige bestanden worden verwijderd, waardoor je applicatie schoon en overzichtelijk blijft. Dit bespaart niet alleen tijd, maar voorkomt ook mogelijke performance problemen door overbodige code.deze ongebruikte widgets en handelt de verwijdering direct af. Dit bespaart niet alleen tijd, maar voorkomt ook mogelijke performance problemen door overbodige code.
Static Code Analyser
Voorkom veelvoorkomende programmeerfouten
Een belangrijk onderdeel van JamOps is de static code analyzer, die controleert op veelvoorkomende programmeerfouten. Denk aan ongebruikte variabelen, lege catchblokken en verkeerd copy/paste-gedrag. In de analyzer zijn dit soort fouten omgezet naar regels waar de code aan moet voldoen. Na een commit krijg je binnen een minuut te zien aan welke regels niet is voldaan, zodat je dit direct kunt oplossen. Per project kun jij bepalen welke regels je wilt laten controleren. Misschien gebruik je bijvoorbeeld geen PascalCase, maar een andere naming convention. Dan kun je PascalCase uitschakelen en een andere naming convention inschakelen. Sommige regels kun je zelf configureren, zodat ze voldoen aan jullie manier van werken.
Als een ontwikkelaar zijn werk commit en we ontdekken iets, attenderen we diegene direct. Dit gebeurt op het moment dat de ontwikkelaar nog steeds in de context van het werk zit. Deze actieve aanpak maakt het mogelijk om kleine wijzigingen snel te overzien en op te lossen zonder extra tijdsinvestering.
Security scans
Voorkom cyberaanvallen, datalekken en reputatieschade
Om ervoor te zorgen dat ieder nieuw stukje code veilig is, voert JamOps een aantal automatische testen uit. Dat doet JamOps op drie niveaus:
- Static Application Security Testing (SAST): controle op onveilige patronen in de code.
- Dynamic Application Security Testing (DAST): controle op datatoegankelijkheid en de geldigheid van SSL-certificaten.
- Software Composition Analysis (SCA): controle op bekende onveiligheden binnen afhankelijkheden, zoals het gebruikte Mendix framework, de Mendix modules uit de Mendix App Store en de Java libraries.
Probeer je iets te committen wat niet veilig is? Dan krijg je direct een melding, zodat je het kunt oplossen.
Unit testing
Voorkom bugs
Om bugs te voorkomen is het slim om unit tests in te zetten. Een unit test is een test die controleert of de uitkomst van je code is zoals je had verwacht. Matcht de uitkomst van de test niet met wat je verwacht had? Dan klopt er waarschijnlijk iets niet in je code. Zo kun je fouten op tijd oplossen. Unit tests ontwikkel je in Mendix en worden door JamOps automatisch uitgevoerd. Zo houd je jouw applicatie vrij van bugs.
JamOps filosofie
De kracht van onze filosofie ligt in het gevolg. We geloven dat het optioneel maken van kwaliteits aanpassingen niet werkt. Als het niet wordt aangepakt, blijven wijzigingen uit de testomgeving en wordt de deployment geblokkeerd totdat de violations zijn opgelost. Hierbij houden we vast aan onze zero tolerance policy. Deze aanpak mag streng klinken, maar in de praktijk blijkt dit uitstekend haalbaar. Dit is de essentie van de JamOps-filosofie, en het is ook een fundamenteel aspect van de DevOps-benadering
Stroomlijn je processen
Deploy meerdere applicaties tegelijk
Als je veel applicaties moet deployen ben je daar vaak lang mee bezig, want dat kan niet tegelijk. Met JamOps kun je jouw deployments op de juiste volgorde inplannen en automatisch laten uitvoeren, door middel van Cloud Actions.
Feedback bij Cloud Actions
Vanaf nu biedt JamOps uitgebreidere feedback bij Cloud Actions. Gebruikers ontvangen directe meldingen, compleet met logs, die aangeven of de acties succesvol zijn voltooid of niet. Hierdoor hoef je je niet langer bezig te houden met het controleren van de uitvoering van Cloud Actions. Zodra je een actie inplant, ontvang je gegarandeerd een notificatie, waardoor je kunt vertrouwen op een duidelijke en tijdige terugkoppeling. Deze meldingen kunnen ook worden ontvangen via andere kanalen zoals Slack of aangepaste communicatiemethoden, afhankelijk van de specifieke voorkeuren van de gebruiker.
Voorkom dataverlies
Als een object (dat data bevat) wordt opgeslagen, dan controleert Mendix of er gerelateerde data aanwezig is die niet is opgeslagen. Mendix slaat deze alsnog automatisch op, om de juiste werking van Mendix te garanderen. Als de gebruiker uitlogt kan het echter gebeuren dat Mendix de automatisch opgeslagen gegevens weer verwijdert uit de database. Is dat niet gewenst? Dan ben je dus productiedata verloren zonder dat je het doorhad. Maak je gebruik van JamOps? Dan krijgen de ontwikkelaars op het moment dat dit gebeurt een melding en wordt de ci/cd pipeline on hold gezet. Zo kunnen zij kijken hoe het probleem is ontstaan en het oplossen. Vervolgens kan de pipeline weer vervolgd worden.
FreezeFrame
Verbeterde analyse en incident afhandeling binnen JamOps
Verbeterd inzicht, verbeterde reactie
Wanneer je applicatie draait, kunnen waarschuwingsmeldingen (bijvoorbeeld over geheugenproblemen) je ontwikkelproces verstoren. Het is lastig om de oorzaak en de urgentie van deze meldingen te achterhalen. Met FreezeFrames, de nieuwste aanvulling op JamOps, biedt JAM-IT een oplossing voor dit probleem.
Analyse met precisie
Wanneer je een alert krijgt, ontvang je een handleiding voor diepgaande analyse, waarbij een snapshot wordt genomen van wat er op dat moment plaatsvond in je app. Hierdoor krijg je een gedetailleerd beeld van wat er gebeurde op het moment van de melding. Het biedt inzichten die cruciaal zijn voor het begrijpen van de context achter deze waarschuwingen.
Heb je moeite met het starten van je analyse? FreezeFrame is de oplossing die je nodig hebt om sneller, efficiënter en nauwkeuriger te handelen bij mogelijke incidenten. Veel ontwikkelaars weten vaak niet waar ze moeten beginnen met hun analyse. Het identificeren van het juiste startpunt kan een uitdaging zijn. Daarom biedt FreezeFrame de nodige ondersteuning om dit proces te vergemakkelijken. Neem vrijblijvend contact met ons op voor meer informatie.
Bespaar tijd op het beheer van Java dependencies
Binnen een project zijn er altijd bepaalde Java-componenten die afhankelijk van elkaar zijn (dependencies). Om conflicten te voorkomen is het belangrijk dat je altijd de nieuwste versie van elk afhankelijke Java-component hebt. Dit kan een ingewikkeld en arbeidsintensief proces zijn, omdat al die afhankelijkheden weer afhankelijk zijn van andere componenten. Daarom hebben wij de Dependency Check toegevoegd aan JamOps. Deze zorgt voor de nieuwste versie van elk Java-component en ruimt oude en dubbele versies op.
Java Code Quality Analyzer: Verbeterde Controle van Code Kwaliteit binnen JamOps
Ontdek de nieuwe Java Code Quality Analyzer binnen JamOps: een nieuwe functie die bijdraagt aan het verbeteren van de code kwaliteit van Mendix Java Acties. Deze geavanceerde functie, speciaal ontwikkeld voor het Mendix-ontwikkelingsproces, biedt ontwikkelaars een grondige controle over hun Java-code binnen Mendix Java Acties.
De analyse binnen de Java Code Quality Analyzer wordt uitgevoerd met behulp van geavanceerde technologieën die de code grondig onderzoeken op verschillende aspecten van kwaliteit en betrouwbaarheid. Hierdoor kunnen ontwikkelaars mogelijke verbeterpunten identificeren en aanpakken. De Java Code Quality Analyzer maakt gebruik van een set van strikte rules om de code te scannen op naleving van best practices en conventies. Met meer dan 300 rules, zoals het identificeren van ongebruikte variabelen en het opsporen van mogelijke programmeerfouten, biedt deze analyzer een uitgebreide set van checks om de kwaliteit van de code te waarborgen.
Dit markeert een belangrijke stap in ons streven naar verbetering van het devops ontwikkelproces. Met de Java Code Quality Analyzer kunnen ontwikkelaars de kwaliteit van hun Java-code binnen Mendix Java Acties nauwlettend controleren, alles binnen de vertrouwde omgeving van JamOps. Probeer het nu en ervaar de verbeterde mogelijkheden voor het waarborgen van de kwaliteit van Java-code binnen JamOps.
Waarom is JamOps anders?
Ontwikkelaars hebben het vaak druk en zijn met meerdere projecten tegelijk bezig. Het kan dan lastig zijn om steeds te controleren of je code veilig en van goede kwaliteit is. Er bestaan al een tijdje tools om dit te automatiseren. Die tools analyseren de broncode regelmatig (bijvoorbeeld elke nacht) en sturen vervolgens een rapport met fouten op. Deze tools hebben alleen een aantal grote nadelen:
- De ontwikkelaar heeft tijdens het ontwikkelen niet door dat er iets fout gaat en kan daar dus niet direct op inspelen.
- Ontwikkelaars hebben vaak andere urgente taken en het niet volgen van conventies heeft geen consequenties. Daardoor blijft het rapport liggen.
- Fouten stapelen zich hierdoor op, waardoor het steeds meer werk wordt om ze terug te vinden en te corrigeren.
Met JamOps voorkom je dit. Het grootste voordeel van JamOps is de snelle feedback. Je commit je wijzigingen en JamOps geeft het direct aan als er iets misgaat. Zo kan de ontwikkelaar de issues oplossen, terwijl hij of zij nog in de context van de taak is. Tot de issues zijn opgelost gaat de pipeline niet verder en blijft de deploy uit. Zo voorkom je dat gebruikers problemen ervaren met de applicatie.
Hierdoor wordt het werk een stuk efficiënter. Omdat er vanaf het begin op de juiste manier wordt ontwikkeld, blijft het project ‘clean’ en consistent. Zo hoeven er achteraf geen problemen te worden opgelost en kan iedereen makkelijk aan de slag met elkaars project.
Gebruik JamOps zoals jij dat wilt
- JamOps draait on-premise of in de cloud
- Mogelijkheid om JamOps te draaien in je eigen tenant
- Eigen styling en inlogmechanisme zijn mogelijk
- Je eigen conventies kunnen verwerkt worden in JamOps
Alle functionaliteiten op een rij
Quality control
- Scans op best practices, conventies en performance
- Unit Tests
- Terugdraaien van handmatige deploys als deze versie gekoppeld is aan een build met violations
- Uptime monitoring
Security
- Anonieme entity scan
- Vulnerability scans
- Controle op het nog aanstaan van demo users
- Scans op security rules
- Controle op certificaten die verlopen
- Controle op Autocommit foutmeldingen
Efficiency
- Inplannen en uitvoeren van cloud diensten, zoals omgeving starten, stoppen, deployen en maken van backups
- Geautomatiseerde mobiele Mendix builds voor Android en iOS
- Automatisch opruimen van Java libraries
- Dependencies toevoegen aan een Mendix-project, inclusief alle transitive dependencies
- Exporteren van Mendix modules, waarbij alleen de benodigde dependencies worden opgenomen
- Beheer certificaten op hoog niveau voor al je apps zonder technische kennis: bouw met gemak en automatiseer je mobiele builds
Overzichten
- Overzichten van applicaties, met de gebruikte Mendix versie
- Overzichten van Mendix modules en waar ze gebruikt worden
- Overzichten van Mendix constanten en scheduled tasks en waar ze gebruikt worden
De kosten
De kosten voor JamOps zijn afhankelijk van een aantal factoren. Bijvoorbeeld van het aantal apps dat je beheert en de hoeveelheid maatwerk die nodig is. Ben je benieuwd wat de kosten zouden zijn in jouw geval? We brengen jouw situatie graag voor je in kaart, zodat we een kostenplaatje kunnen schetsen. Vrijwel altijd heb je JamOps binnen korte tijd terugverdiend, doordat je efficiënter gaat werken en minder tijd kwijt bent aan het oplossen van problemen.
Benieuwd naar JamOps? Bekijk hieronder alvast een voorproefje.