Eigen werkplek suite: 105x sneller testen, 3x kortere releases

Innowise transformeerde het releaseproces van Carbonio door handmatige praktijken te vervangen door een nauwgezet geautomatiseerd framework. Dit zorgde voor snellere rollouts, grotere stabiliteit en schaalbaarheid op de lange termijn.

98%

minder productiebugs

10x

snellere implementatie voor clientinstallaties

Suite voor een eigen digitale werkplek op een pc
Industrie Bedrijfssoftware
Werknemers 130
Regio Italië
Klant sinds 2022

Overzicht klanten

Artikel samenvatten met AI

Zextras ontwikkelt bedrijfssoftware gericht op veilige communicatie en gegevensbeheer. Het vlaggenschip, Carbonio, is een self-hosted digitale werkplek suite die e-mail, agenda, bestandsopslag, chat, vergaderen en kantoortools integreert - zowel op desktop als mobiel. Met zijn veilige, volledig private model en modulaire architectuur wordt Carbonio vertrouwd door organisaties van elke omvang die prioriteit geven aan digitale soevereiniteit zonder in te leveren op schaalbaarheid.

Uitdaging

Met een volwassen toolset, meerdere componenten en een groeiend aantal installaties bleef Carbonio groeien, samen met het ecosysteem van haar partners. Om dit momentum vast te houden, probeerde het team de leverings- en installatieprocessen te stroomlijnen - een strategische zet om:

  • De uitrolsnelheid verhogen. Lever updates en fixes sneller om Carbonio-gebruikers sneller toegang te geven tot verbeteringen en een voorsprong op de concurrentie te geven.
  • De ondersteuningslast verminderen. Verbeter de stabiliteit en reactiesnelheid van het systeem om downtime te minimaliseren en de druk op ondersteuningsteams te verlagen.
  • Laat partnergestuurde installaties groeien. Vereenvoudiging van implementatie en configuratie om technische barrières te verlagen en meer partners in staat te stellen Carbonio zelfstandig uit te rollen.

Achter deze zakelijke doelen lag een gedeeltelijk handmatige levenscyclus na de ontwikkeling, een knelpunt voor een schaalbaar, multimodulair platform als Carbonio. Het team moest:

  • Versnel de kwaliteitsborging. Regressietests duurden 35 uur per cyclus, waardoor releasepijplijnen stil kwamen te liggen en ontwikkelaarstijd verloren ging, terwijl niet-gedetecteerde defecten tot kostbare hotfixes leidden.
  • Vereenvoudig en versnel de implementatie. Elke server, module en integratie moest met de hand worden geconfigureerd, wat kostbare tijd kostte en diepgaande technische expertise vereiste.
  • Stroomlijn ontwikkeling. Geërfde architecturale componenten maakten de dagelijkse ontwikkeling veeleisender, waardoor er minder ruimte overbleef voor innovatie.

Daarom hadden ze een partner nodig met ervaring in complexe procestransformatie - een partner die kon samenwerken aan het wegnemen van knelpunten en het mogelijk maken van snellere productreleases.

Handmatige processen automatiseren voor snellere releases

Oplossing die we hebben geleverd

Als onderdeel van het internationale team van de klant sloot Innowise zich snel aan bij het project van Zextras en introduceerden we een automatiseringsaanpak. We identificeerden de belangrijkste blokkades en elimineerden de bottlenecks met gestructureerde frameworks die de oorzaken oplosten in plaats van de symptomen.

QA als continue service

Innowise QA team ontdekte dat handmatige QA werd belemmerd door regressie zware integraties, onvoorspelbare inhoud problemen, en inconsistente resultaten in verschillende omgevingen. Om dit te doorbreken, hebben we het testen volledig geautomatiseerd.

