A pracy było sporo. Tegoroczna edycja była pierwszą bez interakcji z ludźmi, więc zarówno zespół developerski, jak i testerski miał przed sobą bardzo trudne zadanie. Trzeba było wspiąć się na wyżyny swoich umiejętności, aby dopracować wersję jak najbliżej niedoścignionej perfekcji.
Wszystko musiało działać jak w zegarku, mając z tyłu głowy obawy, czy zdalnie damy radę wystarczająco szybko rozwiązać wszystkie problemy zawodników.
Pomysł pod tytułem "A może by tak edycja online? A może mobile?" narodził się już wcześniej. Coś zupełnie innego niż poprzednie edycje, nowe założenia i wyzwania. W obecnej rzeczywistości była to jedyna szłuszna droga, którą mogliśmy podążyć.
Lecz wiedzieliśmy że nie będzie to droga usłana płatkami róż, lecz bardziej offroad.
Założenia do wymagań były jasne, Android 6 lub wzwyż. Zaczęło się od koncepcji. Jak to ma działać... dziesiątki pomysłów i opinii, niezliczone burze mózgów. Pierwsze przepracowane godziny. Koncepcja cały czas ewoluowała. Pojawiły się pierwsze projeky graficzne MBM i koncepcje bugów, aż wkońcu upragnione "Mamy to".
Pierwsze kodowanie, po czym pojawiły się wersje. Dalsza ewolucja, zmiany, poprawki oraz ciągłe testy.
Sama aplikacja mobilna to ponad 20k linii kodu, dziesiątki godzin pracy poświęcone na jej napisanie oraz należyte dopracowanie. Dołóżmy do tego także bezpieczeństwo, wrażliwe dane musiały być przecież zaszyfrowane a kod obfuskowany na odpowiednim poziomie.
Nie zapominajmy także o komunikacji, gdyż MrBuggy8 to nie tylko aplikacja mobilna, to także serwer. Kolejne 10k linii kodu REST API, w tym dziesiątki walidatorów i metod sprawdzających poprawność danych. Dodatkowo szyfrowanie przesyłu danych, bezpieczne metody autentykacji zawodników i mamy kolejne dziesiątki przepracowanych godzin. Do tego musimy także dołożyć pracę administratorów oraz ich czas poświęcony na konfigurację samego serwera.
Baza danych to ponad 4k linni sql samej struktury bazy z zachowaniem odpowiedniego stopnia normalizacji... kolejne godziny pracy. Szata graficzna oraz grafika i czas poświęcony na jej zaprojektowanie i wykonanie także nie może zostać pominięty.
To wszystko ?
Oczywiście że nie, a testy? Masa środowisk i urządzeń do sprawdzenia, różne rozdzielczości, bezpieczeństwo, testy w chmurze device-ów...
To teraz na pewno wszystko.
Nie tak szybko, nie można przecież zostawić systemu bez precyzyjnych testów wydajnościowych oraz audytu kodu źródłowego. Ciągła optymalizacja pod posiadane zasoby i wyciąganie maksimum z przyjętego rozwiązania. Mimo, że w konkursie wzięła udział niecała setka uczestników, to w tym roku byliśmy przygotowani na 1k użytkowników pracujących na systemie w tym samym czasie.
Ogrom intensywnej pracy po to aby przygotować się na dzień zawodów jak najlepiej.
Wielkie podziękowania dla wszystkich zawodników i dla calego zespołu TestingCup, a także gratulacje dla zwycięzców.
Nasze walidatory i bezpieczniki nie odnotowały żadnego naruszenia w trakcie zawodów. Nie było prób sztucznego manipulowania ich przebiegiem oraz prób przesyłu sztucznie wygenerowanych wyników. Nikt z zawodników nie skończył przed czasem, ale wiemy że nie było łatwo.
PS. Serdeczne podziękowania dla Piotra Wicherskiego za udzielenie wsparcia merytorycznego odnośnie poziomu bezpieczeństwa aplikacji mobilnej MrBuggy Mobile.