Archiwum miesiąca: maj 2018

System B2B – jakie 7 kluczowych potrzeb powinien spełniać?

Dostęp do pełnej wiedzy o produkcie

Produkty sprzedawane w modelu B2B mogą być bardzo różne. Od śrubek, przez proste materiały biurowe, aż po rozbudowane urządzenia gastronomiczne oraz maszyny dla górnictwa czy rolnictwa. Sprzedaż niektórych produktów w ilości hurtowej nie stanowi problemu. Zdecydowana część z nich posiada jednak mnóstwo wariantów, wersji oraz innych indywidualnych cech, które są opisywane w rozbudowanych dokumentacjach. Niejednokrotnie produkty te posiadają także konkretne certyfikaty czy normy dopuszczające je do użytku. Liczba informacji produktowych jest całkiem spora, a dla usprawnienia pracy działu obsługi klienta, niezbędne jest zamieszczenie ich wszystkich w systemie sprzedaży. Wszystko to sprawia, że konieczna staje się integracja systemu B2B z zewnętrznymi systemami jak ERP czy PIM. Integracja z systemem ERP zapewnia przedsiębiorstwu przeniesienie procesów związanych z obsługą sprzedaży do elastycznego i szybko reagującego systemu sprzedaży. Pozwala to na zachowanie automatycznego obiegu danych takich jak: stany magazynowe, ceny czy dane księgowe. Integracja z systemem PIM pozwala z kolei na łatwe zarządzanie informacją produktową niezależnie od: kanału sprzedaży, zdefiniowanego języka, aliasu czy kontrahenta. Umożliwia ona zachowanie spójności danych w zakresie opisów, wariantów kolorystycznych, plików multimedialnych (zdjęć, infografik, filmów) oraz ustawień SEO.

11

Indywidualne zamówienia w ramach globalnych kontraktów

Platforma B2B jest narzędziem pracy skierowanym nie tylko do pracowników danej firmy, ale również do jej kontrahentów i osób zatrudnianych przez nich. W przypadku, gdy struktura firmy klienta jest bardzo rozbudowana i liczy kilkadziesiąt czy kilkaset placówek lub oddziałów, konieczne jest narzędzie pozwalające na samodzielne dokonywanie zamówień z możliwością walidacji i zarządzania wszystkimi zamówieniami. Skutecznym rozwiązaniem okazuje się w tym przypadku panel kontraktowy. Możliwość tworzenia dedykowanych paneli kontraktowych dla kontrahentów, to rozwiązanie niezwykle usprawniające codzienną pracę. Dzięki jego zastosowaniu, klienci danego przedsiębiorstwa mogą samodzielnie, w sposób łatwy i szybki dokonywać zamówień. Co istotne, pomimo wykorzystania jednego systemu sprzedaży, zastosowanie dedykowanych paneli kontraktowych sprawia, że klienci otrzymują dostęp do indywidualnych warunków handlowych, form wysyłki, umów czy różnych dokumentów. W tym miejscu dostępne są także dodatkowe informacje o produktach, takie jak: fotografie, instrukcje, materiały marketingowe czy regulaminy. Kontrahenci otrzymują więc swoistą bazę wiedzy, która usprawni ich codzienną pracę. Panel kontrahenta umożliwia także przypisanie placówek oraz nadawanie kilku poziomów dostępu, co przydaje się zwłaszcza wtedy, gdy zamówienia tworzą różne oddziały kontrahenta.

2

Transparentny model rozliczeń

Jednym z ważniejszych elementów długotrwałej i dobrej współpracy jest jasny dla obu stron model rozliczeń. Przedsiębiorstwa, działające w modelu B2B często zmagają się z problemem przeterminowanych należności oraz ich odzyskiwania. Duża liczba zamówień, transakcji oraz wysokie saldo kredytu kupieckiego mają negatywny wpływ na finanse firmy i znacznie utrudniają codzienne procesy organizacyjne, ponieważ w momencie gdy klienci zwlekają z płatnościami, firma notuje straty. Rozwiązaniem usprawniającym proces odzyskiwania należności jest system do windykacji, czyli Moduł ARMS. Głównym założeniem tego rozwiązania, jest wsparcie działu finansowo-księgowego w zautomatyzowaniu procesów związanych z zarządzaniem płatnościami. Moduł ARMS wspomaga procesy windykacyjne oraz ogranicza do minimum przeterminowane zobowiązania klientów wobec firmy, a także daje możliwość weryfikacji poprawności ustawień zarządzania płatnościami, zanim informacje te trafią do klienta. Umożliwia on także automatyczne blokowanie możliwości składania zamówień po upływie ustalonego czasu. Dzięki Modułowi ARMS, faktury są płacone szybciej, co skutkuje zaoszczędzeniem przez przedsiębiorstwo sporej ilości czasu.