Van daaruit kreeg Zextras een continue, veerkrachtige QA-pijplijn die UI-componenten in elke release valideert en de meeste bugs opvangt voordat ze de productie bereiken. Nu de architectuur in kaart is gebracht en prioriteit is gegeven aan bedrijfskritische flows, zorgt onze benadering van testautomatisering voor voorspelbare en stabiele releases:

  • Volledige casusdekking - Alle essentiële gebruikersstromen worden nu automatisch gevalideerd, van basisfuncties zoals het verzenden en ontvangen van e-mails tot complexe bewerkingen in bestandsopslag en videoconferentiemodules.
  • Ondersteuning voor meerdere browsers - tests worden uitgevoerd in Chrome, Safari, Firefox en Edge met geoptimaliseerd gebruik van bronnen. Door gebruik te maken van de gedeelde Chromium-engine in Chrome en Edge, hebben we dubbel werk geminimaliseerd door de meeste tests in Chromium uit te voeren.
  • Proactieve probleemdetectie - problemen met browserstuurprogramma's worden eerder geïdentificeerd dan officiële browserupdates, waardoor problemen die in latere versies zouden kunnen optreden, worden voorkomen. Deze preventieve aanpak bespaart bronnen en versnelt het testen.
  • Ondersteuning voor dynamische omgevingen - Tests kunnen op elke omgeving worden uitgevoerd door simpelweg de server URL op te geven, waardoor het eenvoudig is om modules te valideren in verschillende configuraties.
  • Betrouwbaarheid met randgevallen. - door tests uit te voeren met gevarieerde datasets, zorgden we ervoor dat ongebruikelijke invoer, uitzonderingen of omstandigheden het systeem niet konden breken.
  • Toegankelijke rapportage. - Voor elk bugscenario bieden testrapporten schermafbeeldingen, video's, logbestanden van verzoeken en outputs, zodat PM's, technisch en niet-technisch personeel problemen onmiddellijk kunnen herkennen en prioriteren.

Het belangrijkste is dat QA nu ingebed in de ontwikkeling zelf. Met de automatiseringssuite die is geïntegreerd in Jenkins CI/CD-pijplijnen, wordt bij elke build en implementatie een volledige UI-controle uitgevoerd, waardoor problemen in een vroeg stadium worden opgespoord en de releasesnelheid wordt beschermd.

Voorlopig heeft ons QA-automatiseringsteam met twee engineers het volgende geleverd 900+ geautomatiseerde tests voor kritische scenario's voor dagelijks gebruik, van e-mailtransacties en agendaplanning tot bestandsopslag en chat. Om de betrouwbaarheid te garanderen, hebben we een KPI van 90%+ teststabiliteit over alle runs.

En het blijft evolueren: we verfijnen het framework voortdurend, verwijderen oudere aangepaste oplossingen naarmate het product evolueert en passen locators aan tijdens de React 17→18 migratie. Ook hebben we de dekking uitgebreid met CLI-automatisering, tests toegevoegd terwijl het product evolueert en de versterking verbeterd voor onderhoudbaarheid op de lange termijn.

Uitmuntende implementatie en werking

De DevOps-eenheid van Innowise hielp de klant bij het optimaliseren van een implementatieproces door meer automatisering op schaal te introduceren. Zowel updates als clientinstallaties die vroeger veel tijd en middelen in beslag namen, verlopen nu sneller, veiliger en met een consistente betrouwbaarheid.

