W skrócie:
- Klient: Polski Związek Triathlonu
- Zakres pracy: Back office, aplikacja webowa
- Rozpoczęcie projektu: 01.03.2021
- Członkowie zespołu: Frontend Developer, Backend Developer, UX Designer, Project Manager
- Branża: Sport
- Technologie: ASP.NET Core, React.js
Kim jest nasz klient?
Naszym klientem jest Polski Związek Triathlonu. To polska organizacja powstała w 1989 roku, która organizuje zawody triathlonowe. Organizacja zrzesza sportowców, trenerów oraz działaczy polskiego triathlonu.
Problemy i wyzwania, z którymi przyszedł do nas klient
Polski Związek Triathlonu zwrócił się do nas z prośbą o zbudowanie nowego systemu oraz zaprojektowanie nowej infrastruktury. Klient przy rozpoczęciu współpracy z nami posiadał już system informatyczny.
Zdecydowaliśmy się na stworzenie nowego systemu z racji tego, że poprzedni system był problematyczny w rozbudowie. W nowej wersji systemu klient chciał skupić się głównie na lepszej obsłudze procesów biznesowych oraz na prostocie obsługi zarówno aplikacji mobilnej jak i webowej.
Zarządzanie licencjami sportowców
Każdy zawodnik Polskiego Związku Triathlonu musi wykupić oficjalną licencję. Zarządzanie licencjami, płatnościami, przypomnieniami o wygasających licencjach jest czasochłonne. Każdy zawodnik dodatkowo powinien posiadać ważne badania medyczne, a w przypadku ich wygaśnięcia sportowiec powinien otrzymać automatyczne powiadomienie.
Duża część zawodników należy do swoich lokalnych klubów. Naszym wyzwaniem było umożliwienie zamawiania licencji z poziomu systemu. Dodatkowo musieliśmy dostosować aplikację tak, aby każdy klub mógł w łatwiejszy sposób zarządzać licencjami swoich zawodników, aby miał możliwość dokonywania zakupu licencji dla swoich sportowców oraz aby pracownicy klubu mieli możliwość weryfikacji m.in. ważności badań lekarskich swoich zawodników.
Automatyczne rankingowanie zawodników
Kluczowym modułem jest moduł automatycznych rankingów zawodników. Moduł rankingów na podstawie danych zebranych przez cały rok ze wszystkich zawodów oraz wydarzeń automatycznie wyłania zwycięzców w danych kategoriach wiekowych czy w kategoriach płci. Zadaniem modułu jest wyłonienie najlepszego zawodnika w Polsce w dyscyplinie triathlonu i jest za to odpowiedzialny specjalny algorytm wyliczania rankingów. Wiedzieliśmy, że algorytm raportowania będzie zmieniał się bardzo często, więc podczas prac nad nim zwracaliśmy uwagę na to, aby kod był łatwy w modyfikacji w zależności od aktualnych wymagań.
Poprawa intuicyjności i wyglądu interfejsu użytkownika
Dla naszego klienta ważne było również to, aby aplikacja wyglądała nowocześnie oraz, aby klienci i pracownicy w łatwiejszy sposób mogli wykonywać swoje zadania w systemie.
Proces
Z racji tego że klient przy rozpoczęciu współpracy z nami posiadał już system informatyczny, na początku wdrożyliśmy się w aktualne rozwiązanie, aby zaplanować prace nad nowym systemem.
Z klientem pracowaliśmy zgodnie z metodyką Scrum, planując zadania na kolejny Sprint, czyli w przypadku tego projektu, kolejny tydzień prac. Łączyliśmy się również na codzienne rozmowy tak, aby na bieżąco informować klienta o postępach.
Rezultaty
Automatyczne powiadomienia o wydarzeniach sportowych
W aplikacji została wdrożona funkcjonalność, która automatyczne informuje użytkowników o określonych wydarzeniach sportowych. Wszystkie wiadomości e-mail do użytkowników w aplikacji są wysyłane przy pomocy usługi SendGrid.
Wydajniejsze ładowanie zdjęć
Dokonaliśmy integracji z usługą Azure Blob Storage pozwalającej na przechowywanie zdjęć do licencji i innych plików w chmurze. Dzięki integracji z usługą Azure Blob Storage zdjęcia ładowały się znacznie szybciej.
Moduł rankingów
W aplikacji znajduje się moduł rankingów umożliwiający importowanie danych zawartych w arkuszach kalkulacyjnych, automatyczne dopasowywanie użytkowników systemu i naliczania punktów rankingowych zdobytych przez poszczególnych zawodników w sezonie.
Automatyczne dopasowywanie sportowców do wyników
Funkcjonalność "Dopasuj użytkownika" umożliwia automatyczne dopasowywanie zarejestrowanych użytkowników do wyników zawodów dostępnych w systemie. Algorytm wykorzystuje w tym celu dane osobowe (nazwisko, wiek, płeć itd.) oraz inne dane dostępne w systemie (posiadana licencja). Umożliwia to efektywne wprowadzanie wyników zawodów przy jednoczesnym naliczaniu punktów rankingowych sportowców w czasie rzeczywistym.
Moduł "Punkty rankingowe" i "Ranking główny" są w istocie jednym modułem rankingowym. Punkty rankingowe przypisywane są do użytkowników i na ich podstawie wyliczany jest ostateczny rezultat zawodnika, prezentowany w zakładce "Ranking główny". Aby punkty rankingowe były wliczane do rankingu głównego, muszą one spełniać pewne wymagania (określone w uchwałach Polskiego Związku Triathlonu). Ranking główny prezentuje zdobycze punktowe użytkowników na przestrzeni sezonu i na tej podstawie określane jest ostateczne miejsce zdobyte przez zawodnika w danym roku.
Zarządzanie dostępnymi licencjami
W panelu Back Office pracownicy Polskiego Związku Triathlonu mają możliwość m.in. dodawania nowych typów licencji oraz zmiany cen aktualnych licencji.
Podczas dodawania nowych licencji mamy możliwość wyboru typu licencji, czasu dostępności licencji do kupienia, ceny, opisu oraz nazwy. W zależności od wybranego typu licencji pojawiają się dodatkowe pola do wyboru w sekcji z dodatkami.
W panelu mają też możliwość weryfikować dokonane zamówienia licencji przez sportowców. Pracownicy z poziomu szczegółów zamówienia widzą czy dany sportowiec ma dodane badania lekarskie, zdjęcie sportowca oraz inne szczegóły licencji.
Moduł zamówień grupowych
Zamówienia grupowe umożliwiają administratorom klubów sportowych zakup licencji zawodniczych dla członków klubu. Proces zakupu licencji jest zbliżony do tego dokonywanego przez użytkowników (należy przesłać zdjęcia i aktualne badania lekarskie w przypadku zawodników). Ma on za zadanie ułatwić zarządzanie zawodnikami poprzez przyspieszenie procesu kupna licencji zawodniczych i trenerskich. Administrator klubu dokonuje zamówienia grupowego i wypełnia wszelkie formalności. Wówczas użytkownik nie potrzebuje dodatkowo przesyłać innych dokumentów, aby otrzymać licencję - wszystkie dokumenty przesyła administrator klubu. Zakup licencji możliwy jest tylko dla sportowców zweryfikowanych przez Polski Związek Triathlonu.
Moduł zarządzania dla pracowników Polskiego Związku Triathlonu
W panelu back office pracownicy mają również możliwość łatwego zarządzania użytkownikami, licencjami użytkowników, wydarzeniami, klubami, licencjami klubowymi oraz trenerami.
Pracownicy mają wgląd do profilu każdego zawodnika, a także do: jego wyników, korespondencji mailowej i aktywności zawodnika w systemie, a także do jego osiągnięć oraz aktywnych licencji.
W funkcjonalności "Licencji użytkowników" pracownicy mogą weryfikować badania medyczne oraz zdjęcia przesłane przez sportowców. Mogą dokonać edycji danych, sprawdzić wygenerowany podgląd licencji. Podczas wysyłania zdjęć badań oraz dodawania zdjęcia osobistego sportowca pojawia się okno szybkiej edycji zdjęcia, gdzie pracownik może przykładowo wykadrować dodane zdjęcie.
Zarządzanie wydarzeniami jest również możliwe z poziomu panelu back office. Pracownicy mogą zmieniać widoczność wydarzeń, dodawać nowe konkurencje do konkretnych wydarzeń oraz weryfikować wyniki.
W edycji klubu pracownicy mają możliwość weryfikacji szczegółów danego klubu, weryfikacji licencji klubowych, listy członków oraz administratorów klubu. Z poziomu szczegółów klubu mamy możliwość wysłania zaproszenia do konkretnego zawodnika. Po uzupełnieniu danych zawodnik otrzymuje wiadomość e-mail w celu zaakceptowania zaproszenia.
Zarządzanie dokumentami
Wdrożyliśmy również moduł zarządzania dokumentami. Można tutaj umieszczać wszystkie ważne dokumenty pod określonymi kategoriami. Mogą to być różnego rodzaju uchwały, komunikaty, materiały szkoleniowe czy prezentacje. Dokumenty mogą mieć status publiczny lub prywatny. Wówczas materiały publiczne są dostępne dla wszystkich, a prywatne tylko dla określonych użytkowników.
Moduł aktywności użytkowników
W module aktywności użytkowników pracownicy PZTri mogą śledzić zmiany dokonywane w systemie takie jak zmianę licencji i danych konkretnych użytkowników, edycję ról, resetowanie haseł, aktualizowanie danych licencji itp. Dzięki temu modułowi pracownicy mogą śledzić wszystkie zmiany dokonywane przez kluby oraz sportowców. Wszystkie zdarzenia można przefiltrować po rodzaju aktywności, dacie wystąpienia oraz można również skorzystać z wyszukiwarki.
Podsumowanie:
Wdrożony system działa na serwerze produkcyjnym. Usprawniliśmy główne procesy przebiegające w Polskim Związku Triathlonu. Zautomatyzowaliśmy procesy zakupu i uaktualniania licencji, co pozwala na oszczędność czasu, a także usprawnia pracę pracowników PZTri. Dodatkowo wprowadziliśmy moduł, który automatycznie wprowadza wyniki zawodów, a także na bieżąco nalicza punkty rankingowe sportowcom. Obecnie w systemie zarejestrowanych jest ponad 60 000 użytkowników, którzy posiadają ponad 70 000 licencji. Dodatkowo poprawiliśmy wygląd oraz wprowadziliśmy ulepszenia interfejsu użytkownika, które wpływają na komfort korzystania z aplikacji. Interfejs stał się bardziej intuicyjny, a korzystanie z niego łatwiejsze i przyjemniejsze. Cały czas wprowadzamy nowe zmiany w systemie, które pozwalają na automatyzację kolejnych procesów biznesowych w organizacji klienta.