Wymagania – Lokalizator
Transkrypt
Wymagania – Lokalizator
Filip Borowiec Wojciech Staszkiewicz Jakub Sygnowski Miłosz Świzdor Wymagania – Lokalizator Klient na iPhone Ekran logowania Aby dostać się do aplikacji mobilnej, musimy się zalogować, loginem i hasłem identycznym jak do serwisu WWW. Ekran logowania jest standardowy, zawiera pole w które należy wpisać login, pole w które wpisuje się hasło, oraz guzik - „Zaloguj”. Nieudane logowanie powoduje wypisanie komunikatu z prośbą o ponowienie próby. Ekran główny Po poprawnym zalogowaniu, dostajemy się do głównego ekranu aplikacji, który jest przedstawiony na lewej makiecie. Klikalne przyciski to „On/Off”, „Nowa Trasa” oraz „Ustawienia”. Domyślnie przycisk „On/Off” jest w stanie „Off”, odpowiedzialna za stan połączenia kontrolka jest czerwona i znajduje się obok niej napis „Rejestrowanie wyłączone”, przycisk „Nowa trasa” jest nieaktywny. • Naciśnięcie przycisku „On/Off” powoduje zainicjowanie nowej trasy i próbę rozpoczęcia jej rejestrowania. Stan przycisku zmienia się na „On”. Przycisk „Nowa trasa” staje się aktywny. Ponowne naciśnięcie „On/Off” powoduje powrót jego stanu do „Off”, aktualna trasa zostaje zakończona i aplikacja przestaje próbować ją rejestrować. Przycisk „Nowa trasa” staje się nieaktywny. • Naciśnięcie aktywnego „Nowa trasa” powoduje zakończenie aktualnej trasy i rozpoczęcie nowej. • Gdy jest włączone rejestrowanie trasy i informacje są w poprawny sposób odbierane przez serwer, kontrolka pod napisem „Stan połączenia” jest zielona i znajduje się obok niej napis „Ok”. Jeśli nie ma połączenia z internetem, kontrolka jest żółta i znajduje się obok niej napis „Brak połączenia z internetem”. W takiej sytuacji, informację o położeniach są magazynowane wewnątrz aplikacji – w celu ich późniejszego przesłania na serwer, gdy tylko zajdzie taka możliwość. Istnieje możliwość utraty dokładności trasy, gdy kontrolka pozostaje przez długi czas żółta. Wynika to z ograniczoności pamięci dostępnej aplikacji. Kontrolka jest czerwona i znajduje się obok niej komunikat: „Rejestrowanie wyłączone” gdy przycisk „On/Off” jest w stanie „Off”; a „Brak połączenia GPS” - gdy telefon nie jest połączony z GPS. Gdy kontrolka jest czerwona, nie następuje rejestracja żadnych informacji. • Naciśnięcie przycisku Ustawienia, przenosi nas do widoku przedstawionego powyżej po prawej stronie. Ekran ustawień W tym widoku mamy możliwość konfiguracji aplikacji. • Z rozwijanego menu pod napisem „Częstotliwość zapisu pozycji”, można wybrać co ile chcemy aby nasza pozycja była zapisywana. Dostępne wartości to: 1s, 10s, 60s, 5m. • Rozwijane menu pod napisem „Częstotliwość wysyłki danych”, pozwala wybrać jak często aplikacja ma przesyłać dane na serwer. Dostępne są wartości: 1s, 10s, 60s, 5m, 1h. • Naciśnięcie przycisku „Zapisz”, powoduje powrót do poprzedniego widoku i zapisanie zmian. • Naciśnięcie przycisku „Anuluj”, powoduje powrót do poprzedniego widoku bez zapisywania zmian. Aplikacja WWW Panel logowania Pierwszą rzeczą którą użytkownik musi wykonać w celu skorzystania z aplikacji WWW jest zalogowanie się loginem i hasłem zrealizowane w standardowy sposób. Po wpisaniu poprawnego loginu i hasła użytkownik przenoszony jest do strony głównej - „podgląd tras”, widocznej na makiecie, w przeciwnym wypadku użytkownik pozostaje w panelu logowania i zostaje wypisany odpowiedni komunikat. Zmienić makiete na taka bez ‘liczby postojow, bo tego nie napisalismy :P Strona główna To miejsce w którym możemy obserwować zarejestrowane trasy. W prawym górnym roku jest wiadomość, jako kto jesteśmy zalogowani. • Użytkownik może wylogować się, klikając „Wyloguj”, co spowoduje powrót do ekranu logowania. • Kliknięcie w przyciski umieszczony obok napisów „Od:” lub „Do:” powoduje pokazanie się standardowego okienka wyboru daty. Wybrana i zatwierdzona data zostaje wyświetlona obok odpowiedniego napisu oraz uwzględniona jako filtr. • Z rozwijanego menu pod napisem „Wybierz trasę:” można wybrać trasę do obejrzenia, spośród tras rozpoczynających się między dniem wybranym w polu obok „Od:” (lub dowolnie wcześnie, jeśli nic nie zostało w nim wybrane), a dniem wybranym w polu obok „Do:” (lub dowolnie późno w analogicznym przypadku). Trasy identyfikowane są numerem wg kolejności dodawania oraz czasem rozpoczęcia. Wybranie pewnej trasy skutkuje wyświetleniem jej w prawej części ekranu na mapie. Nad mapą znajduje się nazwa identyfikująca aktualnie wyświetlaną trasę. Po lewej stronie mapy, pod menu odpowiadającym za filtrację, wyświetlają się statystyki wybranej aktualnie trasy, tj. kolejno, maksymalna prędkość, przebyty dystans, czas przebycia. • Kliknięcie przycisku „Ustawienia” przenosi użytkownika do ekranu ustawień • Punkty trasy są na mapie oznaczone znacznikiem (strzałką), a punkty, do których są dołączone zdjęcia, symbolem zdjęcia. Po kliknięciu w symbol zdjęcia, wybrane zdjęcie zostaje wyświetlone na ekranie. Aby je ukryć, należy ponownie kliknąć w ikonę zdjęcia Strona ustawień Na tej stronie możemy konfigurować sposób prezentacji tras. • Istnieje w nim możliwość sprecyzowania koloru trasy za pomocą rozwijanego menu znajdującego się obok napisu „Kolor trasy:”. Dostępne kolory to: żółty, czerwony, zielony, niebieski, czarny i fioletowy. • Przycisk „Zapisz” powoduje powrót do strony głównej i zapisanie zmiany. • Przycisk „Anuluj” powoduje powrót do strony głównej i porzucenie zmiany. Wymagania niefunkcjonalne Aplikacja kliencka będzie napisana we frameworku PhoneGap udostępnianym na licencji Apache 2.0 License z przeznaczeniem dla telefonów iPhone z iOS z GPS i GPRS. Serwis WWW stworzony zostanie w Django 1.5 dostępnym na licencji BSD. Całość napisanego przez nas oprogramowania będzie dostępna tylko w postaci kodu wykonywalnego/strony WWW bez dostępu do kodu aplikacji i udostępniana „as is” - bez możliwości wprowadzania do niej zmian przez klienta. Aplikacja WWW będzie korzystać z gotowych map dostarczanych przez Google Maps na zasadach opisanych w dokumentacji Google Maps API. Aplikacja mobilna musi być przystosowana do działania w tle. Aplikacja WWW będzie uruchomiona na serwerze students.mimuw.edu.pl i jej wydajność będzie zależała od aktualnej przepustowości ww. serwera. Aby uzyskać większy stopień niezawodności i obsługę większej liczby klientów, należy przenieść aplikację na dedykowany serwer. Komunikacja pomiędzy aplikacją mobilną i serwisem WWW będzie odbywać się za pomocą protokołu JSON i nie będzie szyfrowana. Przesyłane hasła będą haszowane (md5). Tworzone interfejsy będą proste i przejrzyste.