Utrzymanie aplikacji webowej po wdrożeniu: co obejmuje i jak to ustalamy
Aplikacja, którą nikt się nie zajmuje, przez jakiś czas działa bez zarzutu. Potem wygasa certyfikat, biblioteka dostaje łatkę bezpieczeństwa, a dysk serwera się zapełnia. Utrzymanie pilnuje tych rzeczy, zanim zauważą je użytkownicy.
Autor: Szymon Łakomy. Aktualizacja:
Zakres miesięcznej opieki
| Obszar | Co robię | Po co |
|---|---|---|
| Aktualizacje | framework, biblioteki i system serwera, zaczynając od poprawek bezpieczeństwa | zamknięcie znanych luk, zanim ktoś z nich skorzysta |
| Monitoring | dostępność, błędy w aplikacji, miejsce na dysku, ważność certyfikatu | o problemie wiem wcześniej niż użytkownik |
| Kopie bazy | automatyczna kopia poza serwerem i okresowe próbne odtworzenie | pewność, że kopia nadaje się do użycia |
| Poprawki | błędy zgłoszone przez zespół albo wykryte w monitoringu | aplikacja działa tak, jak przy odbiorze |
| Drobny rozwój | nowe pole, raport, zmiana uprawnień | aplikacja nadąża za zmianami w firmie |
Jak zgłaszasz problem i co dzieje się dalej
- Zgłoszenie przez jeden ustalony kanał: mail, formularz albo wspólną tablicę zadań, żeby nic nie utonęło w prywatnych wiadomościach.
- Ocena pilności: awaria, która zatrzymuje pracę, błąd z obejściem albo prośba o zmianę.
- Poprawka najpierw na środowisku testowym, potem na produkcji, z wpisem w historii zmian.
- Krótka informacja zwrotna: co było przyczyną i co zrobiłem, żeby się nie powtórzyło.
Czas reakcji dla każdej kategorii zapisujemy w umowie, zależnie od tego, jak bardzo firma polega na aplikacji. Nie podaję jednej liczby dla wszystkich, bo panel otwierany raz w tygodniu i system zamówień działający całą dobę mają inne potrzeby.
Umowa: pula godzin, opieka podstawowa lub zlecenia
Stała opłata z pulą godzin
Aktualizacje, monitoring i kopie w cenie, do tego godziny na poprawki i zmiany. Przewidywalny koszt dla aplikacji używanej codziennie.
Opieka podstawowa
Tylko aktualizacje bezpieczeństwa, kopie i monitoring. Zmiany zamawiasz osobno. Pasuje do narzędzi wewnętrznych, które rzadko się zmieniają.
Zlecenia na żądanie
Bez stałej umowy, płacisz za konkretną poprawkę. Najtańsze na papierze, ale bez monitoringu o awarii dowiesz się od klienta.
Dostępy, odpowiedzialność i prawa do kodu warto opisać tak samo starannie jak przy budowie aplikacji. Piszę o tym w tekście umowa na wykonanie oprogramowania.
Utrzymanie aplikacji, której nie pisałem
Przejmuję też aplikacje po innym wykonawcy. Przed umową opieki uruchamiam projekt, sprawdzam zależności, kopie i sposób wdrażania. Jeśli stan jest zły, najpierw proponuję uporządkowanie, a stała opieka zaczyna się po nim. Dokładny przegląd z raportem opisuję na stronie audyt kodu aplikacji.
Najlepiej znam aplikacje w Pythonie (Django, FastAPI) z interfejsem w React i TypeScript, czyli takie, jakie sam buduję jako aplikacje webowe. Przy innych technologiach mówię od razu, czy podejmę się opieki.
Czego ta opieka nie obejmuje
- stron na WordPressie, dla nich jest osobna opieka nad stroną WordPress,
- przepływów w n8n i Make, którymi zajmuje się opieka nad automatyzacjami,
- komputerów, drukarek i sieci w biurze, czyli zwykłej obsługi IT,
- dużych nowych modułów, które wyceniam osobno jako projekt.
Najczęstsze pytania
Czy utrzymanie obejmuje hosting?
Może, ale wolę, żeby serwer był na koncie firmy, a ja miał do niego dostęp. Wtedy zmiana wykonawcy nie wymaga przeprowadzki. Opłaty za serwer płacisz bezpośrednio dostawcy.
Co, jeśli w danym miesiącu nic się nie zepsuło?
Aktualizacje, kopie i monitoring wykonują się i tak, bo właśnie dzięki nim rzadziej coś się psuje. Niewykorzystane godziny z puli mogą przechodzić na kolejny miesiąc, jeśli zapiszemy to w umowie.
Jak często aktualizujesz biblioteki?
Poprawki bezpieczeństwa wdrażam, gdy się pojawią i przejdą testy. Większe aktualizacje frameworka planuję z wyprzedzeniem, bo mogą wymagać zmian w kodzie, i zawsze zaczynam od środowiska testowego.
Czy mogę zakończyć opiekę i przenieść aplikację?
Tak. Kod, serwer i kopie są Twoje, a przy zakończeniu przekazuję aktualną dokumentację i listę dostępów do zmiany. Okres wypowiedzenia ustalamy w umowie.
Powiązane strony
Aplikacja działa, ale nikt jej nie pilnuje?
Napisz, w czym jest napisana i kto ją dziś aktualizuje. Zaproponuję przegląd i zakres opieki.