Pakiet prywatnego miejsca pracy: 105x szybsze testowanie, 3x krótsze wydania

Innowise przekształcił proces wydawania Carbonio, zastępując ręczne praktyki skrupulatną, zautomatyzowaną strukturą. Umożliwiło to szybsze wdrażanie, większą stabilność i długoterminową skalowalność.

98%

mniej błędów produkcyjnych

10x

szybsze wdrażanie instalacji klienckich

Pakiet prywatnego cyfrowego miejsca pracy wdrożony na komputerze osobistym
Pracownicy 130
Region Włochy
Klient od 2022

Przegląd klientów

Podsumuj artykuł za pomocą AI

Zextras tworzy oprogramowanie biznesowe skoncentrowane na bezpiecznej komunikacji i zarządzaniu danymi. Jej flagowy produkt, Carbonio, to samoobsługowy pakiet cyfrowego miejsca pracy, który integruje pocztę e-mail, kalendarz, przechowywanie plików, czat, konferencje i narzędzia biurowe - działające na komputerach stacjonarnych i urządzeniach mobilnych. Dzięki bezpiecznemu, w pełni prywatnemu modelowi i modułowej architekturze, Carbonio cieszy się zaufaniem organizacji każdej wielkości, dla których priorytetem jest cyfrowa suwerenność bez rezygnacji ze skalowalności.

Wyzwanie

Z dojrzałym zestawem narzędzi, wieloma komponentami i rosnącą liczbą instalacji, Carbonio nadal się rozwijało, wraz ze swoim ekosystemem partnerów. Aby utrzymać tę dynamikę, zespół starał się usprawnić procesy dostawy i instalacji - strategiczne posunięcie:

  • Zwiększenie szybkości wdrażania. Szybciej dostarczaj aktualizacje i poprawki, aby pomóc użytkownikom Carbonio szybciej uzyskać dostęp do ulepszeń i wzmocnić przewagę konkurencyjną.
  • Zmniejszenie obciążenia związanego z obsługą. Poprawa stabilności systemu i szybkości reakcji w celu zminimalizowania przestojów i zmniejszenia presji na zespoły wsparcia.
  • Rozwój instalacji prowadzonych przez partnerów. Uprość wdrażanie i konfigurację, aby obniżyć bariery techniczne i umożliwić większej liczbie partnerów niezależne wdrażanie Carbonio.

Za tymi celami biznesowymi krył się częściowo ręczny cykl życia po opracowaniu, wąskie gardło dla skalowalnej, wielomodułowej platformy, takiej jak Carbonio. Zespół musiał:

  • Przyspieszenie zapewniania jakości. Testowanie regresji zajmowało 35 godzin na cykl, przeciągając procesy wydawnicze i poświęcając czas programistów, podczas gdy niewykryte wady prowadziły do kosztownych poprawek.
  • Uproszczenie i przyspieszenie wdrażania. Każdy serwer, moduł i integracja musiały być konfigurowane ręcznie, co pochłaniało cenny czas i wymagało głębokiej wiedzy technicznej.
  • Usprawnienie rozwoju. Odziedziczone komponenty architektoniczne sprawiły, że codzienny rozwój stał się bardziej wymagający, pozostawiając mniej miejsca na innowacje.

Dlatego potrzebowali partnera doświadczonego w transformacji złożonych procesów - takiego, który mógłby współpracować przy usuwaniu wąskich gardeł i umożliwianiu szybszych wydań produktów.

Automatyzacja procesów ręcznych w celu przyspieszenia wydań

Dostarczone przez nas rozwiązanie

Jako część międzynarodowego zespołu klienta, Innowise szybko dołączył do projektu Zextras, wprowadzając podejście oparte na automatyzacji. Zidentyfikowaliśmy główne czynniki blokujące i wyeliminowaliśmy główne wąskie gardła za pomocą ustrukturyzowanych ram, które rozwiązywały przyczyny, a nie łatały objawy.

Kontrola jakości jako usługa ciągła

Zespół Innowise QA odkrył, że ręczna kontrola jakości była sparaliżowana przez wymagające regresji integracje, nieprzewidywalne problemy z zawartością i niespójne wyniki w różnych środowiskach. Aby się przebić, przeprojektowaliśmy testowanie pod kątem pełnej automatyzacji.

