Przejdź do treści

Czas realizować mój plan… cz.3

Piłka nożna zdecydowanie jest tematem spoza moich zainteresowań, a moja znajomość zasad obowiązujących podczas meczu ogranicza się do gola, czerwonej i żółtej kartki. Tym dziwniejsze jest to że moje drugie produkcyjne wdrożenie dotyczyło właśnie tematu piłki nożnej. Luty poświęciłem na zgłębianie zasad obliczania wyników podczas turnieju, oraz implementacji ich w sposób zrozumiały dla komputera. Po wielu konsultacjach z ekspertami oraz prezentacji prototypu przyszedł czas na wdrożenie. Teraz już wiem, że rozwijanie tego prototypu ma sens i tutaj właśnie docieramy do kolejnej części mojego planu który zacząłem realizować w roku 2018.

Plan był taki, aby oferować klientom oprogramowanie wraz z infrastrukturą. Niestety rzeczywistość zweryfikowała moje plany, ponieważ aktualizowanie, monitorowanie i skalowanie kontenerów dla więcej niż jednego klienta byłoby drogą przez mękę. Muszę zatem wycofać się z tego pomysłu i przejść do modelu SaaS. Użytkownik powinien móc założyć konto, dodać drużyny którymi zarządza, utworzyć turnieje i zaplanować mecze. Wymaga to jednak podziału na pewne organizacje, aby uniknąć konfliktu nazw turniejów oraz drużyn między organizacjami. Tak samo użytkownik powinen móc być zaproszony do danej organizacji.

W ramach aplikacji powstało już kilka turniejów które dały mi szersze spojrzenie na to jak takie wydarzenia są organizowane. Przede wszystkim trzeba postawić na elastyczność. Na początku próbowałem zapinać jakieś workflow do turnieju, ale prędzej czy później okazywało się że nie spełnia to wymagań użytkowników. Wszelkie wymagane pola musiałem zmienić na opcjonalne, aby zapewnić pełną elastyczność w tworzeniu i zarządzaniu turniejem. Mogę jedynie ostrzegać użytkownika że mecz z danymi drużynami już istnieje w danej fazie turniejowej, lub w grupie. Nie mogę blokować dodawania takich wydarzeń, bo nie wiem w jaki sposób oprogramowanie może być wykorzystywane.

Projekt ten uczy mnie tego, że nie zawsze to co ja rozumiem jest poprawne i powinienem wszystkie zmiany konsultować. Dlatego też wszelkie automatyzacje powinny być bardzo ostrożnie wdrażane, a użytkownik powinien mieć możliwość modyfikacji absolutnie wszystkiego.

Nie spodziewałem się, że pierwsza aplikacja o której będę myślał bardziej pod względem sprzedażowym będzie dotyczyła sportu na którym się nie znam, ale od czego są konsultacje, środowiska testowe oraz czat GPT. O wprowadzeniu możliwości zakładania konta nawet nie myślę, ale muszę być otwarty na „wpuszczanie” ludzi do aplikacji. Dopiero kiedy przez jakiś czas nie będę musiał robić poprawek oraz tłumaczyć korzystania z aplikacji będę mógł myśleć o jakiejś becie. Do tego czasu uczę się i rozwijam appkę.

Ciekawe co przyniesie przyszłość.