System zarządzania barem oparty na MACH: zwiększona wydajność oprogramowania i szybkość przetwarzania zamówień

Firma Innowise opracowała kolekcję zintegrowanych aplikacji zaprojektowanych w celu ułatwienia płynnej interakcji między gośćmi baru a personelem.

Klient

Branża
Żywność
Region
USA
Klient od
2018

Nasz klient prowadzi dużą sieć barów zatrudniającą ponad 2000 pracowników.

Zgodnie z warunkami umowy NDA, konkretne informacje o kliencie nie mogą zostać ujawnione.

Wyzwanie

Gotowe rozwiązania programowe nie zapewniały odpowiedniego zarządzania zróżnicowanymi zasobami

Aby usprawnić operacje biznesowe, klient potrzebował oprogramowania, które obsługiwałoby działania związane z zarządzaniem zasobami ludzkimi, a także umożliwiało barom i klientom składanie, odbieranie i śledzenie zamówień.

Ze względu na różnorodność zadań wymaganych od rozwiązania, klient nie mógł polegać na aplikacjach o monolitycznej architekturze.

Wdrożenie

Pakiet aplikacji połączonych architekturą MACH

Zespół programistów Innowise zaproponował rozwiązanie składające się z trzech oddzielnych aplikacji, z których każda obejmowałaby inny aspekt działalności klienta. Aplikacje te byłyby oparte na modułowej infrastrukturze i zintegrowane ze sobą.

Nasi eksperci stworzyli trzy aplikacje, dwie dla personelu i jedną dla klientów. Informacje o pracownikach musiały być zawarte w aplikacji korporacyjnej. Druga aplikacja miała na celu uproszczenie procesu obsługi poprzez wyświetlanie informacji o rezerwacji i zamówieniu klienta oraz umożliwienie mu przekazania ich do kuchni. Aplikacja dla klientów zawiera wygodny interfejs do rezerwacji stolików (i zmiany ich lokalizacji), formowania zamówień, zostawiania napiwków i dokonywania płatności.

Zespół zdecydował się oprzeć cały projekt na architekturze MACH, ponieważ pozwoliłoby to na płynną integrację kilku aplikacji z jednym backendem. Wiele wysiłku włożono w zaprojektowanie przyjaznych dla użytkownika interfejsów i dodanie najnowocześniejszych funkcji.

Architektura MACH

Aby umożliwić łatwą integrację i płynne dostosowywanie aplikacji klienta, inżynierowie Innowise zdecydowali się oprzeć rozwiązanie na architekturze opartej na MACH. W przeciwieństwie do architektury monolitycznej, MACH pozwala na dodawanie, wymianę lub usuwanie komponentów technicznych bez żadnych problemów. Infrastruktura obejmuje następujące aspekty:

  • Mikrousługi. Nasz zespół zdecydował się na wykorzystanie mikrousług do tworzenia niezależnych elementów funkcjonalności, które były również wdrażane oddzielnie. W ten sposób zespół może dodawać nowe funkcje do aplikacji klientów bez zakłóceń;
  • API. Zespół programistów wykorzystał interfejsy API do integracji mikrousług, a także do połączenia ich z odpowiednimi bazami danych;
  • Oprogramowanie natywne Cloud. Aby ułatwić przechowywanie danych i zarządzanie nimi, a także zwiększyć potencjał skalowalności, nasi eksperci wdrożyli rozwiązanie AWS infrastruktury;
  • Bezgłowy. Dzięki oddzieleniu backendu od front-endu, nasi programiści byli w stanie zintegrować kilka aplikacji za pomocą jednego narzędzia back-end, ułatwiając przepływ danych między warstwami.

 

W oparciu o tę infrastrukturę zespół Innowise zbudował trzy aplikacje, które zaspokajają potrzeby różnych podmiotów: wewnętrzny system CRM do zarządzania działaniami personelu, rozwiązanie do zarządzania barami do obsługi zamówień oraz aplikację skierowaną do użytkowników do składania zamówień i znajdowania lokalizacji barów.

Wewnętrzny CRM

Nasz zespół stworzył system CRM dostępny dla wszystkich pracowników firmy. System ten umożliwia użytkownikom monitorowanie danych związanych z pracą pracowników, w tym ich godzin pracy, okresów urlopowych i zwolnień lekarskich. Ze względu na zróżnicowane harmonogramy pracowników, klient poprosił również o opracowanie narzędzia do śledzenia listy płac.

Aplikacja do zarządzania barem

Nasz zespół stworzył aplikację mobilną zorientowaną na tablety, zaprojektowaną w celu zwiększenia wydajności personelu baru w obsłudze klientów. Gdy klient usiądzie, pracownicy mają możliwość bezpośredniego wprowadzania zamówień i przekazywania ich do zespołu kuchennego. Ponadto aplikacja ułatwia śledzenie rezerwacji lub zamówień, które muszą zostać zrealizowane w określonym czasie.

