Lumina
Poradnik / Aplikacje webowe

Aplikacja webowa na zamówienie: kiedy SaaS przestaje wystarczać

Jak porównać gotowy SaaS z dedykowaną aplikacją, policzyć koszt obejść, ocenić integracje i dane oraz wybrać własny system tylko wtedy, gdy naprawdę ma to sens.

Mateusz Malanowski13 min czytania

SaaS jest dobrym wyborem, dopóki rozwiązuje właściwy problem

Gotowe oprogramowanie pozwala uruchomić proces bez budowania produktu od zera. Firma płaci abonament, zakłada konta, konfiguruje kilka pól i może zacząć pracę. Bez własnego zespołu developerskiego, infrastruktury i kilkumiesięcznego wdrożenia.

To zwykle najlepszy punkt startu.

Nie ma sensu tworzyć własnego CRM-u, jeśli standardowy system obsługuje sprzedaż. Nie ma sensu pisać komunikatora, systemu faktur ani narzędzia do zarządzania zadaniami tylko dlatego, że firma może.

Problem zaczyna się, gdy gotowe oprogramowanie przestaje wspierać proces, a firma zaczyna wspierać oprogramowanie. Ludzie przepisują dane, omijają ograniczenia, prowadzą równoległe arkusze i tłumaczą nowym pracownikom, których przycisków nie wolno używać.

Własna aplikacja nie jest automatycznie lepsza od SaaS-u. Staje się lepsza dopiero wtedy, gdy koszt niedopasowania gotowego systemu przewyższa koszt zaprojektowania i utrzymania rozwiązania dopasowanego do firmy.

Pierwszy sygnał: proces został dopasowany do narzędzia

Każde wdrożenie wymaga pewnego kompromisu. Firma porządkuje nazwy statusów, upraszcza formularze i korzysta ze standardowych raportów. To nie jest problem. Gotowe narzędzie ma właśnie ograniczać liczbę indywidualnych decyzji.

Czerwona lampka zapala się wtedy, gdy kompromis dotyka istoty procesu.

Przykłady:

  • handlowiec zmienia sposób wyceny, ponieważ system nie obsługuje właściwych reguł,
  • pracownik wpisuje fałszywą wartość, żeby przejść do kolejnego etapu,
  • jeden status oznacza trzy różne sytuacje biznesowe,
  • dane trafiają do pola „notatka”, bo nie istnieje dla nich struktura,
  • raport powstaje przez eksport i ręczne łączenie kilku plików,
  • zespół utrzymuje drugi system tylko po to, żeby uzupełniać braki pierwszego,
  • klient musi przejść proces wygodny dla dostawcy SaaS-u, a nie dla firmy.

Jeżeli narzędzie wymusza sensowne standardy, może poprawiać organizację. Jeżeli usuwa przewagę firmy albo generuje stałą pracę ręczną, przestaje być neutralnym wyborem technologicznym.

Obejścia mają koszt, nawet jeśli nie widać ich na fakturze

Abonament jest łatwy do policzenia. Trudniej policzyć koszt funkcjonowania obok systemu.

Firma płaci za:

  • kopiowanie danych między narzędziami,
  • ręczne raporty,
  • poprawianie błędów,
  • szkolenie z wyjątków,
  • dodatkowe automatyzacje,
  • kolejne licencje potrzebne do uzupełnienia braków,
  • czas oczekiwania na funkcję w roadmapie dostawcy,
  • procesy, których nie można zmienić bez zmiany całej platformy.

Jeżeli piętnaście osób traci codziennie po dwadzieścia minut na obejście, firma oddaje temu problemowi ponad sto godzin miesięcznie. Nadal może płacić tylko kilkaset złotych abonamentu, ale nie jest to rzeczywisty koszt narzędzia.

Własna aplikacja również generuje koszty niewidoczne w pierwszej wycenie: utrzymanie, monitoring, rozwój, bezpieczeństwo i wsparcie użytkowników. Dlatego porównujemy całe procesy, a nie cenę licencji z ceną wdrożenia.

Brak funkcji nie zawsze uzasadnia własną aplikację

Lista brakujących opcji potrafi szybko urosnąć. Ciemny motyw, inny układ dashboardu, dodatkowy filtr, własny kolor statusu. Większość takich różnic nie uzasadnia budowy systemu.

Kluczowe pytanie brzmi: czy brak funkcji wpływa na wynik biznesowy?

