Utrzymanie aplikacji, stron i sklepów internetowych
Działającego systemu zwykle nie trzeba wymieniać. Potrzebuje raczej kogoś, kto rozumie, jak działa, dba o aktualizacje i usuwa usterki, zanim zrobi się z nich pilny problem.
Utrzymanie czy przepisanie systemu od nowa?
Wiele osób zakłada, że oprogramowanie ma datę ważności i że system sprzed pięciu lat trzeba wymienić z zasady. Tymczasem sporo starszych systemów nadal działa poprawnie i szybko. Zwykle nie brakuje im nowoczesności, tylko kogoś, kto się nimi opiekuje.
Wymiany naprawdę wymagają systemy, które hamują firmę: nie da się ich zmienić bez psucia, nie ma ich gdzie rozsądnie hostować albo nikt nie umie przy nich pracować. W pozostałych przypadkach to kwestia utrzymania, a utrzymanie jest wyraźnie tańsze niż przepisanie. Przepisanie ma też łatwe do przeoczenia ryzyko: nowej wersji zabraknie dziesiątek drobnych zachowań, które stara wersja zebrała przez lata, bo kiedyś potrzebował ich prawdziwy klient.
Do tego koszt utrzymania jest przewidywalny, a koszt przepisania rzadko. Przy utrzymaniu wiesz mniej więcej, ile wydajesz co miesiąc, i możesz w każdej chwili przerwać. Przepisanie to zobowiązanie oparte na szacunkach, a przez cały czas jego trwania stary system i tak wymaga opieki, bo klienci nie przestaną z niego korzystać na czas przeprowadzki.
Przejęcie projektu po innej firmie
Praca z cudzym kodem wymaga osobnych umiejętności. Dokumentacja, jeśli jest, opisuje zamiary, a nie obecny stan. Osoba, która wiedziała, skąd wzięło się dane obejście, zwykle dawno odeszła.
Dlatego najpierw sprawiamy, że system staje się dla nas zrozumiały:
Uruchamiamy go poza produkcją. Sprawdzamy, czy potrafimy odtworzyć jego obecne działanie.
Śledzimy integracje. Patrzymy, jakie dane przez nie przechodzą.
Sprawdzamy wdrożenie. Ustalamy, co naprawdę dzieje się przy wydaniu nowej wersji.
Dopiero potem wyrabiamy sobie opinię. Efektem tego etapu jest spisana mapa systemu, która przyda Ci się bez względu na to, co zrobimy dalej, bo wiedza z jednej głowy staje się własnością firmy.
Czas tego etapu zależy bardziej od tego, jak nietypowy jest kod, niż od jego rozmiaru. Zwykłą aplikację na popularnym frameworku da się zrozumieć w kilka dni. System z autorskim frameworkiem, nieudokumentowanymi migracjami danych i regułami biznesowymi ukrytymi w wyzwalaczach bazy wymaga wyraźnie więcej czasu. Wolimy to powiedzieć na początku, niż odkryć w połowie prac rozliczanych ryczałtem.
Pierwsze kroki: backupy, dostępy, monitoring
Kusi, żeby zacząć od problemu, który wszystkich irytuje od miesięcy. Zwykle tego nie robimy, bo najpierw trzeba zmniejszyć ryzyko złego tygodnia.
Sprawdzamy więc kilka mało efektownych rzeczy:
Backupy. Istnieją, wykonują się według harmonogramu i przynajmniej raz zostały odtworzone, więc wiadomo, że działają.
Środowisko testowe. Jest gdzie sprawdzić zmianę przed wdrożeniem na produkcję.
Cofanie wdrożeń. Nieudane wydanie da się wycofać, więc jest kłopotem, a nie awarią.
Hasła i dostępy. Hasła nie leżą w repozytorium, a dostęp mają tylko osoby, które nadal pracują przy projekcie.
Powiadomienia. Dowiadujemy się o awarii wcześniej niż klient.
Gdy to jest gotowe, wszystko inne staje się bezpieczniejsze i szybsze, także naprawa tego irytującego problemu.
Na czym polega stała opieka nad aplikacją
Po stabilizacji praca nabiera stałego rytmu. Naprawiamy zgłoszone błędy. Aktualizujemy zależności tak, żeby miały wsparcie, za każdym razem biorąc pod uwagę ryzyko zepsucia czegoś, co działa. Poprawiamy integracje, gdy dostawca zmienia API. Drobne zmiany wprowadzamy wtedy, gdy firma ich potrzebuje.
Większość tej pracy jest niepozorna. Formularz, który przestał wysyłać wiadomości, bo dostawca poczty zaostrzył zasady. Raport, do którego trzeba dodać kolumnę. Strona, która rozjeżdża się na ekranach, których nie było, gdy powstawała. Żadna z tych rzeczy osobno nie jest ciekawa, ale razem decydują o tym, czy ludzie ufają systemowi, czy po cichu go omijają.
Kiedy utrzymanie przestaje się opłacać
Przy okazji stałej opieki regularnie zadajemy sobie pytanie: czy utrzymanie jest nadal tańsze niż wymiana? Odpowiedź zmienia się z czasem, zwykle z konkretnego powodu:
Koniec wsparcia. Wersja frameworka traci wsparcie, a droga do aktualizacji jest zablokowana.
Zmiany trwają coraz dłużej. Coś, co powinno zająć dzień, zajmuje tydzień przez narosłe powiązania.
Brak hostingu. Trudno znaleźć hosting dla wymaganej wersji środowiska.
Gdy uznamy, że ten moment nadszedł, powiemy to i wskażemy, którą część wymienić najpierw. Rzadko trzeba przepisywać cały system naraz. Zwykle wystarczy wymienić fragment, który zrobił się drogi, a reszta działa dalej.
Co dostajesz
Przejęcie projektu po innym wykonawcy
Czytamy kod, uruchamiamy go u siebie i sprawdzamy, jak system działa naprawdę, a nie jak opisuje go dokumentacja. Przy przekazaniach tego kroku zwykle brakuje.
Bezpieczne warunki do zmian
Zanim cokolwiek zmienimy, upewniamy się, że jest działający backup, środowisko poza produkcją i wdrożenie, które można cofnąć.
Poprawki i bieżące zmiany
Zgłoszone błędy, zepsute integracje, zmiany treści i konfiguracji oraz drobne modyfikacje funkcji, żeby system nadążał za tym, co dzieje się w firmie.
Aktualne zależności
Frameworki, biblioteki i środowiska uruchomieniowe aktualizujemy tak, żeby miały wsparcie i były bezpieczne, za każdym razem biorąc pod uwagę ryzyko zepsucia czegoś, co działa.
Dokumentacja systemu
Poznając system, opisujemy go: architekturę, integracje, sposób wdrażania i znane pułapki, na które trafia każda nowa osoba.
Szczera odpowiedź: utrzymywać czy wymienić
W którymś momencie utrzymanie przestaje się opłacać. Powiemy, kiedy naszym zdaniem to nastąpiło, i wskażemy, od której części zacząć wymianę.
Jak pracujemy
- 01
Uruchamiamy system i poznajemy kod
Dostajemy kod, dostępy i dane hostingu, stawiamy projekt poza produkcją i sprawdzamy, czy odtwarzamy jego obecne działanie, zanim cokolwiek zaproponujemy.
- 02
Szukamy prawdziwych zagrożeń
Niewspierane wersje, brak backupów, hasła w kodzie, integracje, które przestaną działać po zmianie u dostawcy, pojedyncze punkty awarii. Czyli to, co naprawdę może zaboleć.
- 03
Stabilizujemy, zanim zaczniemy ulepszać
Najpierw robimy to, co zmniejsza ryzyko awarii: backupy, dostępy, monitoring i najbardziej zagrożone zależności. Lista nowych funkcji czeka na swoją kolej.
- 04
Przejmujemy stałą opiekę
Aktualizacje, poprawki i drobne zmiany wchodzą w regularny rytm, z jedną osobą kontaktową. Nie musisz za każdym razem szukać kogoś, kto akurat ma czas.
- 05
Co jakiś czas wracamy do pytania o wymianę
Regularnie sprawdzamy, czy utrzymanie nadal ma sens, czy któraś część zrobiła się na tyle droga, że lepiej ją przepisać.
Narzędzia i technologie
Tam, gdzie istnieje dobre narzędzie open source, wybieramy je zamiast zamkniętego. Bez uzależnienia od jednego dostawcy i z kosztami, które da się przewidzieć.
- WordPress
- WooCommerce
- PHP
- Laravel
- Symfony
- Node.js
- React
- MySQL
- PostgreSQL
- Docker
- Git
- Sentry
Najczęściej zadawane pytania
Powiązane realizacje
Pozostałe usługi w tej kategorii
Porządkowanie infrastruktury
Infrastruktura, która rosła decyzja po decyzji, źle znosi zmiany. Sprawdzamy, co naprawdę masz, wyłączamy to, czego nikt nie pilnuje, a resztę opisujemy.
Zarządzanie usługami i konfiguracja środowisk
Większość awarii zaczyna się od konfiguracji, która po cichu się rozjechała. Dbamy o to, żeby Twoje środowiska były spójne, aktualne i opisane na tyle dobrze, by zmiana przestała być loterią.
Monitoring i szybka reakcja na problemy
Monitoring ma sens tylko wtedy, gdy ktoś na niego reaguje. Wyposażamy utrzymywane przez nas systemy w monitoring, pilnujemy, by alerty pozostały wiarygodne, i obsługujemy to, co wychwycą.
Przeczytaj opinie firm, które nam zaufały
Dostarczone znacznie wcześniej niż termin.
Indywidualne podejście ZanReal jest imponujące.
Wiedza i intuicja biznesowa czynią ich wartościowym partnerem.
Szybkie rozwiązania, które obniżyły koszty o 99%.
+20% dostarczalności dla naszych kampanii e-mail.

Najnowsze
Poradniki techniczne, bezpieczeństwo i nasze doświadczenia z budowania rozwiązań AI.
Ciekawi Cię, co dalej?
Zobacz wszystkie postyMasz system, którego nikt w firmie już nie ogarnia?
Napisz do nasNapisz, do czego służy i kto go zbudował. Zaproponujemy plan przejęcia: od bezpiecznego uruchomienia poza produkcją po stałą opiekę.
Nie nadążasz za zmianami w świecie AI?
Pozwól, że weźmiemy to na siebie. Co tydzień destylujemy najważniejsze wydarzenia ze świata AI w skupiony, 5-minutowy przegląd - żebyś był na bieżąco bez szumu.
Dowiedz się więcej