Firmy o rozbudowanych strukturach organizacyjnych działające na dużą skalę, które wymagają zaawansowanych platform do zarządzania zasobami, komunikacji i analizy danych, przez lata kształtowały swoje strategie handlowe, korzystając z wielu kanałów sprzedaży. Dzięki pozycji na rynku i złożoności operacyjnej mogły wybierać technologie eCommerce, które oferowały im dużą elastyczność w konfiguracji i rozwoju ‒ głównie za sprawą rozwiązań opartych na oprogramowaniu open source. Takie podejście, wspierane przez stale rosnącą społeczność niezależnych programistów, pozwoliło im na indywidualne dostosowanie procesów sprzedaży.

W ciągu ostatnich kilku lat przedsiębiorstwa te zaczęły jednak dostrzegać ograniczenia stojące za otwartym oprogramowaniem. Napotykały one wyzwania związane z ciągłymi aktualizacjami, rosnącymi kosztami rozwoju i koniecznością utrzymania platform. Dodatkowo z biegiem czasu musiały zmierzyć się z problemem starzenia się technologii, co prowadziło do narastania długu technologicznego. W poszukiwaniu innowacyjnych rozwiązań wiele z nich zwróciło uwagę na wdrożenia oparte na chmurze, które obiecują nowoczesność, efektywność i pełen zakres funkcji klasy enterprise, która odpowiada na współczesne wymagania biznesowe..

Oto trzy powody, które mogą być podstawą do zmiany platformy na rozwiązania chmurowe.

Dlaczego aktualizacje open source stanowią wyzwanie

W dzisiejszym dynamicznym środowisku biznesowym przedsiębiorstwa działające na dużą skalę napotykają na szereg wyzwań związanych z aktualizacjami oprogramowania. Tricentis, firma zajmująca się testowaniem kodu, przeprowadziła badanie, które pokazuje, że to problem, który może przysporzyć wiele problemów na różnych poziomach organizacji. Analiza "Software Fail Watch", wzięła pod lupę 606 awarii oprogramowania, które dotknęły ponad 3,6 miliarda użytkowników i spowodowały utratę przychodów w wysokości 1,7 miliarda dolarów. Co istotne, branże związane z handlem detalicznym i technologiami konsumenckimi doświadczyły największej liczby awarii spośród wszystkich analizowanych branż. Warto zaznaczyć, że ponad połowa tych awarii była wynikiem błędów oprogramowania, które powstały na etapie produkcji lub też brakiem odpowiednich testów przed samym wdrożeniem. Jedną z przyczyn takiego stanu rzeczy jest fakt, że rozwój i wdrażanie oprogramowania open source, często dokonywany jest bez ścisłej kontroli i określenia zakresu odpowiedzialności za poszczególne elementy kodu.

Według danych udostępnionych przez IBM, średni koszt naprawy błędu produkcyjnego w przypadku dużych wdrożeń średnio wynosi 100 000 dolarów. Dlatego tak ważne jest zagwarantowanie jakości i ilości testów przed wdrożeniem lub aktualizacją. Błędny znalezione na etapie testów wymagają 6x mniej pracy i nakładów finansowych, niż ich usunięcie po wdrożeniu.

Zagrożenia związane z brakiem aktualizacji

W roku 2022 firma Mission Produce, która specjalizuje się w zakupie, pakowaniu i sprzedaży awokado na skalę globalną, musiała zmierzyć się z poważnym problemem. Wprowadzone w 2021 roku rozwiązanie B2B odpowiedzialne za sprzedaż zostało wdrożone w nieodpowiedni sposób, a jednorazowe aktualizacje tylko zwiększały problemy. Organizacja była zmuszona do opracowania nowych procesów by ratować spadającą sprzedaż i wynajęcia zewnętrznej firmy konsultingowej do naprawy wdrożonej platformy, co wygenerowało dodatkowe koszty w wysokości 3,8 miliona dolarów.

Innym przykładem może być firma Leaseplan, zajmująca się leasingiem. Doświadczyła ona problemów po wdrożeniu nowej platformy nazwanej - Core Leasing System (CLS), która miała służyć do sprzedaży usług. Monolityczna struktura tego systemu utrudniła wprowadzanie stopniowych aktualizacji produktów i usług w erze szybkich zmian technologicznych. Problemy, które pojawiły się w procesie wdrożenia doprowadziły do ogromnych strat wynoszących prawie 92 miliony euro.

Regularne aktualizacje wysokiej jakości