Własne rozwiązanie może mieć sens, gdy ograniczenie:

  • blokuje sprzedaż,
  • zwiększa liczbę błędów,
  • uniemożliwia automatyzację,
  • spowalnia realizację usługi,
  • utrudnia spełnienie wymagań prawnych lub umownych,
  • odcina firmę od ważnych danych,
  • uniemożliwia stworzenie doświadczenia będącego częścią przewagi produktu.

Jeśli problem sprowadza się do tego, że zespół nie lubi interfejsu, zmiana SaaS-u będzie zwykle tańsza niż budowa własnego narzędzia.

Dedykowane oprogramowanie powinno rozwiązywać dedykowany problem. Nie powinno być najdroższym sposobem na przesunięcie przycisku.

Dane są ważniejsze niż liczba ekranów

Przy wyborze SaaS-u łatwo skupić się na funkcjach widocznych w demo. Znacznie ważniejsze są odpowiedzi na pytania o dane.

Trzeba sprawdzić:

  • kto jest właścicielem danych,
  • w jakiej strukturze można je wyeksportować,
  • czy API obejmuje wszystkie potrzebne zasoby,
  • jakie są limity zapytań,
  • jak działa historia zmian,
  • czy dane można usunąć zgodnie z wymaganiami,
  • gdzie są przechowywane,
  • co dzieje się po zakończeniu umowy,
  • czy integracje wymagają najwyższego planu abonamentowego.

Eksport CSV nie zawsze rozwiązuje problem przenośności. Może zawierać bieżący stan bez relacji, załączników, logów i historii. Firma formalnie odzyskuje dane, ale nie jest w stanie odtworzyć procesu.

We własnej aplikacji kontrola nad modelem danych jest większa. Wiąże się z nią również odpowiedzialność za kopie zapasowe, migracje, dostęp, retencję i bezpieczeństwo. Własność nie oznacza braku obowiązków.

Integracje pokazują, czy platforma jest fundamentem, czy przeszkodą

Nowoczesny SaaS zwykle ma API, webhooki i katalog gotowych integracji. To ogromna przewaga. Można połączyć systemy bez budowania wszystkiego samodzielnie.

Trzeba jednak rozróżnić integrację od automatyzacji opartej na przypadku.

Stabilna integracja powinna obsługiwać:

  • uwierzytelnienie,
  • ponawianie żądań,
  • idempotencję,
  • limity,
  • błędy częściowe,
  • mapowanie identyfikatorów,
  • monitoring,
  • wersje API.

Łańcuch pięciu narzędzi połączonych scenariuszem typu „jeśli pojawi się wiersz, utwórz rekord, poczekaj dwie minuty i wyślij wiadomość” może działać miesiącami. Może też po cichu przestać przenosić część danych.

Automatyzacje no-code są świetne do sprawdzania procesu i obsługi prostych przepływów. Gdy stają się główną magistralą danych firmy, potrzebują takiej samej kontroli jak kod produkcyjny.

Własny backend daje możliwość umieszczenia integracji w jednym miejscu, z kolejkami, logami i kontrolą błędów. Nie zawsze trzeba od razu wymieniać SaaS. Czasami najlepszym rozwiązaniem jest dobudowanie warstwy integracyjnej wokół istniejących narzędzi.

Kiedy gotowy SaaS nadal wygrywa

Gotowy system jest zwykle lepszym wyborem, jeśli proces jest standardowy i nie stanowi przewagi firmy.

SaaS wygrywa, gdy:

  • problem został dobrze rozwiązany przez rynek,
  • wymagania są typowe dla branży,
  • firma chce uruchomić proces szybko,
  • nie ma zespołu odpowiedzialnego za produkt,
  • liczba użytkowników jest mała lub zmienna,
  • aktualizacje prawne i branżowe lepiej zostawić wyspecjalizowanemu dostawcy,
  • koszt abonamentu jest niższy niż koszt posiadania własnego systemu,
  • dostępne API pozwala zrealizować potrzebne integracje.

Księgowość, płatności, komunikacja zespołowa czy podstawowy CRM często należą właśnie do tej grupy. Rynek inwestuje w nie więcej, niż pojedyncza firma rozsądnie powinna.

Budowanie własnego odpowiednika dojrzałego produktu może wyglądać atrakcyjnie na makiecie. Potem dochodzą uprawnienia, logi, importy, powiadomienia, odzyskiwanie danych, aplikacje mobilne, dostępność i setki małych zachowań wypracowanych przez lata.

Kiedy własna aplikacja zaczyna się bronić