Od tego momentu Zextras zyskał ciągły, odporny potok kontroli jakości która weryfikuje komponenty interfejsu użytkownika w każdym wydaniu i wyłapuje większość błędów, zanim trafią one do produkcji. Po zmapowaniu architektury i ustaleniu priorytetów przepływów o krytycznym znaczeniu dla biznesu, nasze podejście do automatyzacji testów zapewnia teraz przewidywalne i stabilne wydania:

  • Pełne pokrycie przypadków - Wszystkie istotne przepływy użytkowników są teraz weryfikowane automatycznie, od podstawowych funkcji, takich jak wysyłanie i odbieranie wiadomości e-mail, po złożone operacje w modułach przechowywania plików i wideokonferencji.
  • Obsługa wielu przeglądarek - testy działają w przeglądarkach Chrome, Safari, Firefox i Edge przy zoptymalizowanym wykorzystaniu zasobów. Wykorzystując współdzielony silnik Chromium w Chrome i Edge, zminimalizowaliśmy powielanie, uruchamiając większość testów w Chromium.
  • Proaktywne wykrywanie problemów - Problemy ze sterownikami przeglądarki są identyfikowane przed oficjalnymi aktualizacjami przeglądarki, zapobiegając problemom, które mogą pojawić się w późniejszych wersjach. Takie podejście oszczędza zasoby i przyspiesza testowanie.
  • Dynamiczna obsługa środowiska - testy mogą być wykonywane w dowolnym środowisku po prostu poprzez określenie adresu URL serwera, co ułatwia walidację modułów w różnych konfiguracjach.
  • Niezawodność w skrajnych przypadkach. - Przeprowadzając testy z różnymi zestawami danych, upewniliśmy się, że nietypowe dane wejściowe, wyjątki lub warunki nie mogą w inny sposób zepsuć systemu.
  • Dostępne raportowanie. - Dla każdego scenariusza błędu raporty z testów zawierają zrzuty ekranu, filmy, dzienniki żądań i wyniki, umożliwiając kierownikom projektów, personelowi technicznemu i nietechnicznemu natychmiastowe wykrycie i nadanie priorytetu problemom.

Co najważniejsze, QA jest teraz osadzone w samym rozwoju. Dzięki pakietowi automatyzacji zintegrowanemu z potokami Jenkins CI/CD, każda kompilacja i wdrożenie uruchamia pełną kontrolę interfejsu użytkownika, wcześnie wychwytując błędy i chroniąc szybkość wydania.

Na razie nasz dwuosobowy zespół ds. automatyzacji QA dostarczył Ponad 900 testów automatycznych obejmujące krytyczne scenariusze codziennego użytku - od transakcji e-mail i planowania kalendarza po przechowywanie plików i czat. Aby zapewnić niezawodność, ustaliliśmy i konsekwentnie utrzymywaliśmy wskaźnik KPI na poziomie 90%+ testować stabilność we wszystkich przebiegach.

I wciąż ewoluuje: nieustannie udoskonalamy framework, usuwając starsze niestandardowe rozwiązania w miarę rozwoju produktu i dostosowując lokalizatory podczas migracji React 17→18. Ponadto rozszerzyliśmy zasięg o automatyzację CLI, dodaliśmy testy w miarę ewolucji produktu i poprawiliśmy wzmocnienie w celu zapewnienia długoterminowej łatwości konserwacji.

Doskonałość wdrożenia i operacji

Dział DevOps firmy Innowise pomógł klientowi zoptymalizować proces wdrażania, wprowadzając większą automatyzację na dużą skalę. Zarówno aktualizacje, jak i instalacje klientów, które kiedyś pochłaniały czas i zasoby, działają teraz szybciej, bezpieczniej i z niezmienną niezawodnością.