Indywidualne warunki cenowe

Bardzo często, gdy klienci dokonują większego niż zazwyczaj zamówienia, mogą oczekiwać specjalnej oferty cenowej. Przedsiębiorstwa prowadzące działalność w modelu B2B często otwarte są na tego typu negocjacje handlowe. Niestety jednak, tworzenie dedykowanych ofert handlowych, będących efektem tego typu negocjacji zazwyczaj pochłania sporo czasu. System B2B umożliwiający tworzenie indywidualnych warunków cenowych, z perspektywy administratora oznacza znaczną automatyzację większości procesów związanych z tworzeniem, akceptacją czy klonowaniem wcześniej stworzonych ofert. Dzięki tej funkcjonalności powstaje jedno miejsce, zawierające historię wszystkich utworzonych ofert wraz z możliwością filtrowania ich według różnych parametrów. Dzięki wdrożeniu indywidualnych warunków cenowych, procesy negocjacji handlowych i tworzenia dedykowanych ofert stają się znacznie szybsze, co wpływa na sprzedaż B2B.

3

Synergia sprawdzonych kanałów z nowoczesnymi rozwiązaniami

Istotnym aspektem sprzedaży, zwłaszcza tej wieloletniej, jest bezpośredni kontakt ze sprzedawcą, zapewniający klientowi poczucie bezpieczeństwa i zindywidualizowanego traktowania. Dla firmy oznacza to natomiast budowanie lojalnego grona klientów. Jednym z rozwiązań pozwalających na połączenie sprawnej sprzedaży z bezpośrednim kontaktem jest integracja systemu B2B z telefonicznym centrum obsługi klienta. Tego typu integracja może skutecznie zwiększać sprzedaż poprzez tworzenie kampanii telemarketingowych, a także umożliwia zdefiniowanie listy zawierającej dane osób, do których pracownik firmy powinien zadzwonić. Kampanie telefoniczne prowadzone w ramach systemu B2B zintegrowanego z call center prowadzone są w sposób automatyczny, na bazie wprowadzonej listy. Jeżeli potencjalny klient nie odebrał połączenia, system pozwala na wprowadzenie przypomnienia, aby móc zadzwonić do danej osoby za pewien okres czasu. Rozwiązanie posiada również możliwość tworzenia diagramów przepływów, czyli scenariuszy rozmowy, które pozwalają na wprowadzenie jednolitego standardu obsługi klienta. Call center ułatwia także indywidualne podejściu do klienta – gdy dzwoni klient, telefon zawsze zostaje przekierowany do osoby przypisanej do danej relacji.

Sprawne zakupy dla wielu klientów jednocześnie

Klienci dokonujący zakupów w modelu B2B bardzo często pełnią wyłącznie rolę dystrybutorów w dalszej sprzedaży produktów. Liczba zamówień, jakich dokonują oni dla swoich klientów często jest bardzo wysoka, a terminy realizacji różne. Istotna w takich przypadkach staje się możliwość sprawnego dokonywania zakupu, najlepiej w formie jednego zamówienia, a w przypadku niedostępności któregoś z produktów – z podziałem na czas realizacji. Odpowiedzią na tę potrzebę jest multikoszyk, który umożliwia klientom biznesowym tworzenie kilku dedykowanych koszyków dla ich klientów docelowych. Ponadto, funkcjonalność ta umożliwia nadawanie koszykom tytułów, a także nadawanie produktom nazw własnych. Wdrożenie multikoszyków usprawnia proces dokonywania zamówień, przez co zwiększa satysfakcję kontrahentów z codziennego korzystania z systemu B2B.

Gwarancja stałego rozwoju systemu

