Koszt wdrożenia Syliusa – od czego naprawdę zależy budżet projektu?
Jednym z pierwszych pytań, które zadają firmy planujące wdrożenie platformy e-commerce opartej na Syliusie, jest: ile bę...
Czytaj więcej →Decyzja o migracji do Sylius 2 to dopiero początek. W praktyce powodzenie upgrade'u zależy dużo bardziej od przygotowania niż od samego procesu aktualizacji.
Im mniej rzeczy zmieniasz jednocześnie, tym większa szansa na bezpieczne przeprowadzenie migracji. Dlatego przed rozpoczęciem prac warto sprawdzić kilka obszarów, które najczęściej wpływają na koszt, zakres i ryzyko całego projektu.
Planujesz upgrade do Sylius 2? Przygotowaliśmy hub edukacyjny dla zespołów technicznych odpowiedzialnych za migrację. Znajdziesz tam checklistę gotowości do upgrade'u, Plugin Compatibility Radar oraz materiały pomagające oszacować zakres prac i ryzyka techniczne.
Ta checklista zakłada, że decyzja o migracji już zapadła. Jeśli jeszcze nie – zacznij od sprawdzenia, czy upgrade się opłaca w Twoim projekcie. Jedną z najważniejszych zasad przy migracji do Sylius 2 jest ograniczanie powierzchni zmiany.
Jeżeli równocześnie aktualizujesz środowisko, przebudowujesz frontend, zmieniasz state machine, aktualizujesz pluginy i modyfikujesz API, ryzyko regresji oraz koszt projektu rosną bardzo szybko.
Dlatego najpierw przygotuj projekt, a dopiero potem zaczynaj właściwe prace. Ta sama kolejność obowiązuje przy każdym większym projekcie technicznym: najpierw wiedza, potem kod.
Zacznij od Sylius 1.14. To wersja pomostowa między linią 1.x a Sylius 2. Jeśli dopiero wchodzisz w tę platformę, zacznij od przewodnika po Syliusie.
Równolegle przygotuj całe środowisko:
PHP,
bazę danych,
Node.js,
pozostałe zależności wykorzystywane przez projekt.
Sylius 2 wymaga PHP w wersji 8.2 lub nowszej oraz Symfony 6.4 albo 7.2 – sprawdź, na czym stoi projekt, zanim zaczniesz.
Celem jest maksymalne ograniczenie liczby ruchomych elementów podczas samej migracji. Im więcej zmian uda się wykonać wcześniej, tym łatwiejszy będzie właściwy upgrade.
Drugi krok to uczciwy audyt UI i zakresu customizacji w projekcie.
Odpowiedz sobie na trzy pytania:
Ile zmian zostało wprowadzonych przez lata?
Które elementy są nadal potrzebne?
Które funkcjonalności można odłożyć lub nawet usunąć?
Jeżeli sklep posiada mocno rozbudowany storefront, Legacy Shop Bridge Plugin może pomóc ograniczyć zakres pierwszego etapu migracji.
Trzeba jednak pamiętać, że kompatybilność z pozostałymi pluginami i rozszerzeniami zawsze wymaga indywidualnej weryfikacji. Nie warto zakładać, że cały ekosystem będzie działał bez dodatkowych prac.
W przypadku panelu administracyjnego nie ma prostej ścieżki przejściowej. Migracja oznacza przejście z Semantic UI i jQuery do Bootstrapa, Vanilla JS oraz, jeśli będzie taka potrzeba, kontrolerów Stimulus.
Policz, ile własnego UI siedzi w panelu administracyjnym, które funkcje są nadal wykorzystywane i czy wszystkie customizacje mają uzasadnienie biznesowe.
Część funkcjonalności można odłożyć na późniejsze etapy albo całkowicie z nich zrezygnować.
Ekosystem Syliusa wykonał w ostatnim czasie ogromną pracę.
Najpopularniejsze rozszerzenia zostały już dostosowane do Sylius 2. Dotyczy to zarówno oficjalnych pluginów, jak i wielu rozwiązań rozwijanych przez społeczność.
Jednak sama dostępność wersji zgodnej z Sylius 2 nie oznacza jeszcze pełnej kompatybilności projektu.
Sprawdź:
czy wybrane wtyczki posiadają wsparcie dla Sylius 2,
jakie zmiany pojawiły się pomiędzy wersjami,
czy migracja nie wymaga zmian po stronie własnego kodu.
Niektóre zmiany w pluginach mogą być równie istotne jak sam upgrade frameworka.
W naszym hubie edukacyjnym dotyczącym migracji do Sylius 2 znajdziesz Plugin Compatibility Radar. To narzędzie pomagające ocenić gotowość najpopularniejszych rozszerzeń.
Jeżeli projekt korzysta z własnych rozszerzeń state machine, warto ograniczyć zakres zmian. Nie wszystko trzeba migrować jednocześnie.
Jeżeli obecne rozwiązanie działa poprawnie, zostaw Winzou State Machine na pierwszym etapie migracji i odłóż przejście na Symfony Workflow na później. Stworzyliśmy osobny materiał o migracji Winzou State Machine.
Najważniejsza zasada pozostaje taka sama: im mniej obszarów zmieniasz jednocześnie, tym większa szansa na bezpieczny upgrade.
Jeżeli sklep nie posiada testów automatycznych, upgrade do Sylius 2 jest dobrym momentem, aby przynajmniej częściowo to zmienić.
Nie trzeba od razu osiągać pełnego pokrycia.
Zabezpiecz najważniejsze ścieżki biznesowe:
proces zakupowy,
checkout,
płatności,
rejestrację użytkownika,
kluczowe integracje.
Największą wartością testów jest ograniczanie ryzyka regresji. Bez nich trudno mieć pewność, że najważniejsze procesy nadal działają po migracji.
Nie zapominaj o testach manualnych! Po migracji warto przejść przez najważniejsze scenariusze oraz upewnić się, że wszystko działa i wygląda zgodnie z oczekiwaniami.
Nie planuj migracji tuż przed wysokim sezonem sprzedażowym.
Znacznie bezpieczniej przeprowadzać ją wtedy, gdy biznes ma większy margines na ewentualne problemy i poprawki – a zespół jest do niej przygotowany.
Jeżeli projekt wykorzystuje API Platform, migracja obejmuje również duży skok pomiędzy wersjami. W takim przypadku szczególnie ważne stają się testy kontraktowe.
Ich zadaniem jest upewnienie się, że frontend nadal otrzymuje dokładnie te same dane, których oczekuje.
Przed migracją przygotuj zestaw prostych testów struktury odpowiedzi API. Po wykonaniu upgrade'u można zweryfikować, czy żadne pola nie zostały utracone lub zmienione.
Dla projektów headless jest to jedno z najważniejszych zabezpieczeń całego procesu. Jak to wygląda na żywym projekcie, pokazujemy w case study migracji Katalogu Marzeń na headless Sylius.
Nie istnieje jedna uniwersalna odpowiedź.
Z doświadczenia wynika jednak, że migracja może trwać od około dwóch tygodni do sześciu tygodni lub dłużej.
Wpływ na czas projektu mają między innymi:
zakres customizacji UI,
liczba pluginów,
wykorzystanie API Platform,
stopień rozbudowy state machine,
liczba integracji,
poziom pokrycia testami.
Te same czynniki decydują o koszcie wdrożenia Syliusa – czas i budżet skalują się tutaj razem. Zadaj sobie pytanie, czy wszystkie funkcjonalności i pluginy są jeszcze potrzebne.
Czasami usunięcie nieużywanych elementów jest najtańszym i najszybszym sposobem ograniczenia kosztu migracji.
W końcu kod, którego nie ma, nie generuje błędów.
Jeżeli planujesz migrację do Sylius 2, przygotowaliśmy zestaw materiałów, które mają pomóc ograniczyć ryzyko i koszt całego procesu. A jeśli wolisz oddać temat w całości – zajmujemy się wdrożeniami i migracjami e-commerce end-to-end.
W naszym hubie edukacyjnym znajdziesz:
checklistę gotowości do upgrade'u,
Plugin Compatibility Radar,
materiały techniczne dotyczące migracji.
Tak. 1.14 to wersja pomostowa – zbiera deprecacje prowadzące do linii 2.x, więc pozwala rozbić migrację na dwa mniejsze kroki zamiast jednego dużego.
Częściowo. Pozwala odłożyć przepisanie storefrontu i zamknąć pierwszy etap migracji szybciej, ale nie zwalnia z weryfikacji pozostałych rozszerzeń – każde trzeba sprawdzić osobno. Panelu administracyjnego nie obejmuje w ogóle, więc jeśli tam siedzi Wasza customizacja, bridge niczego nie skraca.
Nie. Jeżeli obecne rozszerzenia state machine działają poprawnie, zostaw Winzou na pierwszym etapie i potraktuj przejście na Symfony Workflow jako osobny projekt. Zasada jest ta sama w całej migracji: im mniej obszarów ruszasz jednocześnie, tym łatwiej ustalić, co się zepsuło.
Można, ale wtedy jedynym zabezpieczeniem zostaje ręczne klikanie po wdrożeniu. Nie potrzebujesz pełnego pokrycia – wystarczy ścieżka zakupowa, checkout, płatności, rejestracja i kluczowe integracje. Bez tego po migracji nie masz jak stwierdzić, czy zamówienia nadal się składają, dopóki nie zgłosi tego klient.
Od sześciu rzeczy: zakresu customizacji UI, liczby pluginów, wykorzystania API Platform, rozbudowy state machine, liczby integracji i pokrycia testami. Najmocniej waży customizacja panelu administracyjnego – to ona zwykle decyduje, czy projekt zamknie się w dwóch tygodniach, czy w sześciu.
Jednym z pierwszych pytań, które zadają firmy planujące wdrożenie platformy e-commerce opartej na Syliusie, jest: ile bę...
Czytaj więcej →
Upgrade z Sylius 1 do Sylius 2 może być dobrą decyzją, ale nie w każdym projekcie będzie najlepszym kierunkiem. Zanim za...
Czytaj więcej →
Obsługa walut i podatków to jeden z najważniejszych obszarów każdego systemu e-commerce B2B i B2C. Wyjaśniamy, jak dział...
Czytaj więcej →