Dit is wat het verschil maakte:

  • Infrastructuur als code (IaC) - Installaties en updates zijn nu volledig geautomatiseerd met Ansible playbooks. Proxy's en database-instellingen zijn gecodeerd, waardoor implementaties herhaalbaar en met weinig risico zijn en direct schaalbaar tussen klanten en datacenters. Nieuwe omgevingen kunnen veel sneller worden opgezet.
  • Continue bewaking (in uitvoering) - Voor interne infrastructuren volgen Prometheus-exporteurs en aangepaste Grafana-dashboards prestaties, belasting, antivirusactiviteit, servicegezondheid en meer. Gecentraliseerde logbestanden signaleren afwijkingen, waardoor problemen worden voorkomen voordat gebruikers er last van hebben.
  • Hoge beschikbaarheid (HA) component - PostgreSQL kan worden geconfigureerd met redundantie en geautomatiseerde failover om de kerngegevens van het platform veilig te stellen. Deze opstelling zorgt voor databaseveiligheid, betrouwbare transacties en veerkracht voor diensten die ervan afhankelijk zijn.
  • Migratietooling - In samenwerking met de andere afdelingen van de klant werden speciale hulpprogramma's ontwikkeld om de migratie van e-mail, agenda's, contactpersonen en accounts van platforms van derden te ondersteunen. Dit zorgde voor minder downtime en vereenvoudigde onboarding, terwijl de gegevensintegriteit, privacy en continuïteit behouden bleven.
  • Automatisering van releasebeheer - Met CI/CD worden Ansible playbooks verpakt in collecties en automatisch gepubliceerd naar Ansible Galaxy of een eigen hub. Dit geeft klanten een installatie met één klik, een snellere ingebruikname en het vertrouwen dat elke versie is getest en klaar voor gebruik.

We ondersteunen installaties op maat en passen Carbonio aan verschillende klantomgevingen aan. Dit betekent dat we de architectuur aanpassen aan randgevallen variërend van configuraties met één server voor licht gebruik tot e-mailinfrastructuren met grote volumes en implementaties die uitgebreide parallelle conferenties ondersteunen. Door deze niet-standaard scenario's aan te pakken, helpen we Zextras bij het leveren van gepersonaliseerde, betrouwbare en schaalbare ervaringen voor elke klant.

Voortdurende ondersteuning: naadloze functiegroei en onboarding

Doordat Innowise deel uitmaakte van het ontwikkelteam van de klant, droeg het bij aan Java-expertise die de bredere inspanningen ondersteunde om de kern van Carbonio veerkrachtiger en klaar voor de toekomst te maken. We zijn begonnen met het opheffen van langdurige blokkades door middel van diepgaande refactoring, schone code en het herontwerpen van functies op moderne taalversies - verbeteringen die de onderhoudbaarheid, prestaties en kostenefficiëntie op de lange termijn hebben verbeterd.

In voortdurende ontwikkeling heeft deze gezamenlijke inspanning Carbonio's positie als een veilig en betrouwbaar werkplekplatform versterkt. Opmerkelijke ontwikkelingen zijn onder andere:

  • Veilig e-mailen op basis van certificaten met S/MIME-encryptie;
  • Gecodeerd verkeer met TLS/SSL-certificaten en geautomatiseerde vernieuwingstooling;
  • Sterkere beheercontroles, inclusief wachtwoordherstel, account hernoemen en helpdeskrechtenbeheer;
  • Juridische hold-functionaliteit ter ondersteuning van nalevingseisen in gereguleerde industrieën;
  • Snellere synchronisatie van e-mails, agenda's en contactpersonen onder extreme belastingen.

We blijven een actieve rol spelen in de evolutie van Carbonio, door verbeteringen en bugfixes toe te voegen die helpen om het product stabiel en veilig te houden en te laten voldoen aan de veranderende eisen van de markt.

Citaat pictogram

De handmatige belasting van zo'n complex, multimodulair product als Carbonio drukte op het team en zorgde ervoor dat releasedata verder naar achteren werden geschoven. Ons doel was om van het testen en installeren van producten een probleemloze routine te maken. Dankzij de automatisering van QA en deployment heeft Zextras nu vertrouwen in de kwaliteit van het product en kan het de door partners geleide installaties actief laten groeien.

Andrew Artyukhovsky
Andrew Artyukhovsky Hoofd Kwaliteitsborging

Gebruikte technologieën

AQA

Playwright, Fiddler, CI/CD via Jenkins, GitHub, Allure

DevOps en systeemengineering

Jenkins, GitHub Actions, Ansible, vSphere, Prometheus, Grafana, PostgreSQL, HAProxy, PfSense, ClamAV, kLDAP, Apache Kafka, Ubuntu, Loki, Vector, Zookeeper, Patroni, Docker, Python, Azure