Wśród obaw jakie wymieniane są przez kadrę zarządzającą w kontekście aktualizacji pojawia się ryzyko. Brak regularnych aktualizacji to nie tylko kosztowna praca deweloperów, ale przede wszystkim możliwość wystąpienia krytycznych problemów, które mogą spowodować nieplanowane przerwy w działaniu. Utrata płynności operacyjnej na dzień, tydzień czy miesiąc stanowi nieakceptowalne straty dla każdego przedsiębiorstwa.

Duże wdrożenia eCommerce, oparte na oprogramowaniu open source, często cierpią z powodu braku odpowiedzialności za rozwój i aktualizację poszczególnych modułów. W początkowej fazie wykorzystanie zewnętrznych pluginów może wydawać się łatwe i wygodne. Jednak z czasem, w miarę dokonywania zmian i rozwijania kolejnych obszarów platformy, użycie tych wtyczek, stworzonych przez wiele niezależnych podmiotów, staje się to po prostu ryzykowne.

Ponad to jednoczesne wgranie kilkudziesięciu, a nawet kilkuset poprawek, które nie były testowane w konkretnej konfiguracji powiązanych ze sobą modułów, to recepta na wystąpienie nowych błędów, z którymi firmy muszą sobie radzić samodzielnie, ponieważ brakuje podmiotu, który wziąłby na siebie odpowiedzialność, za jakość wprowadzonych zmian.

Bezpieczeństwo i ochrona danych

Pozostaje jeszcze jeden istotny aspekt związany z aktualizacjami, a mianowicie bezpieczeństwo platformy oraz danych użytkowników. Brak aktualizacji, zwłaszcza po zakończeniu wsparcia dla danej wersji oprogramowania, prowadzi do sytuacji, w której nie pojawiają się już poprawki krytyczne. To one naprawiają błędy krytyczne mające ogromny wpływ na bezpieczeństwo platformy. Adobe wymienia trzy poziomy błędów bezpieczeństwa, z których poziom 1 to błędy o największym ryzyku.

Poziomy bezpieczeństwa (źródło: Adobe)
Poziomy bezpieczeństwa (źródło: Adobe)

W sytuacji, gdy oprogramowanie przestaje być wspierane, co zazwyczaj ma miejsce średnio co 2-3 lata, platforma eCommerce staje się jeszcze bardziej podatna na ataki i zagrożenia. Dla właściciela biznesu, największym ryzykiem jest utrata danych osobowych i danych płatności klientów, co może prowadzić do poważnych konsekwencji finansowych.

Zresztą bardzo dobrze potwierdzają to aktualne badania i analizy. Ponieważ złamanie protokołu SSL jest prawie niemożliwe, hakerzy znaleźli inne sposoby ataku, wykorzystując wirusy komputerowe, „phishing” i luki w oprogramowaniu. Według ankiety Gartnera co najmniej 30 milionów Amerykanów stało się celem ataku phishingowego, a prawie 2 miliony z nich padło ofiarą innego oszustwa w tym takiego, które doprowadziło do ujawnienia numerów kart i danych umożliwiającym innym osobom zrobienie zakupów na ich rachunek.

Koszty aktualizacji w środowisku open source

Kiedy przechodzimy do zagadnienia kosztów, z jakimi firmy muszą się zmierzyć podczas wdrażania i aktualizacji oprogramowania, musimy zrozumieć, że budżet przeznaczony na stworzenie platformy do sprzedaży online nie jest tym samym, co budżet na późniejsze aktualizacje. Można by wręcz powiedzieć, że drugi z tych kosztów to rodzaj wydatku przeznaczonego na spłatę długu technologicznego, który pojawia się, gdy platforma eCommerce zaczyna się starzeć, a proces ten zaczyna się natychmiast po jej wdrożeniu. Wszystko dlatego, że technologia stale ewoluuje, a nowe rozwiązania pojawiają się na rynku niemal codziennie.

Niejednokrotnie okazuje się, że koszty związane z aktualizacją i koszty nowego wdrożenia mogą być zbliżone lub wręcz równe. Wpływ na to ma model dostarczania oprogramowania przez agencje digitalowe. Kiedy decydujemy się na platformę eCommerce opartą na oprogramowaniu open source, musimy wziąć pod uwagę zapisy umowy. Często są one formułowane w taki sposób, aby agencja nie była zobligowana do świadczenia usług aktualizacji w cenie oprogramowania. W efekcie, po dostarczeniu platformy, która spełnia wszystkie wymagania i została przygotowana, przykładowo w wersji Magento 2.4, nie możemy oczekiwać od firmy automatycznych aktualizacji w przyszłości. Biznes musi zatem korzystać z oprogramowania w danej wersji aż do momentu, gdy zajdzie potrzeba aktualizacji lub wymiany.