Zmiana lub aktualizacja systemu sprzedaży internetowej zazwyczaj kojarzy się markom ze sporym wyzwaniem oraz koniecznością poświęcenia znacznej ilości czasu i pieniędzy. Nasza firma za cel postawiła sobie stworzenie systemu, który będzie zawsze aktualny. Odpowiedzią na to wyzwanie okazała się praktyka Continuous Integration, którą przyjęliśmy za jeden z ważniejszych standardów e-commerce na najbliższe lata. CI polega na wprowadzaniu zmian w kodzie w sposób ciągły i scalaniu ich nawet co kilka minut. Wspólna praca nad kodem zapewnia najwyższą jakość, wytworzony kod jest spójny, a praca systemu efektywna przez wiele lat.

Dla naszych klientów Continuous Integration oznacza:
– zawsze najnowszą wersję systemu e-commerce
– przewidywalny koszt rozwoju systemu
– nieograniczony dostęp do innowacyjnych funkcjonalności
– szybki Time to Market
– tysiące automatycznych testów wpływających na jakość rozwiązań
– wdrożenie dedykowanego systemu działającego w modelu SaaS

Realizacja 7 kluczowych potrzeb systemów B2B stała się standardem, który trzeba spełnić, aby sprawnie działać na współczesnym rynku sprzedaży hurtowej. To właśnie podjęcie 7 odpowiednich decyzji biznesowych sprawia, że marki odnoszą sukces na rynku B2B i wyprzedzają swoją konkurencję nie o jeden, lecz o kilka kroków.

#222 E-commerce na wsi – czy tym rynkiem powinni zainteresować się sprzedawcy?

Badanie zlecone przez Grupę AdRetail i operatora systemu BLIK pokazało, że obszary wiejskie są zaniedbane przez polski e-commerce. Wraz z wielkością aglomeracji wzrasta zainteresowanie e-handlem, a w małych miejscowościach zainteresowanie zakupami online jest dużo niższe. Z jakiegoś powodu sklepy internetowe nie skupiają się na tej grupie odbiorców i nie targetują ofert tak, aby były dopasowane do tych konsumentów. Czy jest to segment wart uwagi?

Czytaj dalej

Praktycznie zastosowanie funkcji tablic

Funkcje tablic to bardzo bogate narzędzia ułatwiające pracę programisty PHP. Możemy przy ich pomocy modyfikować zawartość tablicy, sortować, wykonywać na każdym elemencie jakąś instrukcję czy też dowolnie przekształcać. W poniższym wpisie chciałbym przedstawić kilka praktycznych przykładów pokazujących w czym te funkcje mogą nam się przydać. Przykłady te nie wyczerpują tematu, ale mam nadzieję, że chociaż w minimalnym stopniu zaznajomią z tematem.

Umieszczanie elementu w środku tablicy

Wyobraźmy sobie sytuację, w której chcemy dodać nowy element do tablicy. Aby dopisać element na końcu tablicy możemy użyć array_push, na początku używamy array_shift, a co żeby umiescić element gdzieś w środku tablicy? Z pomocą przychodzi nam funkcja array_splice, która służy do usunięcia części tablicy i zamienia ją na coś innego.

<?php

$arr = ['A', 'B', 'D'];


array_splice($arr, 2, 0, ['C']);


print_r($arr);

W powyższym przykładzie mamy tablicę, w której znajdują się kolejne elementy alfabetu z jedną brakująca literą. Aby poprawić nasz alfabet usuwamy „zero” elementów i dodajemy brakujące C. Dla powyższego kodu otrzymamy poprawne i kompletne pierwsze cztery litery alfabetu.

Array

(

    [0] => A

    [1] => B

    [2] => C

    [3] => D

)

Usuwanie elementów

Jeśli chodzi o usuwanie pierwszego i ostatniego elementu tablicy to możemy posłużyć się funkcjami array_pop oraz array_unshift, ale przypuśćmy, że chcemy usunąć jakiś obiekt z tablicy wskazując jego właściwości. Przykładwo chcemy usunąć obiekt instancji klasy Foo który posiada id 18.

<?php


class Foo

{

    private $id;

    public function __construct($id)  {

        $this->id = $id;

    }

    public function getId() {

        return $this->id;

    }

}