Backend

Java 11, Java 17, Java 21, Jetty, Jersey, Guice, LDAP, SOAP, Maven, Linux, Bash, Perl, GitHub, AWS Lambda

Team

Pictogram 2
AQA Ingenieurs
Pictogram 1
Software Engineer
Pictogram 1
DevOps Engineer
Pictogram 1
Oplossing Architect
Innowise team

Resultaten

Duur van het project
Juli 2022 - heden

Een op automatisering gerichte aanpak heeft de levenscyclus na de ontwikkeling van Zextras een nieuwe vorm gegeven:

  • Testcycli 105x sneller - teruggebracht van 35 uur naar 20 minuten.
  • 98% minder productiebugs - problemen bij de klantenservice aanzienlijk gedaald.
  • ≥90% geautomatiseerde test slagingspercentage - betrouwbaarheid vergrendeld in alle runs.
  • 240+ kritieke defecten onderschept vóór productie - problemen die uitval hadden kunnen veroorzaken, hebben de gebruikers nooit bereikt.
  • Gestroomlijnde samenwerking - Dankzij duidelijke, visuele rapporten kunnen PM's, support- en ontwikkelteams snellere, gegevensgestuurde beslissingen nemen.
  • Middelen geoptimaliseerd - Automatisering zorgde voor minder overhead bij handmatig testen, waardoor tijd en budget werden ingezet voor een snellere oplevering van functies.
  • Implementatie 10x versneld - Installaties en updates van clients werden sneller en consistent herhaalbaar.
  • Releasecycli 3x korter - nieuwe functies sneller op de markt.
  • Partner rollouts ingeschakeld - De geautomatiseerde installatie opende de deur naar implementaties door partners en creëerde zo nieuwe inkomstenstromen.

Met snellere releases van functies en een partnervriendelijk distributiemodel verstevigt Carbonio zijn positie als concurrerend, zelfgehost alternatief voor wereldwijde samenwerkingsproviders in de cloud. Het Innowise team blijft het product ondersteunen door het geautomatiseerde testbereik uit te breiden, bugs te repareren en nieuwe functies te introduceren om het stabieler, veiliger en gebruiksvriendelijker te maken.

Inhoudsopgave

Handmatige processen automatiseren voor snellere releases

    Contacteer ons

    Boek een gesprek of vul het onderstaande formulier in en we nemen contact met je op zodra we je aanvraag hebben verwerkt.

    Stuur ons een spraakbericht
    Documenten bijvoegen
    Bestand uploaden

    Je kunt 1 bestand van maximaal 2 MB bijvoegen. Geldige bestandsformaten: pdf, jpg, jpeg, png.

    Door op Verzenden te klikken, stemt u ermee in dat Innowise uw persoonsgegevens verwerkt volgens onze Privacybeleid om u van relevante informatie te voorzien. Door je telefoonnummer op te geven, ga je ermee akkoord dat we contact met je opnemen via telefoongesprekken, sms en messaging-apps. Bellen, berichten en datatarieven kunnen van toepassing zijn.

    U kunt ons ook uw verzoek sturen
    naar contact@innowise.com
    Wat gebeurt er nu?
    1

    Zodra we je aanvraag hebben ontvangen en verwerkt, nemen we contact met je op om de details van je projectbehoeften en tekenen we een NDA om vertrouwelijkheid te garanderen.

    2

    Na het bestuderen van uw wensen, behoeften en verwachtingen zal ons team een projectvoorstel opstellen met de omvang van het werk, de teamgrootte, de tijd en de geschatte kosten voorstel met de omvang van het werk, de grootte van het team, de tijd en de geschatte kosten.

    3

    We zullen een afspraak met je maken om het aanbod te bespreken en de details vast te leggen.

    4

    Tot slot tekenen we een contract en gaan we meteen aan de slag met je project.

    pijl