"Obniżyliśmy budżet ponad 10 razy i uruchomiliśmy rozwiązanie w mniej niż 4 tygodnie, zamiast 6 miesięcy, korzystając z platformyAppMaster.io ". - Anton Smirnov, CEO CAD Systems
O CAD Systems
CAD Systems jest regionalnym dystrybutorem rozwiązań programowych Autodesk Inc w Azji Środkowej od 15 lat. Według wewnętrznych miar, firma obejmuje ponad 75% sprzedaży i wdrożeń rozwiązań СAD w Kazachstanie, Kirgistanie, Tadżykistanie i Uzbekistanie. CAD Systems współpracuje z ponad 50 partnerami w tych regionach i obsługuje ponad 1000 zamówień rocznie.
Problem: uruchomienie systemu zamówień
W ciągu ostatnich kilku lat firma szybko się rozwijała, a rosnąca ilość zamówień wywierała presję na stosunkowo niewielki zespół. Zamówienia były ręcznie otrzymywane od partnerów i przetwarzane ręcznie przez pracowników. Anton, dyrektor generalny firmy, obawiał się, że taki przepływ pracy nie jest zrównoważony i szukał sposobów na zmniejszenie obciążenia pracowników.
Dodatkowo chciał wprowadzić nowy proces weryfikacji każdego zamówienia, aby mieć pewność, że pracownicy nie wyślą przypadkowo zamówienia do Autodesk lub nie aktywują licencji przed ustaloną datą. Zamówienie musiałoby być stworzone przez pracownika, a następnie zatwierdzone przez kierownika.
"Chcieliśmy mieć pewność, że minimalizujemy błędy w naszym systemie, zarówno ludzkie, jak i techniczne, oraz że proces jest usprawniony, aby zaoszczędzić czas naszych pracowników." - Anton Smirnov, CEO
Na początku 2021 roku CAD Systems rozpoczął budowę zautomatyzowanego systemu zarządzania zamówieniami, aby poprawić obsługę partnerów i usprawnić ich pracę z Autodeskiem. Anton planował zatrudnić kilku programistów, którzy zrealizują projekt przy użyciu tradycyjnych narzędzi i technik tworzenia oprogramowania. Jednak po etapie planowania projektu Antonowi przedstawiono dwa centralne problemy, które zagrażały etapowi rozwoju:
#1 Budżet
Firma miała ograniczony budżet na rozwój i potrzebowała wielu tradycyjnych programistów do realizacji projektu. Problem kosztów został zaakcentowany w środowisku post-Covid.
"Na początku projektu wiedzieliśmy, że będziemy potrzebować wielu programistów i przyzwoitego budżetu na pokrycie ich kosztów. Szukaliśmy sposobów na obniżenie wydatków, aby kontynuować rozwój projektu." - Svetlana Enina, CFO
#2 Harmonogram
Rozwój musiał być przeprowadzony szybko, aby zaspokoić wymagania klienta i nie narazić na szwank zysków firmy. TOO CAD Systems wiedziało, że czekanie wiele miesięcy, aby zobaczyć pierwsze wyniki nie będzie opcją.
"System zarządzania zamówieniami wymaga elastyczności i zdolności do obsługi dużej liczby różnych przypadków biznesowych. Aby wdrożyć tak złożoną funkcjonalność, należałoby poświęcić solidne kilka miesięcy na wykonanie przynajmniej MVP." - Ibraghim Ushurbakiyev, Project Lead
Rozwiązanie: automatyzacja procesów biznesowych na AppMaster.io
Projektowanie bazy danych.
Zespół rozpoczął od projektowania bazy danych. Na platformie stworzyli wiele tabel reprezentujących zamówienia, pozycje zamówień, produkty i inne istotne informacje, takie jak kraje, ceny i wydarzenia. Stworzyli również tabelę do przechowywania informacji o partnerach, którzy później zalogują się do platformy i stworzą zamówienia.
Używając wizualnego projektanta, połączyli te tabele relacjami (jeden do jednego i jeden do wielu). Przypisali również typ danych dla każdego z pól.
Silnik bazy danych na AppMaster.io wykorzystuje PostgreSQL 13, co oznacza, że CAD Systems może go wgrać do dowolnej chmury kompatybilnej z PostgreSQL, takiej jak AWS czy Azure.
Logika biznesowa
Zespół stworzył następnie ponad 40 niestandardowych procesów biznesowych, reprezentujących różne scenariusze w ich logice biznesowej. Na przykład opracowali procesy do zatwierdzania danych przychodzących od partnerów, obliczania cen i rabatów dla produktów oraz przechowywania nowych zamówień w bazie danych.
CAD Systems poprosił programistów AppMaster.io o stworzenie nowej integracji z Autodesk API, która została szybko opracowana. Następnie byli w stanie podłączyć moduł Autodesk i rozpocząć korzystanie z API w zaledwie kilku kliknięciach.
Zamknęli również kilka powszechnie używanych operacji, takich jak konsultowanie się z API Autodesk w celu aktualizacji informacji o kliencie lub aktywacji nowej licencji, w oddzielne procesy biznesowe (powszechnie nazywane "refaktoryzacją kodu przez abstrakcję" w rozwoju oprogramowania). Następnie można było wykorzystać te operacje jako bloki w innych procesach biznesowych, bez konieczności ponownego tworzenia wszystkich funkcji za każdym razem.
Web Dashboard
Jeśli chodzi o frontend, zespół musiał stworzyć 2 aplikacje internetowe: jedną dla dystrybutora (CAD Systems), a drugą dla jego partnerów.
Portal dystrybutora zawierał dashboard z wszystkimi głównymi metrykami, takimi jak łączna liczba zamówień i partnerów oraz tabelę z realizowanymi zamówieniami. Powstało jeszcze kilka stron: przeglądanie wszystkich zamówień, zarządzanie produktami, cenami i krajami, a także strona do administrowania dostępem partnerów do systemu.
Zespół stworzył również stronę do przeglądania wszystkich szczegółów zamówienia. Do swojego niestandardowego procesu biznesowego podłączyli kilka przycisków do edycji zamówienia, dodania nowej pozycji zamówienia, aktualizacji cen poprzez Autodesk API oraz aktywacji licencji.
CAD Systems wykorzystał następnie moduł Authentication do szybkiego skonfigurowania pulpitu nawigacyjnego dla partnerów. Miał on funkcjonalność pokazywania wszystkich zamówień utworzonych przez partnera, tworzenia nowych zamówień oraz aktualizacji cennika.
Zespół zdefiniował również w module Authentication dwie role użytkowników: administratorów i użytkowników standardowych, ograniczając niektóre funkcje (poprzez middleware punktów końcowych w ustawieniach API) tylko do określonego personelu.
Wdrożenie
CAD Systems utworzył następnie 2 plany wdrożeniowe w chmurze AppMaster.io: jeden dla rozwoju, a drugi dla produkcji. Plan rozwojowy jest obecnie używany do testowania nowych funkcji, podczas gdy plan produkcyjny obsługuje już ponad 20 ich partnerów. Mogą oni monitorować wydajność swojej aplikacji za pomocą pulpitu nawigacyjnego ze statystykami.
Anton może też spać spokojnie wiedząc, że CAD Systems pozostaje całkowicie niezależny od chmury AppMaster.io. W każdej chwili zespół może przenieść binaria do dowolnego innego dostawcy chmury lub na serwery wewnętrzne, a także może wyeksportować kod źródłowy i kontynuować rozwój na własną rękę, jeśli pojawi się taka potrzeba (backend jest generowany za pomocą języka Go, natomiast frontend jest budowany za pomocą frameworka Vue 2).
Wyniki: 10x taniej i w <1 miesiąc
Dzięki wsparciu specjalistów z AppMaster.io, CAD Systems zakończyło swój projekt i uruchomiło rozwiązanie w mniej niż miesiąc. Firma obniżyła koszty, personel i czas realizacji tego projektu dzięki automatyzacji, modułom i funkcjom wykrywania błędów na platformie.
#1 Funkcjonalność
"W procesie zarządzania zamówieniami potrzebujemy dużej elastyczności, aby obsłużyć dużą liczbę różnych przypadków biznesowych, co udało nam się wdrożyć w projekcie na platformieAppMaster.io. Niezwykle łatwe jest również modyfikowanie i duplikowanie każdego z nich w dowolnym momencie, nawet dla pracowników nietechnicznych." - Ibraghim Ushurbakiyev, Project Lead
#2 All-in-one
"Tym, co wyróżniało dla nas platformęAppMaster.io w porównaniu z innymi rozwiązaniami no-code, takimi jak Integromat czy Zapier, była możliwość opracowania wszystkiego w jednym miejscu. Nie musieliśmy wymyślać, jak połączyć różne narzędzia i obawiać się, że któraś z tych integracji w pewnym momencie się zepsuje. Bardzo ceniliśmy sobie również możliwość wdrażania aplikacji na naszych lokalnych serwerach i eksportowania kodu źródłowego." - Anton Smirnov, CEO
#3 W ramach wyznaczonego terminu i budżetu
"Patrząc na projekt jako całość, oczywiste jest, że zmniejszyliśmy budżet na rozwój ponad 10 razy i uruchomiliśmy rozwiązanie w rekordowym czasie, korzystając z platformyAppMaster.io. Bez tej platformy no-code rozwój trwałby co najmniej sześć miesięcy." - Svetlana Enina, CFO
Podsumowując, zespół CAD Systems był w stanie znacznie zmniejszyć obciążenie swoich pracowników dzięki nowemu, zautomatyzowanemu systemowi zarządzania zamówieniami, nie tracąc przy tym żadnych nowych możliwości biznesowych.