$arr = [new Foo(17), new Foo(18),  new Foo(16)];


$idToDelete = 18;


$result = array_filter($arr, function(Foo $foo) use($idToDelete) {

    return $foo->getId() !== $idToDelete;

});

Wykorzystując funkcję array_filter w zmiennej $result mamy tablicę bez obiektu o id 18. array_filter wywoływana bez parametrów zwróci tablice usuwając z tej wejściowej takie elementy jak w puste stringi oraz null.

Posiadając tablicę składającą się z typów prostych takich jak np string możemy wykorzystać funkcję array_search, która pozwoli nam wyszukać index w tablicy pod którym znajduje się dany element.

<?php


$arr = ['A', 'B', 'X', 'C'];


if (($key = array_search('X', $arr, $strict = true)) !== FALSE) {

    unset($arr[$key]);

}


print_r($arr);

W wyniku wywołania powyższego kodu otrzymamy tablicę bez 'iksa’.

Array

(

    [0] => A

    [1] => B

    [3] => C

)

Jeśli problematyczne okaże się to, że nie mamy ciągłości w kluczach tablicy (brakuje wartości pod drugim indeksem) możemy wykorzystać funkcję array_values.

$arr = array_values($arr);

Dopisanie powyższego kodu za klamrą zamykającą z warunku w poprzednim przykładzie zmieni wynik na taki posiadający ciągłość w kluczach.

Array

(

    [0] => A

    [1] => B

    [2] => C

)

Sortowanie tablicy po wartości obiektu

Dla prostych, jednowymiarowych tablic mamy szereg funkcji pozwalających na posortowanie jej. Dzielą się one na te które sortują po kluczach lub wartościach lub też definiują kierunek w którym elementy zostaną posortowane. Takimi funkcjami są m. in. asort, ksort, arsort, krsort itd.

<?php



class Foo

{

    public $id;

    public function __construct($id)  {

        $this->id = $id;

    }

}


$arr = [new Foo(17), new Foo(18),  new Foo(16)];


array_multisort(

    array_column($arr, 'id'), SORT_ASC, $arr

);


print_r($arr);

W powyższym kodzie znajduje się prosta klasa Foo która posiada jedno publiczne pole $id inicjowane w konstruktorze. Wykorzystanie funkcji array_column pozwala zwrócić wartości z poszczególnych pól obiektu (PHP 7.0) lub kolumn w przypadku tablic asocjacyjnych. W połączeniu z funkcją array_multisort pomoże nam posortować tablice instancji Foo.

Array

(

    [0] => Foo Object

        (

            [id] => 16

        )

    [1] => Foo Object

        (

            [id] => 17

        )

    [2] => Foo Object

        (

            [id] => 18

        )

)

Alternatywną metodą do posortowania tablicy obiektów może być ta przedstawiona poniżej z użyciem funkcji uasort. Rezultat będzie taki sam jak dla kombinacji funkcji array_column i array_multisort.

uasort ($arr, function (Foo $a, Foo $b) {

    return $a->id > $b->id;

});

Porównywanie tablicy

Sprawdzanie czy dwie tablice składają się tylko i wyłącznie z tych samych elementów w pewnych przypadkach może okazać się kłopotliwe.

<?php


$foo = ['A', 'B'];

$bar = ['B', 'A'];


var_dump($foo === $bar);

Te tablice zawierają te same elementy, ale powyższy kod zwróci false z tego względu, że operator porównania w przypadku tablic sprawdza również zgodność kluczy. Możemy oczywiście te dwie tablice najpierw posortować, ale ciekawszym i w niektórych przypadkach lepszym rozwiązaniem jest porównanie różnic tablic przez wywołanie funkcji array_diff.

array_diff($foo, $bar) === array_diff($bar, $foo)

Znajdowanie maksymalnej wartości pola obiektu

Mamy sytuację w której chcemy poznać maksymalną wartość danego pola obiektu, np. najwyższą cenę produktu.

<?php


class Product

{

    private $price;

    public function __construct($price) {

        $this->price = $price;

    }

    public function getPrice()  {

        return $this->price;

    }

}


$arr = [

    new Product(2.00),

    new Product(3.45),

    new Product(1.23)

];