Wielu dostawców nawet nie informuje klientów o konieczności aktualizacji oprogramowania lub sugeruje to tylko ogólnie, bez wnikania w szczegóły. Osoby odpowiedzialne za obszary eCommerce w firmach często żyją w przekonaniu, że oprogramowanie open source jest całkowicie darmowe i raz poprawnie przygotowane nie wymaga dalszych nakładów. To jeden z mitów, które często pojawiają się na stronach poświęconych oprogramowaniu tego rodzaju.

mity na temat Magento Open Source (źródło GATESOFT)
mity na temat Magento Open Source (źródło GATESOFT)

Skąd bierze się ta niechęć do aktualizacji?

Istnieje kilka powodów, dla których przedsiębiorstwa unikają aktualizacji. Po pierwsze, związane jest to z pluginami i wtyczkami, które nie są tworzone podczas procesu wdrażania platformy. Gotowe rozwiązania dostępne na oficjalnych stronach są świetne podczas pracy nad storefrontem i obniżania kosztów wdrożenia. Jednak te same wtyczki mogą stwarzać problemy, gdy pojawia się nowa wersja oprogramowania. Część z nich może otrzymać uaktualnienia, ale te, które ich nie dostaną, mogą przestać działać z nową wersją. W takiej sytuacji firma musi albo usunąć daną wtyczkę, przebudować ją, a czasami nawet stworzyć od nowa. Koszty związane z tymi pracami ponoszą przedsiębiorcy, ponieważ żaden dostawca nie jest zobligowany do ich wykonania.

Aby odpowiedzieć na to pytanie, trzeba zrozumieć, że aktualizacja to proces składający się z wielu etapów. Nie polega on jedynie na instalacji nowej wersji „core” platformy. Wymaga również aktualizacji wszystkich wtyczek, dodatków oraz dedykowanych rozwiązań, takich jak integracje z zewnętrznymi programami czy aplikacjami. W rezultacie proces ten może przypominać praktycznie stworzenie platformy od nowa, często wymagając przepisania lub dostosowania znacznej części kodu. Ponadto, często pomija się fakt, że aktualizacja platformy musi być poprzedzona pracami nad jej wyglądem (layoutem sklepu), ponieważ ta część nie aktualizuje się automatycznie.

Koszt takiej aktualizacji, obejmujący cały technologiczny stack z wszystkimi elementami, które były wdrażane przez rok lub dłużej i wymagają aktualizacji po kolejnym okresie użytkowania, jest trudny do oszacowania. Żadna agencja wdrożeniowa nie podaje tego rodzaju cen na swojej stronie internetowej, ponieważ takie działania są wyliczane indywidualnie, z uwzględnieniem wielu czynników.

Narastający dług technologiczny

Warto dodać, że ten ogromny koszt zwany jest długiem technologicznym. Czym on jest? „To sytuacja, w której decydujemy się na wybranie pozornie tańszego lub łatwiejszego (na danym etapie) rozwiązania, jednakże decyzja ta sprawia, że w dłuższej perspektywie koszt ten staje mniej opłacalny od wybrania na początku opcji droższej i trudniejszej we wdrożeniu. Prościej mówiąc firma A decyduje się na wybór prostego rozwiązania do sprzedaży swoich produktów i płaci za nie X, jednakże po roku okazuje się, że wiele zaimplementowanych rozwiązań wymaga płatnej aktualizacji, a nowe rozwiązania dostępne na rynku powodują, że kod musi zostać dodatkowo rozbudowany o opcje, na przykład płatności czy też dostawy.”

20% budżetu technologicznego przeznaczonego na nowe produkty jest wykorzystywane do rozwiązywania problemów związanych z długiem technologicznym
20% budżetu technologicznego przeznaczonego na nowe produkty jest wykorzystywane do rozwiązywania problemów związanych z długiem technologicznym

Według badania przeprowadzonego przez McKinsey & Company nawet 20% budżetu technologicznego przeznaczonego na nowe produkty jest wykorzystywane do rozwiązywania problemów związanych z długiem technologicznym. W dłuższej perspektywie dług taki może doprowadzić do bardzo wysokich zmian w kodzie, dużej liczby błędów w oprogramowaniu oraz do obniżenia jego wydajności.