Dedykowany system ma sens, gdy proces jest ważny, stabilny i wyraźnie różny od rynkowego standardu.

Najczęstsze sygnały:

  • firma ma własne reguły wyceny lub realizacji,
  • kilka działów pracuje na jednym procesie,
  • istniejące narzędzia wymagają ciągłego przepisywania danych,
  • potrzebne są niestandardowe role i uprawnienia,
  • integracje są kluczową częścią działania,
  • klient korzysta bezpośrednio z procesu,
  • dane powinny zasilać kilka produktów,
  • skala opłat per użytkownik staje się nieproporcjonalna,
  • dostawca ogranicza funkcję potrzebną do dalszego wzrostu,
  • proces jest częścią przewagi konkurencyjnej.

„Nasz proces jest wyjątkowy” nie może być wyłącznie przekonaniem zespołu. Trzeba wskazać konkretne kroki, których gotowe narzędzia nie obsługują, oraz policzyć ich wpływ.

Własna aplikacja jest inwestycją w proces. Jeśli sam proces jest chaotyczny albo co tydzień zmienia właściciela, kod tylko utrwali problem.

Rozwiązanie hybrydowe często jest najlepsze

Decyzja nie musi brzmieć: cały SaaS albo wszystko od zera.

Firma może pozostawić gotowe narzędzia tam, gdzie działają dobrze, i zbudować własną warstwę dla procesu, który ją wyróżnia.

Przykładowy układ:

CRM SaaS -> kontakty i szanse sprzedażowe
własna aplikacja -> konfiguracja, wycena i akceptacje
ERP -> produkty, stany i zamówienia
system księgowy -> faktury
hurtownia danych -> raportowanie

Własny system nie próbuje wtedy zastąpić całego zaplecza firmy. Orkiestruje konkretny proces i komunikuje się z wyspecjalizowanymi usługami przez API.

Takie podejście ogranicza zakres, ale wymaga jasnego wskazania źródła prawdy. Klient nie może mieć jednocześnie trzech nadrzędnych adresów, a cena produktu nie powinna być edytowana niezależnie w dwóch systemach.

Jak wygląda architektura dedykowanej aplikacji

Architektura zależy od produktu, ale odpowiedzialności powinny być rozdzielone.

Typowy system zawiera:

frontend -> interfejs użytkownika
API -> reguły biznesowe i uprawnienia
baza danych -> model domenowy
worker / kolejka -> zadania asynchroniczne
storage -> dokumenty i multimedia
integracje -> komunikacja z zewnętrznymi systemami
monitoring -> błędy, logi i metryki

Frontend nie powinien sam decydować, czy użytkownik może zatwierdzić rabat. API nie powinno generować ciężkiego raportu w tym samym żądaniu, które zapisuje formularz. Integracja nie powinna blokować użytkownika tylko dlatego, że zewnętrzny system odpowiada wolno.

Rozdzielenie odpowiedzialności nie oznacza budowania mikroserwisów od pierwszego dnia. Dobrze zaprojektowany monolit z modułami jest często najlepszym fundamentem. Granice w kodzie są ważniejsze od liczby repozytoriów.

Więcej o tym, jak projektujemy takie rozwiązania, znajduje się na stronach aplikacji webowych i backend development.

MVP powinno sprawdzić najważniejsze założenie

Pierwsza wersja nie ma być pomniejszoną kopią systemu docelowego. Ma udowodnić, że własne narzędzie rzeczywiście poprawia proces.

Wybieramy jeden przepływ o wysokiej wartości:

użytkownik rozpoczyna zadanie
-> system prowadzi go przez kluczowe decyzje
-> dane są zapisane w jednym miejscu
-> wynik trafia do kolejnego etapu

W aplikacji ofertowania może to być przygotowanie, zatwierdzenie i wygenerowanie jednej kategorii oferty. W systemie operacyjnym — obsługa jednego rodzaju zlecenia. W portalu B2B — złożenie i śledzenie jednego typu zamówienia.

MVP powinno zawierać podstawowe bezpieczeństwo, logowanie błędów i możliwość odzyskania danych. „Wersja minimalna” nie oznacza wersji, której nie można bezpiecznie używać.

Po wdrożeniu mierzymy czas, liczbę błędów, wykorzystanie funkcji i miejsca, w których użytkownicy nadal wychodzą do arkusza. To daje lepszą roadmapę niż kolejne warsztaty o hipotetycznych potrzebach.

Jak porównać koszty