$max = max(array_map(function(Product $product) {

    return $product->getPrice();

}, $arr));

W rezultacie otrzymamy oczywiście 3.45. W powyższym przykładzie wykorzystaliśmy funkcję array_map która pozwoliła nam z każdego produktu wyciągnąć cenę. Jeśli posłużylibyśmy się tutaj obiektami z publicznymi właściwościami (lub tablicą) moglibyśmy wykorzystać wcześniej poznaną funkcję array_column.

Autorem tekstu jest Jakub Sładek.

Code Review

Code review to jeden z najlepszych sposobów, aby pomóc zespołowi upewnić się, że pisze najlepszy możliwy kod. Daje możliwość nie tylko wyłapania błędów, ale również przedyskutować wprowadzane zmiany, dając wszystkim członkom zespołu możliwość zapoznania się z nowymi funkcjonalnościami.

Z jednej strony code review wydawać się może zbędnym wysiłkiem w sytuacji gdy aplikacja jest pokryta testami TDD. W tej sytuacji możemy bez większych przeszkód zmieniać kod lub dopisać jego nowe elementy wraz z kolejnymi testami, które obrazują jak oczekujemy, aby kod działał. Uruchamiamy testy i w jednej chwili wiemy czy aplikacja działa lub nie.

Z drugiej strony jako autor kodu zawsze stawiam pewne założenia dotyczące sposobu działania systemu i czego użytkownik potrzebuje, dlatego przegląd kodu przez drugiego programistę daje szanse wyłapania błędów logicznych lub problemów strukturalnych, których komputer nie może zobaczyć. Dodatkowo osoba wykonująca code review zaznajamia się z fragmentem systemu, nad którym może aktualnie nie pracować i w sytuacji kryzysowej dokonać niezbędnych poprawek lub zmian.

W niniejszym artykule chciałbym podzielić się paroma praktykami, w którym code review przebiega płynnie niezależnie po której stronie procesu oceny stoimy.

1. Nie karz. Celem code review jest powstanie najlepszego możliwego kodu. Staramy się być pomocni i upewniajmy się, że komentarze nie wydają się oskarżycielskie.

2. Zadawaj pytania. Należy zadawać pytania odnośnie wszystkiego, czego nie mamy pewności. Kod jest jasny dla autora, niemniej dla recenzenta duże partie kodu nie zawsze bywają oczywiste. Dzięki pytaniom i odpowiedziom uzyskujemy większą klarowność nad daną funkcjonalnością. W zespole pracujemy razem. Kompromis wymaga rozmowy i zrozumienia.

3. Nikt nie jest właścicielem kodu. Staramy się unikać sytuacji „własności kodu”. Gdy któryś z członków zespołu przypisuje własność kodu, wówczas staje się mniej podatny na sugestie i zmiany sądząc, że pierwotna wersja jest doskonała.

4. Przekaż pełną recenzję. W trakcie code review przeglądamy cały kod, a nie skupiamy się wyłącznie na fragmentach lub klasach. Jeśli czegoś nie wiemy… patrz pkt. 2. W przeciwnym wypadku narażamy autora na wykonywanie bezproduktywnych poprawek tylko dlatego, że recenzent nie przejrzał całego kodu.

Reasumując, staramy się nie tylko patrzeć na składnie kodu, ale także na jego architekturę. Przekazujemy własne opinie i sugestie dochodząc wspólnie do jak najlepszych rozwiązań.

W internecie oczywiście jest wiele tipów i praktyk code review. Najlepiej znanym jest artykuł na gitlabie: https://gitlab.com/help/development/code_review.md niemniej mam nadzieje, że i nasze drobne sugestie przekonają czytelnika o pozytywnych aspektach niniejszego procesu.

Autorem tekstu jest Marek Rode.

#221 Czym jest perfect hospitality?

Firmy dążą do poprawy jakości obsługi klienta. Zdarzają się takie biznesy, w których jej poziom jest wręcz legendarny. Mowa między innym o Disney, Zappos, czy też Warby Parker. Każda z tych firm wypracowała swój własny sposób obsługi klienta i wie, jakie procedury, a może ich brak sprawiają, że klient czuje się naprawdę wyjątkowo. W Polsce także pojawiają się marki, które kierują się własnymi kodeksami, jednym z nich jest Supreme Service, a drugim Perfect Hospitality. Co kryje się pod tymi hasłami?
Czytaj dalej