Cykl życia technologii

W celu zrozumienia dynamicznego charakteru środowiska eCommerce, warto spojrzeć na historię powstawania i wdrażania sklepów internetowych z perspektywy technologicznej. Przed rokiem 2002 strony internetowe pozbawione były responsywności - oznacza to że ich w pełni prawidłowe funkcjonowanie, możliwe było jedynie na komputerach stacjonarnych i laptopach. Pierwsza, choć może prymitywna, strona dostosowana do urządzeń mobilnych pojawiła się w 2002 roku i była stworzona dla marki AUDI, która była stroną Adaptive Web Design (AWD), gdzie skalowanie strony zapewniał skrypt, ale pełnoprawne strony RWD nadeszły kilka lat później. Warto zauważyć że realna potrzeba stosowania stron mobilnych nadeszła dopiero po roku 2007, wraz z premierą rewolucyjnego na tamte czasy iPhone, którego pojawienie się na rynku, umożliwiło rozpoczęcie realnej adopcji technologii mobilnych przez szerszą grupę odbiorców.

Responsive Web Design umożliwił dostosowanie witryn internetowych do różnych urządzeń, zwiększając komfort zakupów online. Rozwiązanie to ewoluowało, a jego miejsce zajęło PWA, czyli Progressive Web Apps. To połączenie najlepszych cech responsywności i aplikacji mobilnych. Dzięki nim, klienci mogą korzystać z witryny eCommerce na smartfonach i tabletach, tak jakby była to dedykowana aplikacja, jednakże bez konieczności pobierania i instalowania czegokolwiek. To rozwiązanie nie tylko zwiększa komfort użytkowników, ale także pozwala na lepszą wydajność, szybsze ładowanie stron i niższe koszty utrzymania w porównaniu do tradycyjnych aplikacji mobilnych.

Podobnie było z samym oprogramowaniem, które z monolitycznego, mającego wiele ograniczeń w zakresie elastyczności, skalowalności i dostosowywania do zmieniających się potrzeb rynku, ewoluowało do oprogramowania MACH. MACH czyli Mikroserwisy, API, Cloud i Headless pozwala na rozbiór monolitycznych systemów na moduły, które działają niezależnie i komunikują się za pomocą API. Dzięki temu, firmy mogą dostosowywać i rozwijać swoje platformy e-commerce znacznie bardziej efektywnie, bez konieczności masywnych aktualizacji całego systemu. Ewolucja od monolitycznego oprogramowania do technologii MACH to krok w stronę elastyczności, szybkości reakcji na zmiany rynkowe i dostarczania spersonalizowanych doświadczeń klientom. To także przyszłość e-commerce, gdzie firmy, które dostosują się do nowych standardów, będą miały przewagę nad konkurencją, sprostając rosnącym wymaganiom klientów.

Należy zrozumieć, że każdy etap ma swój początek i koniec, technologie eCommerce starzeją się, a ich miejsce zastępują nowe. Przykładem może być język programowania PHP, który jest często używany do budowy dynamicznych stron internetowych i sklepów. Nowa wersja PHP 8.1 jest znacznie wydajniejsza niż starsze wersje. Jednakże platformy oparte na oprogramowaniu open-source, takie jak Magento, często nie dostają regularnych aktualizacji, co prowadzi do konieczności ponoszenia dodatkowych kosztów utrzymania.

W przypadku oprogramowania od Adobe dobrze jest porównać wersje 1.x i 2.x. Magento 1.9 została wydane w maju 2014 roku, a Magento 2.0 w listopadzie 2015 roku. Między tymi wersjami zaszły znaczące zmiany technologiczne. W miarę jak Magento 1.9 traciło wsparcie techniczne, firmy musiały inwestować pieniądze w upgrade platformy do wersji 2.x co wiązało się z bardzo wysokimi kosztami.

EOL i EOS dla Magento (Źródło: endoflife.date)
EOL i EOS dla Magento (Źródło: endoflife.date)

To wszystko pokazuje, że technologie eCommerce ewoluują, a starsze rozwiązania tracą na aktualności. Warto inwestować w ciągły rozwój i zniwelować narastający dług technologiczny, aby uniknąć problemów z bezpieczeństwem, wydajnością i dostępnością.

Wpływ EOL i EOS na sprawność operacyjną biznesu