Aplikacja skierowana do użytkownika

Aplikację klienta można pobrać zarówno z App Store, jak i Google Play. Umożliwia ona użytkownikom rejestrację konta, lokalizowanie pobliskich barów za pomocą mapy oraz składanie zamówień do odbioru. Kluczowe funkcje obejmują również rezerwację miejsc, dostosowywanie układu oraz składanie zamówień z wyprzedzeniem. Następnie do aplikacji została zintegrowana opcja płatności. Dodatkowo, aplikacja obsługuje napiwki.

Technologie i narzędzia

Typescript, Redux, React

Go, Gorilla Mux, Viper, Go-Celery, Mongo-Go, Go-Migrate, gRPC

AWS EC2, AWS EKS, AWS ECR, AWS SNS, AWS SQS, AWS S3, AWS API Gateway, AWS CloudWatch, AWS Cognito, AWS MongoDB Atlas, AWS OpenSearch

Docker, Docker Compose, Kubernetes

CI/CD

Travis CI, Codefresh

MongoDB, Elasticsearch

Proces

Do nadzorowania procesu rozwoju przyjęliśmy metodologię Scrum. Przepływ pracy został podzielony na cotygodniowe sprinty, z których każdy obejmował dwa etapy: wprowadzanie nowych funkcjonalności i rozwiązywanie istniejących problemów. Wdrożenia były planowane co cztery sprinty.

Zespół

12

Programistów back-end

4

Programistów front-end

4

Programiści mobilni

1

Projektant UI/UX

1

Inżynier DevOps

2

Inżynierowie QA

Wyniki

Lepsza wydajność systemu, większa szybkość przetwarzania zamówień

Firma Innowise zbudowała zestaw aplikacji do zarządzania barem w oparciu o architekturę MACH. Dzięki dodatkowej elastyczności klient ma teraz kompletny ekosystem aplikacji zsynchronizowanych na jednym serwerze, który może dostosować do swoich zmieniających się potrzeb.

System składał się z trzech aplikacji: aplikacja korporacyjna zapewnia pracownikom dostęp do informacji związanych z pracą; aplikacja do zarządzania barem oferuje interfejs, który pokazuje wszystkie ustawienia miejsc siedzących i zamówienia gości; za pośrednictwem aplikacji skierowanej do użytkownika goście mogą rezerwować stoliki, składać zamówienia, dokonywać płatności i dawać napiwki personelowi.

Czas trwania projektu
  • Od 2020 r.
  • Projekt nadal trwa; zapewniamy utrzymanie systemu.

43%

wzrost wydajności systemu

32%

szybsze przetwarzanie zamówień i rezerwacji

Skontaktuj się z nami

Umów się na rozmowę lub wypełnij poniższy formularz, a my skontaktujemy się z Tobą po przetworzeniu Twojego zgłoszenia.

    Prosimy o podanie szczegółów projektu, czasu trwania, stosu technologicznego, potrzebnych specjalistów IT i innych istotnych informacji.
    Nagraj wiadomość głosową na temat
    projekt, który pomoże nam lepiej go zrozumieć
    W razie potrzeby dołącz dodatkowe dokumenty
    Prześlij plik

    Można załączyć maksymalnie 1 plik o łącznej wielkości 2 MB. Ważne pliki: pdf, jpg, jpeg, png

    Informujemy, że po kliknięciu przycisku Wyślij Innowise będzie przetwarzać dane osobowe użytkownika zgodnie z naszą polityką prywatności. Politykę Prywatności w celu dostarczenia użytkownikowi odpowiednich informacji. Podanie numeru telefonu i przesłanie niniejszego formularza jest równoznaczne z wyrażeniem zgody na kontakt za pośrednictwem wiadomości tekstowej SMS. Mogą obowiązywać opłaty za wiadomości i transmisję danych. Możesz odpowiedzieć STOP, aby zrezygnować z dalszych wiadomości. Aby uzyskać więcej informacji, odpowiedz POMOC.

    Co dalej?

    1

    Po otrzymaniu i przetworzeniu Twojego zgłoszenia skontaktujemy się z Tobą wkrótce, aby wyszczególnić potrzeby projektu i podpisać umowę o zachowaniu poufności, aby zapewnić poufność informacji.

    2

    Po przeanalizowaniu wymagań, nasi analitycy i programiści opracowują projekt z zakresem prac, wielkością zespołu, czasem i kosztami szacunki.

    3

    Umówimy się z Tobą na spotkanie, aby omówić ofertę i dojść do porozumienia porozumienia.

    4

    Podpisujemy umowę i rozpoczynamy pracę nad projektem tak szybko, jak to możliwe.

    Спасибо!

    Cобщение отправлено.
    Мы обработаем ваш запрос и свяжемся с вами в кратчайшие сроки.

    Dziękuję!

    Wiadomość została wysłana.
    Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.

    Dziękuję!

    Wiadomość została wysłana. 

    Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.

    strzałka