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.