Porównanie powinno obejmować co najmniej trzy lata, nie pierwszy miesiąc.

Po stronie SaaS-u liczymy:

  • abonament,
  • opłaty per użytkownik,
  • wyższe plany wymagane przez API lub uprawnienia,
  • wdrożenie i konfigurację,
  • automatyzacje,
  • pracę ręczną wynikającą z ograniczeń,
  • koszt migracji w przyszłości.

Po stronie własnej aplikacji liczymy:

  • analizę i projekt,
  • implementację,
  • migrację danych,
  • hosting,
  • monitoring,
  • bezpieczeństwo,
  • aktualizacje zależności,
  • wsparcie użytkowników,
  • rozwój po wdrożeniu.

Własna aplikacja nie kończy się po oddaniu kodu. Jeżeli nikt nie ma budżetu ani odpowiedzialności za jej utrzymanie, firma tworzy własny legacy system szybciej, niż zakładała.

Z drugiej strony rosnący SaaS może pobierać coraz większą opłatę za użytkowników, których praca nie wymaga pełnej licencji. Nie istnieje uniwersalnie tańszy wariant. Istnieje wariant lepiej dopasowany do skali i procesu.

Jak wyjść z SaaS-u bez zatrzymania firmy

Migracja typu „w piątek wyłączamy stare, w poniedziałek wszyscy pracują w nowym” brzmi sprawnie tylko na slajdzie.

Bezpieczniejsze podejście obejmuje:

  1. inwentaryzację danych i integracji,
  2. wskazanie źródeł prawdy,
  3. oczyszczenie oraz mapowanie danych,
  4. wdrożenie jednego procesu lub zespołu,
  5. okres pracy równoległej, jeśli jest potrzebny,
  6. porównanie wyników,
  7. migrację kolejnych obszarów,
  8. zamrożenie starego systemu,
  9. archiwizację i kontrolę eksportu,
  10. wyłączenie licencji dopiero po potwierdzeniu kompletności.

Nie należy utrzymywać dwóch aktywnych źródeł prawdy dłużej, niż to konieczne. Praca równoległa zmniejsza ryzyko startu, ale szybko tworzy rozbieżności.

Jeżeli problem dotyczy istniejącego produktu, pomocny będzie również plan modernizacji aplikacji webowej zamiast gwałtownego rewrite’u.

Checklista: kupić czy budować

  • Czy proces jest standardowy dla rynku?
  • Czy stanowi przewagę firmy?
  • Ile osób pracuje w nim codziennie?
  • Ile czasu zabierają obejścia?
  • Jak często pojawiają się błędy?
  • Czy dostępne SaaS-y mają potrzebne API?
  • Czy można wyeksportować kompletne dane?
  • Czy opłaty rosną proporcjonalnie do wartości?
  • Czy potrzebne są niestandardowe role i akceptacje?
  • Czy klienci korzystają bezpośrednio z procesu?
  • Czy firma zna i kontroluje własne reguły biznesowe?
  • Kto będzie właścicielem dedykowanego produktu?
  • Jaki jest budżet na utrzymanie po wdrożeniu?
  • Czy można zacząć od integracji albo mniejszego modułu?
  • Jak zmierzymy, że własna aplikacja działa lepiej?

Podsumowanie

SaaS jest dobrym domyślnym wyborem. Pozwala zacząć szybko, korzystać z dojrzałych funkcji i przenieść część odpowiedzialności na dostawcę.

Przestaje wystarczać wtedy, gdy firma codziennie płaci za niedopasowanie: ręczną pracą, błędami, kolejnymi integracjami i procesem ułożonym pod ograniczenia platformy.

Własna aplikacja nie powinna kopiować całego SaaS-u. Powinna przejąć ten fragment, w którym indywidualny proces daje firmie realną wartość. Reszta może nadal działać na gotowych, wyspecjalizowanych usługach.

Najlepsza decyzja rzadko wynika z listy funkcji. Wynika z danych, odpowiedzialności, kosztu obejść i planu rozwoju.

Jeśli gotowe narzędzie wykonuje pracę dobrze, warto z niego korzystać. Jeśli zespół od dawna pracuje przede wszystkim nad obchodzeniem narzędzia, firma prawdopodobnie nie potrzebuje kolejnej automatyzacji. Potrzebuje własnego procesu zamienionego w produkt.

Aplikacje webowe

Gotowy system zaczął ograniczać rozwój firmy?

Sprawdźmy, czy własna aplikacja ma sens