Oto, co zrobiło różnicę:

  • Infrastruktura jako kod (IaC) - Instalacje i aktualizacje są teraz w pełni zautomatyzowane za pomocą playbooków Ansible. Serwery proxy i ustawienia baz danych są skodyfikowane, dzięki czemu wdrożenia są powtarzalne, obarczone niskim ryzykiem i natychmiast skalowalne między klientami i centrami danych. Nowe środowiska mogą być uruchamiane znacznie szybciej.
  • Ciągłe monitorowanie (w toku) - W przypadku infrastruktury wewnętrznej, eksportery Prometheus i niestandardowe pulpity nawigacyjne Grafana śledzą wydajność, obciążenie, aktywność antywirusową, kondycję usług i nie tylko. Scentralizowane dzienniki sygnalizują anomalie, pomagając zapobiegać problemom, zanim zakłócą one pracę użytkowników.
  • Komponent wysokiej dostępności (HA) - PostgreSQL można skonfigurować z redundancją i automatycznym przełączaniem awaryjnym w celu ochrony podstawowych danych platformy. Taka konfiguracja zapewnia bezpieczeństwo bazy danych, niezawodne transakcje i odporność usług, które od niej zależą.
  • Narzędzia do migracji - We współpracy z innymi jednostkami klienta opracowano dedykowane narzędzia do obsługi migracji poczty, kalendarzy, kontaktów i kont z platform innych firm. Pomogło to skrócić czas przestojów i uprościć wdrażanie, przy jednoczesnym zachowaniu integralności danych, prywatności i ciągłości.
  • Automatyzacja zarządzania wydaniami - Dzięki CI/CD playbooki Ansible są pakowane w kolekcje i automatycznie publikowane w Ansible Galaxy lub prywatnym hubie. Daje to klientom instalację jednym kliknięciem, szybsze wdrażanie i pewność, że każda wersja jest przetestowana i gotowa do użycia.

Wspieramy niestandardowe instalacje, dostosowując Carbonio do różnych środowisk klienckich. Oznacza to przeprojektowanie jego architektury w skrajnych przypadkach, począwszy od konfiguracji z jednym serwerem do lekkiego użytku, przez infrastrukturę poczty e-mail o dużej objętości, po wdrożenia obsługujące rozległe równoległe konferencje. Zajmując się tymi niestandardowymi scenariuszami, pomagamy Zextras dostarczać spersonalizowane, niezawodne i skalowalne doświadczenia dla każdego klienta.

Bieżące wsparcie: płynny rozwój funkcji i wdrażanie

Będąc częścią zespołu programistów klienta, Innowise przyczynił się do Znajomość języka Java które wspierały szersze wysiłki mające na celu uczynienie rdzenia Carbonio bardziej odpornym i gotowym na przyszłość. Zaczęliśmy od usunięcia długotrwałych blokad poprzez głęboką refaktoryzację, praktyki czystego kodu i przeprojektowanie funkcji w nowoczesnych wersjach językowych - ulepszenia, które pomogły zwiększyć łatwość konserwacji, wydajność i długoterminową efektywność kosztową.

W trakcie ciągłego rozwoju, ten wspólny wysiłek wzmocnił pozycję Carbonio jako bezpiecznej i niezawodnej platformy w miejscu pracy. Godne uwagi postępy obejmują:

  • Bezpieczne, oparte na certyfikatach wysyłanie wiadomości e-mail z szyfrowaniem S/MIME;
  • Szyfrowany ruch za pomocą certyfikatów TLS/SSL i narzędzi do automatycznego odnawiania;
  • Silniejsza kontrola administratora, w tym resetowanie hasła, zmiana nazwy konta i zarządzanie uprawnieniami helpdesku;
  • Funkcjonalność Legal Hold wspierająca wymogi zgodności w branżach podlegających regulacjom prawnym;
  • Szybsza synchronizacja wiadomości e-mail, kalendarzy i kontaktów przy ekstremalnych obciążeniach.

Nadal odgrywamy aktywną rolę w ewolucji Carbonio, wnosząc ulepszenia i poprawki błędów, które pomagają utrzymać produkt stabilny, bezpieczny i dostosowany do zmieniających się wymagań rynku.

Ikona cytatu

Obciążenie manualne tak złożonego, wielomodułowego produktu, jakim jest Carbonio, obciążało zespół i przesuwało daty premiery. Naszym celem było uczynienie testowania i instalacji produktu bezproblemową rutyną. Dzięki automatyzacji kontroli jakości i wdrażania Zextras ma teraz pewność co do jakości produktu i może aktywnie rozwijać instalacje prowadzone przez partnerów.