Post-Payment zyskuje sympatię polskich klientów

Polski rynek e-commerce nieustannie się rozwija. Rokrocznie przybywa zainteresowanych zakupami online oraz szeregiem oferowanych przez nie możliwości. Właściciele sklepów internetowych, by poprawić swoją pozycję na rynku i wyprzedzić konkurencję muszą nieustannie podążać za trendami i korzystać z nowinek technologicznych. Dokonanie zakupu w domu, z poziomu aplikacji mobilnej? Bezpłatny zwrot towaru zakupionego w Internecie w dowolnej placówce stacjonarnej? Dzięki dynamicznemu rozwojowi polskiego e-commerce to już nie problem. Co jeszcze może pomóc w wyjściu naprzeciw oczekiwaniom klientów, ułatwieniu procesu zakupowego oraz zwiększeniu sprzedaży? Punktem newralgicznym okazuje się zapłata za zakupione towary.

Kup teraz – zapłać później

Rozwiązaniem, któremu się dziś przyjrzymy, są odroczone płatności. Usługi typu post-payment dopiero zaczynają zdobywać polski rynek, podczas, gdy na zachodzie już ponad 30% transakcji jest realizowanych przy ich pomocy. Podążenie za tym trendem pozwoli na zwiększenie konkurencyjności marki. Sposobność decydowania o metodzie i terminie zapłaty oraz możliwość planowania swoich zakupów z wyprzedzeniem, w oparciu o przyszłe środki finansowe sprawiają, że podjęcie decyzji zakupowej przez klienta staje się znacznie łatwiejsze. Istotną zaletą tego rozwiązania jest wzrost współczynnika konwersji sprzedaży, który szacowany jest nawet na 10-40%. Co jednak najważniejsze – odroczone płatności w pełni zabezpieczają transakcję, przejmując na siebie 100% ryzyka braku płatności oraz ewentualne koszty windykacyjne.

pasek korzyści

Dzięki wdrożeniu odroczonych płatności możliwe staje się otrzymanie towaru przed dokonaniem zapłaty, bez angażowania środków własnych, dzięki czemu klientowi łatwiej przychodzi podjęcie decyzji zakupowej. Klient otrzymuje tu możliwość zamówienia kilku różnych wersji danego produktu oraz dokładnego obejrzenia swojego zamówienia, bez ponoszenia jakiegokolwiek ryzyka. Wykorzystanie tej metody płatności pozwala na dokonanie zakupu, pomimo chwilowego braku środków finansowych na koncie, a także umożliwia rozłożenie należności na raty, w przypadku wyboru takiej opcji zapłaty.

Nowa funkcjonalność w systemie e-commerce

Na polskim rynku usługi post-payment świadczy np. firma PayPo. Oferująca innowacyjną, przeznaczoną dla sklepów internetowych formę płatności firma, zapewnia konsumentom możliwość odroczenia zapłaty za towar aż o 21 dni, nie generując przy tym dodatkowych kosztów. Jej model działania można przedstawić w zaledwie kilku krokach.

pasek jak działamy

PayPo oferuje swoim klientom intuicyjny system transakcyjny, składający się z dwóch kroków, a decyzja o odroczeniu podejmowana jest w czasie krótszym niż 10 sekund. Zastosowanie tego typu płatności w sklepie internetowym wpływa na zwiększenie koszyka zakupowego średnio o 20%.

Wychodząc naprzeciw potrzebom i oczekiwaniom klientów, firma i-systems wdrażająca dedykowane oprogramowanie e-commerce, zdecydowała się na podjęcie współpracy z PayPo, tworząc łatwy w implementacji moduł płatności odroczonych. Rozwiązanie to dostępne jest dla klientów i-systems w core systemu, w projektach wdrażanych z użyciem praktyki Continuous Integration.

Klienci zainteresowani wdrożeniem lub szczegółami działania odroczonych płatności mogą kontaktować się w tej kwestii ze swoim opiekunem ze strony i-systems, bądź zgłosić się bezpośrednio do PayPo, uzupełniając formularz na stronie: https://paypo.pl/home/merchants

