Upload
proidea
View
229
Download
1
Embed Size (px)
Citation preview
O mnie
● Łukasz Piotr Łuczak● Ojciec i mąż● 8/12/18 lat doświadczenia w IT● Software Engineer / Architect● Technical Leader / CTO● Doktorant
Klient
● Obsługuje zawody konne w zakresie przygotowania list startowych, przebiegu konkursów, przygotowywania list wynikowych oraz komunikacji z organizacjami związkowymi
● Robi to od wielu lat● Posiada desktopowe rozwiązanie, które spełnia
swoją rolę choć nie jest doskonałe
Wersja 1
● Potrzebne rozwiązanie umożliwiające zapisywanie się na zawody oraz przetwarzanie tych zapisów
● Potrzebne rozwiązanie pozwalające na prezentowanie na żywo wyników konkursu
● Niech to rozwiązanie korzysta z bazy danych zawodników oraz niech zawodnicy sami mogą się dodawać do bazy
Wersja 1 cd
● Niech to rozwiązanie komunikuje się z chronometrem
● W sumie możemy napisać aplikację od nowa
Wersja 1 cd
● Niech to rozwiązanie komunikuje się z chronometrem
● W sumie możemy napisać aplikację od nowa
● Robimy aplikację webową!● PHP (ZF2, Doctrine, DoctrineExtensions),
MySQL, JavaScript (jQuery), Twitter Bootstrap
Wersja 2
● „Wygląda świetnie, ale co z przypadkami kiedy nie będę mieć dostępu do internetu na zawodach”
● „Nie, ta aplikacja nigdy nie będzie sprzedawana chcę ją mieć tylko dla siebie!”
● Weźmy xamp'a!● Ale co z synchronizacją danych?● Dopiszmy moduł do Doctrine
Moduł Doctrine
● Bazując na Doctrine Extenstions● Dodając sporo ręcznych wywołań filtrów w
kodzie oraz uzupełniając widok o logikę● Opracowujemy rozwiązanie pozwalające na
logiczne blokowanie wierszy oraz obsługę ich synchronizacji
Wersja 2 cd
● „Jest dobrze ale podczas zawodów uzupełniam dane zawodników, koni i klubów. Chciałabym te dane mieć synchronizowane z centralą”
● Skorzystajmy z rozwiązania jakie przygotowaliśmy
● Dołóżmy do niego moduł różnicowy i niech operator się martwi
Wersja 3
● „A czy nie można tego zrobić jakoś inaczej. Nie zawsze mam dostępne laptopy na zawodach”
● „Aha i jeszcze jak są zawody WKKW to operatorzy pracują na kilku stanowiskach nad jednym konkursem”
● Hmm... to może jakiś lokalny serwer dedykowany? A może jakieś rozwiązanie boksowe?
Wersja 3 cd
● „Aha, przy rozpręrzalni potrzebuję wyświetlać informacje kto będzie jechał a także bieżący ranking.”
● „W sumie sędziowie też powinni to widzieć”● Na rozprężalnie można dać smart tv i niech
wyświetla, a dla sędziów albo komputery albo posy albo ….
● Ok. Bierzemy Raspberry Pi!
Hardware
● Zainstalowane środowisko● MySQL robi problemy – zmieniamy na PostgreSQL● Rozwiązanie udostępnia stronę po sieci na potrzeby
zawodów● Rozwiązanie potrafi komunikować się z serwerem i
synchronizować informacje● Ale pod rozwiązanie nie można podłączyć monitora,
myszki i klawiatury● Już można
Wersja 4
● „A gdybym chciała sprzedać to klientom”● „Ok, rozwiązanie na stronie jest dobre ale wiesz
konkurencja ma takie co się instaluje”● Jak zabezpieczyć PHP'a?● IonCube?● Klucze Hasp?
Stan obecny
● Gotowa aplikacja webowa z modułami: zapisy, wyniki, obsługa zawodów
● Moduł obsługa zawodów opracowany jako moduł dostępny w sieci lokalnej i zamknięty w boksie
● Dostępny boks dla monitorów w rozprężalni, sędziów i spikera
● W testach używanie online przez klientów● W opracowaniu rozwiązanie do użytku offline przez
klientów
Stan obecny
● Gotowa aplikacja webowa z modułami: zapisy, wyniki, obsługa zawodów
● Moduł obsługa zawodów opracowany jako moduł dostępny w sieci lokalnej i zamknięty w boksie
● Dostępny boks dla monitorów w rozprężalni, sędziów i spikera
● W testach używanie online przez klientów● W opracowaniu rozwiązanie do użytku offline przez
klientów
Kontakt
● Twitter: lukasz_luczak● LinkedIn: lukaszluczak● About.me: lukasz.piotr.luczak● Web: lukaszluczak.pl● Mail: [email protected]