Często spotkać możemy się z przekonaniem, że istniejące oprogramowanie lub aplikacje działają bezproblemowo przez wiele lat i są niezawodne. Dlaczego więc zmieniać coś, co dobrze funkcjonuje? W organizacjach, które rezygnują z aktualizacji, a co za tym idzie z funkcjonalności, mogą pojawiać się błędy oprogramowania, a procesy biznesowe mogą z czasem stawać się coraz to mniej efektywne. Firmy często próbują znaleźć obejście tych problemów, ale przeważnie i tak kończy się to używaniem "dziurawego oprogramowania" przez kolejne miesiące.

Technologia, która zakończyła swój cykl życia i przestaje otrzymywać aktualizacje zabezpieczeń, jest problemem nie tylko dla samego oprogramowania eCommerce, ale także dla całego ekosystemu z nim powiązanego. Mowa tutaj na przykład o programach (np. zewnętrznych programach magazynowych zintegrowanych z platformą) i aplikacjach (np. aplikacji do wykonywania płatności online). Im dłużej taka technologia jest pozbawiona wsparcia, tym wyższe są koszty jej utrzymania. W miarę upływu czasu coraz mniej osób w firmie jest w stanie używać przestarzałego oprogramowania w sposób wydajny. W tym momencie pojawia się zapotrzebowanie na wsparcie specjalistów, rosną koszty utrzymania, a ryzyko związane z utratą i bezpieczeństwem danych jest niezwykle wysokie.

Koszt długu technologicznego na tym etapie jest zazwyczaj znacznie wyższy niż przygotowanie nowej platformy, która spełnia wszystkie obecne wymogi rynkowe. Dlatego dla biznesu kluczowe jest dostarczanie rozwiązań w sposób ciągły, który niweluje narastający dług technologiczny i zapobiega starzeniu się oprogramowania.

Continuous Integration w standardzie

Szesnaście lat doświadczenia skłoniło nas do ponownego przemyślenia strategii testowania i aktualizacji oprogramowania. Kilka lat temu pojawił się pomysł zastosowania praktyk Continuous Integration (CI). Polega ona na regularnym, automatycznym łączeniu i testowaniu kodu źródłowego przez cały okres jego tworzenia. Celem CI jest wczesne wykrywanie i rozwiązywanie problemów związanych z integracją, takich jak konflikty wersji, błędy czy niezgodności między wszystkimi komponentami oprogramowania.

Za tą decyzją stoi wiele czynników technologicznych oraz biznesowych, w tym bezpieczeństwo operacyjne merchantów. Mają oni pewność, że dostarczane przez firmę oprogramowanie jest stale rozwijane i aktualizowane w postaci ponad 2 tysiącami ulepszeń platformy w ciągu roku, dostarczanymi nawet na kilka zmian dziennie.

Małe iteracje zmniejszają ryzyko i pozwalają izolować ewentualne problemy, w przypadku ich wystąpienia. Łatwiej analizować aktualizację zawierającą kilka zmian, niż tysiące update’ów obejmujących dziesiątki powiązań wdrożonych jednorazowo. Kluczowe w tego rodzaju dostarczaniu aktualizacji jest też to, że istnieje możliwość szybkiego wycofania zmian, które powodują błędy. Zdarzają się takie sytuacje, ale czas reakcji na te zdarzenia jest praktycznie niezauważalny.

Źle przeprowadzone aktualizacje eCommerce mogą pociągać za sobą problemy, których można uniknąć stosując CI/CD. Wybór odpowiedniej platformy ma wpływ na sposób dostarczania nowych poprawek i udoskonaleń. Rozwiązanie to pozwoliło przełamać nam 3,5 letnią bariery czasu przydatności rozwiązania eCommerce. To sposób dostarczania oprogramowania, które jest zawsze aktualne i bezpieczne, zresztą potwierdzić to mogą nasze wdrożenia oraz klienci, którzy nam zaufali.

Inwestycja we własny produkt pozwoliła nam stworzyć platformę eCommerce, która poprzez aktualizacje zawsze adaptuje się do rynku i wymagań projektów enterprise. Dzięki temu myślimy o długofalowej współpracy z naszymi partnerami trwającej nawet 8 lat, a nie skupiamy się na jednorazowym wdrożeniu.

Jeśli chcesz porozmawiać o tym, jak rozpocząć temat replatformingu w celu odblokowania potencjału handlu online w Twojej firmie, jak zapewnić jej stabilne narzędzie gotowe do obsługi unikalnych strategii sprzedaży i jak zadbać o długoletni rozwój po wdrożeniu, to skorzystaj z kontaktu lub formularza poniżej.