Versiebeheer in Qlik Sense
Als we het succes van Business Intelligence(BI) platform in een organisatie willen meten, dan is het aantal actieve gebruikers een belangrijke indicator. Meer gebruikers betekent immers dat er meer data-gedreven beslissingen worden genomen. Dankzij de self-service mogelijkheden van Qlik Sense worden BI omgevingen steeds groter en komen er steeds meer applicaties. Deze ontwikkeling gaat gepaard met een toenemende druk op het beheer in de vorm van RFC’s (change requests) en incidenten. Tegelijkertijd neemt de kans toe dat er menselijke fouten worden gemaakt bij beheerwerkzaamheden (functioneel en/of technisch applicatiebeheer). Dit heeft een negatieve invloed op de kwaliteit van de BI-omgeving, wat uiteindelijk weer effect heeft op de adoptie. Hoe kun je dit voorkomen en grip houden op het groeiende aantal gebruikers, ontwikkelaars en applicaties? Versiebeheer kan hier een belangrijke rol in spelen. In dit blog lees je waarom.
Versiebeheer
Een versiebeheersysteem zorgt ervoor dat elke wijziging in een bestand wordt bewaard. Hierdoor kun je eenvoudig informatie over oudere versies terugvinden. Met versiebeheer wordt een ontstaansgeschiedenis (of audit trail) van een bestand opgebouwd met informatie over de personen die wijzigingen hebben uitgevoerd, wanneer er wijzigingen zijn uitgevoerd en wat er precies is gewijzigd. Wijzigingen die later een probleem blijken te veroorzaken, kunnen met een versiebeheersysteem gemakkelijk ongedaan gemaakt worden, door een oude versie terug te halen.
Er zijn verschillende redenen te bedenken om versiebeheer op BI-applicaties toe te passen. Ontwikkelaars kunnen efficiënter werken door gebruik te maken van versiebeheer, terwijl de kans op fouten afneemt. Er kunnen er flinke tijdsbesparingen gerealiseerd worden bij de afhandeling van incidenten. Daarnaast kan versiebeheer een uitkomst bieden voor bedrijven die te maken hebben met wet –en regelgeving omtrent het rapportageproces. Helaas biedt Qlik Sense standaard geen functionaliteit voor automatisch versiebeheer. Gelukkig zijn er third-party oplossingen die het wel mogelijk maken om versiebeheer toe te passen in combinatie met Qlik Sense. Platform Manager van IN4BI is hiervan een mooi voorbeeld.
Platform Manager
Platform Manager is een beheersysteem dat naadloos integreert met Qlik Sense en QlikView. De belangrijkste functionaliteiten van de tool staan hieronder samengevat.
- Automatisch versiebeheer
Elke wijziging wordt automatisch opgeslagen in Platform Manager. Naast apps kunnen ook gerelateerde bestanden (QVD-bestanden, excelbestanden, scriptbestanden, etc.) meegenomen worden in het versiebeheer. - In –en uitchecken
Een ontwikkelaar kan een app in Platform Manager uitchecken (check-out), waardoor andere ontwikkelaars de app niet meer kunnen wijzigen. Na wijziging kan de ontwikkelaar de app weer inchecken (check-in), waarna de oude versie automatisch wordt bewaard. - Verschillen analyse
De verschillen tussen twee versies van een app of bestand kunnen met het Difference Analysis Report eenvoudig geanalyseerd worden. - Deployment
Nieuwe versies van apps en andere bestanden kunnen gepromoveerd worden van de ontwikkelomgeving naar de acceptatie -of productieomgeving. Het handmatig overzetten van bestanden is hierdoor niet meer nodig.
- Release Management
Apps kunnen gebundeld worden met gerelateerde bestanden in releases. Een release kan in een keer gepromoveerd worden naar een andere omgeving. - Workflow
Er kan een workflow geconfigureerd worden voor het deployment proces, zodat een app eerst moet worden goedgekeurd in Platform Manager, voordat deze kan worden gepromoveerd naar een andere omgeving. Tevens is het mogelijk om functiescheiding met een workflow te implementeren, zodat een ontwikkelaar wel apps kan aanpassen, maar niet kan promoveren. - Data Lineage
Met Platform Manager kun je eenvoudig inzicht krijgen in de relaties tussen apps en gegevensbronnen (QVD’s, Excelbestanden, databases). - Global Search
De metadata van de apps en andere bestanden in het versiebeheersysteem kan doorzocht worden.
Het ontwikkelproces met Platform Manager
Door Platform Manager te gebruiken worden ontwikkelaars min of meer gedwongen om zich aan bepaalde spelregels te houden, waardoor het ontwikkelproces sneller en met minder fouten kan worden uitgevoerd. Met Platform Manager ziet het ontwikkelproces er in hoofdlijnen als volgt uit;
- De ontwikkelaar meldt zich aan in Platform Manager.
- De ontwikkelaar zoekt de app op die hij/zij moet wijzigen.
- De ontwikkelaar checkt de huidige versie van de app uit (check-out).
- De app wordt door Platform Manager in de persoonlijke stream (My Work) van de ontwikkelaar geplaats en de app wordt geopend in de Qlik Sense Hub.
- De ontwikkelaar wijzigt de app in Qlik Sense.
- De ontwikkelaar checkt de gewijzigde versie van de app weer in (check-in).
- De ontwikkelaar kent een versienummer toe aan de gewijzigde app.
- De ontwikkelaar of functioneel beheerder promoveert de app naar de acceptatieomgeving.
- De app wordt getest in Qlik Sense.
- Een functioneel beheerder promoveert de nieuwe versie naar productie na goedkeuring van de wijziging.
Voordelen van Platform Manager
Met Platform Manager zijn veel voordelen te behalen, zowel voor ontwikkelaars als beheerders. Een beheerder heeft vanuit een centrale web interface inzicht in alle omgevingen en kan eenvoudig zien welke versie van een app in welke omgeving staat. Het zoeken naar verschillen tussen versies en het terugzetten van een oude versie is kinderlijk eenvoudig. Een impact analyse neemt veel minder tijd in beslag, doordat afhankelijkheden snel inzichtelijk gemaakt kunnen worden. Het promoveren van apps inclusief de afhankelijkheden is met een enkele klik geregeld. In een volwassen BI-omgeving, bestaande uit meerdere site (ontwikkeling, test, acceptatie, productie) is een tool zoals Platform Manager eigenlijk onmisbaar.
Concluderend kun je stellen dat de kwaliteit van de BI-omgeving zal toenemen door het gebruik van Platform Manager. Er kan veel tijd bespaard worden tijdens de ontwikkeling van apps en het uitvoeren van beheer. Naast deze tijdsbesparingen kan met de tool een bepaalde governance structuur afgedwongen worden door functiescheiding tussen ontwikkelaars en beheerders. Dit zijn belangrijke kenmerken van de tool die essentieel zijn voor een succesvolle implementatie van Qlik Sense en BI in het algemeen.
Geschreven door Steven Samuels Brusse, Senior Qlik Consultant bij E-mergo