Nowa definicja SaaS

Technologia to obszar, w którym zmiany dokonują się niemal każdego dnia. Systemy, zwłaszcza te przeznaczone do sprzedaży internetowej, zarówno w modelu B2B jak i B2C, regularnie wzbogacane są o nowe funkcjonalności, bądź zmieniają specyfikę obecnych. Wszystko to warunkowane jest nieustannie rosnącymi potrzebami klientów.

W i-systems, od początku działalności firmy, główną ideą przyświecającą realizacji wszystkich projektów jest jakość. Dostarczanie klientom najlepszych rozwiązań technologicznych, to podstawa naszego działania. W listopadzie 2016 roku powstała idea uruchomienia zespołu programistów odpowiedzialnych za wdrożenie metody Continuous Integration.

Najważniejszym zadaniem tego działu, stało się skuteczne wdrożenie metody i umożliwienie klientom i-systems ciągłego rozwoju ich systemów sprzedaży. Metoda CI polega na wspólnej pracy zespołu programistów, którzy wprowadzają zmiany w sposób ciągły, scalając je nawet co kilka minut. Wspólna praca nad kodem wpływa na jego najwyższą jakość i sprawia, że wytworzony kod jest spójny, a praca systemu efektywna przez wiele lat.

Pierwszy sklep oparty o Continuous Integration wdrożony został przez i-systems już w maju 2017 roku. Obecnie w swoim portfolio posiadamy aż 16 sklepów internetowych uruchomionych w metodzie CI, a ich liczba stale rośnie.

Dla marki wdrożenie CI oznacza:
– systematyczną rozbudowę systemu sprzedaży internetowej, niezależnie czy jest to sprzedaż B2B czy też B2C o innowacyjne funkcjonalności tworzone we współpracy z działem R&D
– zapewnienie bezpieczeństwa, poprzez przeprowadzanie automatycznych testów, dzięki którym do systemu wprowadzane są tylko w pełni zweryfikowane elementy
– jeszcze szybszy time to market rozumiany jako przejście od koncepcji funkcjonalności do wdrożenia
– gwarancję odpowiedzialności dostawcy systemu za jakość rozwiązania opartego o przetestowane elementy
– przewidywalny koszt rozwoju systemu e-commerce dzięki precyzyjnie określonym warunkom współpracy
– zrównoważony i stały rozwój systemu e-commerce

Stałe dostarczanie do systemu nowych elementów i funkcjonalności sprawiło, że konieczna stała się zmiana wykorzystywanego dotychczas modelu biznesowego. Tak właśnie powstała koncepcja modelu o nazwie „Dedykowany SaaS”. Okazuje się bowiem, że rozwiązania dedykowane i te oferowane w modelu SaaS nie wykluczają się wzajemnie, a wręcz doskonale ze sobą współgrają. Połączenie tych modeli e-commerce zapewnia klientom zupełnie nową jakość i sprawia, że możliwe staje się nie tylko wykorzystanie ich zalet, ale i wyeliminowanie minusów.

W efekcie, otrzymujemy innowacyjny model systemu, który charakteryzuje się:
– niższym kosztem wdrożenia i rozwoju oprogramowania
– możliwością tworzenia dedykowanych rozwiązań
– dostępem do wszystkich funkcjonalności oferowanych przez dostawcę oprogramowania
– szybkim Time to Market
– umożliwieniem wieloletniego rozwoju

Co istotne, dedykowany SaaS stanowi gwarancję obniżenia kosztu inwestycji początkowej w projekt, a wykorzystanie tego modelu biznesowego sprawia, że klientowi zapewnione zostaje pełne bezpieczeństwo. W przypadku, jeżeli klient podejmie decyzję o chęci samodzielnego hostowania i utrzymywania oprogramowania, ma on możliwość wykupienia licencji posiadanego rozwiązania na własność.

Continuous Integration to przyszłość e-commerce. Firma i-systems jako pierwsza na rynku, poprzez wykorzystanie praktyki CI, oferuje system sprzedaży rozwijany jako dedykowany SaaS. Dzięki tej metodzie klienci posiadają stabilne i zawsze aktualne systemy, pozwalające na wieloletni rozwój i wzmocnienie swojej pozycji rynkowej.