Andrew Artyukhovsky
Andrew Artyukhovsky Kierownik ds. zapewnienia jakości

Zastosowane technologie

AQA

Playwright, Fiddler, CI/CD za pośrednictwem Jenkins, GitHub, Allure

DevOps i inżynieria systemów

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

Back-end

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

Zespół

Ikona 2
Inżynierowie AQA
Ikona 1
Oprogramowanie Engineer
Ikona 1
Inżynier DevOps
Ikona 1
Architekt rozwiązań
zespół Innowise

Wyniki

Czas trwania projektu
Lipiec 2022 r. - obecnie

Podejście oparte na automatyzacji przekształciło cykl życia Zextras po opracowaniu, zapewniając:

  • Cykle testowe 105x szybsze - skrócony z 35 godzin do 20 minut.
  • 98% mniej błędów produkcyjnych - znacznie spadła liczba problemów związanych z obsługą klienta.
  • ≥90% wskaźnik zdawalności testów automatycznych - niezawodność zablokowana we wszystkich przebiegach.
  • Ponad 240 krytycznych usterek przechwyconych przedprodukcyjnie - Problemy, które mogły spowodować awarie, nigdy nie dotarły do użytkowników.
  • Usprawniona współpraca - Przejrzyste, wizualne raporty pozwalają kierownikom projektów, zespołom wsparcia i rozwoju podejmować szybsze decyzje oparte na danych.
  • Zoptymalizowane zasoby - Automatyzacja obniżyła koszty testowania ręcznego, przekierowując czas i budżet na szybsze dostarczanie funkcji.
  • Wdrożenie przyspieszone 10x - Instalacje i aktualizacje klientów stały się szybsze i konsekwentnie powtarzalne.
  • Cykle zwalniania skrócone o 3x - nowe funkcje szybciej trafiały na rynek.
  • Wdrożenia partnerskie włączone - Zautomatyzowana instalacja otworzyła drzwi do wdrożeń prowadzonych przez partnerów, tworząc nowe źródła przychodów.

Dzięki szybszym wydaniom funkcji i przyjaznemu dla partnerów modelowi dystrybucji, Carbonio umacnia swoją pozycję jako konkurencyjna, samodzielnie hostowana alternatywa dla globalnych dostawców współpracy w chmurze. Zespół Innowise nadal wspiera produkt, rozszerzając zakres automatycznych testów, naprawiając błędy i wprowadzając nowe funkcje, aby uczynić go bardziej stabilnym, bezpiecznym i przyjaznym dla użytkownika.

Spis treści

Automatyzacja procesów ręcznych w celu przyspieszenia wydań

    Skontaktuj się z nami

    Umów się na rozmowę lub wypełnij poniższy formularz, a my odezwiemy się do Ciebie po przetworzeniu Twojego zgłoszenia

    Wyślij nam wiadomość głosową
    Załącz dokumenty
    Prześlij plik

    Można załączyć 1 plik o rozmiarze do 2 MB. Prawidłowe formaty plików: pdf, jpg, jpeg, png.

    Klikając Wyślij, wyrażasz zgodę na przetwarzanie Twoich danych osobowych przez Innowise zgodnie z nasz Polityką Prywatności w celu przekazania Ci odpowiednich informacji. Podając numer telefonu, zgadzasz się na kontakt za pośrednictwem połączeń głosowych, SMS-ów lub komunikatorów. Mogą obowiązywać opłaty za połączenia, wiadomości i transmisję danych.

    Możesz także wysłać swoje zapytanie
    na adres contact@innowise.com
    Co dalej?
    1

    Po otrzymaniu i przetworzeniu zgłoszenia skontaktujemy się z Tobą, aby szczegółowo opisać projekt i podpisać umowę NDA w celu zapewnienia poufności.

    2

    Po zapoznaniu się z Twoimi potrzebami i oczekiwaniami, nasz zespół opracuje projekt wraz z zakresem prac, wielkością zespołu, czasem i szacunkowymi kosztami.

    3

    Zorganizujemy spotkanie w celu omówienia oferty i ustalenia szczegółów.

    4

    Na koniec podpiszemy umowę, błyskawicznie rozpoczynając pracę nad projektem.

    strzałka