Raport końcowy

1. Zdefiniowanie interfejsów do prezentacji, edycji i obsługi danych

W oparciu o diagram DFD wyszczególniamy cztery rodzaje interfejsów :

1.1 Użytkownik niezalogowany

Interfejs użytkownika niezalogowanego pozwala na przeglądanie zagrożeń naniesionych na mapę oraz proste wyszukiwanie zagrożeń według rodzaju lub stopnia zagrożenia. Dostęp do większej funkcjonalności uzyskać może poprzez dokonanie procesu rejestracji. Proces rejestracji pozwala na natychmiastowe utworzenie konta.

1.2 Użytkownik zalogowany

Użytkownik po zalogowaniu otrzymuje dostęp do wszystkich funkcjonalności użytkownika niezalogowanego. Uzyskuje możliwość administracji swoim kontem, poprzez możliwość obejrzenia swoich danych wprowadzonych podczas rejestracji. Rozbudowana została możliwość wyszukiwania o przeszukiwanie zagrożeń względem horyzontu czasowego. Użytkownik dysponuje możliwością ręcznego dodania zagrożenia.

1.3 Moderator

Prototyp interfejsu moderatora zawiera wszystkie funkcjonalności użytkownika zalogowanego.

1.4 Administrator

Administrator otrzymuje, oprócz wszystkich wymienionych wcześniej funkcjonalności, możliwości zarządzania kontami użytkowników. Dysponuje narzędziem do przeglądania wszystkich założonych kont, oraz możliwością ich manualnego założenia oraz usunięcia. Administrator może dokonać usunięcia zagrożenia. Panel administratora

2. Zdefiniowanie panelu sterowania aplikacji

Panel sterowania aplikacją jest w zasadzie zgodny z interfejsami wszystkich użytkowników (zalogowanego, moderatora oraz administratora). Patrząc pod kątem aplikacji potrzebne funkcje wyszczególnione w diagramie STD zostały ujętne w panelach użytkownika zalogowanego, moderatora oraz administratora.

3. Uruchamianie i testowanie aplikacji

Aplikacja uruchamiana i testowana jest na serwerze lokalnym. Podczas procesu testowaniu uwzględniliśmy :

  • rejestrację użytkowników,
  • logowanie / wylogowanie użykowników,
  • dodawanie i usuwanie zagrożeń,
  • przeglądanie zagrożeń,
  • wyszukiwanie zagrożeń,
  • obsługę kont użykowników.

Raport użytkownicy

4. Wprowadzanie danych

Dane w postaci mapy Krakowa wprowadzane sa on-line przy pomocy API do google - maps. Znajdują się one na zewnętrznych serwerach należących do Google. Ręcznie wprowadzane są dane opisujące zagrożenia. Proces rejestracji użytkownika odbywa się w dwojaki sposób. Administrator dysponuje możliwością recznego założenia konta. Dodatkowo każdy niezalogowany użytkownik ma możliwość automatycznej rejestracji.

5. Wdrażanie systemu do użytkowania

W obecnej chwili projektu jest na etapie „development”, wymaga wdrożenia po pełnym ukończeniu.
Projekt tworzony jest etapami:

  • Utworzenie i konfiguracja bazy danych PostgreSQL i PostGIS, konfiguracja połączenia z Ruby,
  • Tworzenie szkieletu aplikacji w Ruby on Rails,
  • Tworzenie migracji bazodanowej w Ruby on Rails,
  • Implementacja aplikacji w architekturze MVC (Model-View-Controller),
    • Model - opisuje dane i logikę programu,
    • Widok - wyświetla dane przechowywane w modelu,
    • Kontroler - przekształca żądania użytkownika na żądania zrozumiałe dla modelu.

Model View Controller

6. Przeprowadzenie szkolenia użytkowników.

W celu użytkowania serwisu konieczne jest zapoznanie się z metodami:

  • Rejestracji - rejestracja dokonywana jest za pomocą wybrania opcji „sign in” dostępnej w menu aplikacji. Po wypełnieniu i zatwierdzeniu formularza utworzone zostaje konto użytkownika,

Rejestracja

  • Przeglądania punktów - przeglądanie punktów dostępne jest na ekranie głównym aplikacji. Użytkownik po naciśnięciu na znajdujacy się na mapie punkt uzyskuje informacje dotyczące zagrożenia,
  • Obsługi wyszukiwania - wyszukiwanie dostępne jest z menu „search”. Następnie użytkownik może wybrać cechy interesujących go zagrożeń, które zostaną wyświetlone na mapie,

Wyszukiwanie

  • Dodawawania punktów - dodawnie punktu odbywa się poprzez menu „threat” i opcję „create threat”. Użytkownik po podaniu danych opisujących zagrożenie dokonuje potwierdzenia. Plik dodawany jest automatycznie do bazy danych.

7. Zapewnienie dokumentacji technicznej i użytkowej

Rolę dokumentacji technicznej pełni czytany właśnie raport końcowy. Składa się on z trzech części, będący rówocześnie poszczególnymi etapami realizacji projektu:

  • Projekt konceptualny,
  • Projekt logiczny,
  • Raport końcowy,

Dodatkowo informacje zawarte w raporcie zostały zamieszczone w systemie wiki.

8. Rozwijanie i modyfikowanie aplikacji

W projekcie zaimplementowano szkielet kompletnego portalu społecznościowego opartego o diagram hierarchi funkcji. W celu uzyskania pełnej zakładanej funkcjonalności należy dokonać utworzenia ciała funkcji realizujących:

  • obsługa komentarzy, czyli dodawanie, przeglądanie oraz moderowanie komentarzy,
  • statystyki, czyli tworzenie oraz zarządzanie raportami,
  • mechanizm głosowania, oparty o wiarygodność użytkowników system potwierdzający prawdziwość zagrożeń,
  • obsługę zdjęć,
  • możliwość edycji danych użytkownika,
  • wyszukiwanie zagrożeń po obszarze.

Po dokonaniu tego procesu należy dokonać wdrożenia systemu opisane w wcześniejszych rozdziałach.
Panel sterowania aplikacji wymaga uzupełnienia działów:

  • about - informacje o projekcie,
  • contact - dane kontaktowe,
  • faq - instrukcja obsługi serwisu,
  • privacy - warunki użytkowania aplikacji.

Również istotną rzeczą jest dodanie obsługi wielojęzykowości. W obecnej chwili aplikacja stworzona jest jedynie z myślą o użytkownikach dysponujących podstawową znajomością języka angielskiego.
W kwestii technicznej istnieje możliwość ukierunkowania serwisu w stronę technologii Ajax, która mogłaby być jeszcze mocniej wykorzystywana w celu ułatwienia obsługi systemu przez użytkownika. Dodatkowo proces rejestracji należy wyposażyć w system potwierdzenia dokonania rejestracji przez konkretnego użytkownika. Można zrealizować to poprzez wysyłanie wiadomości e-mail weryfikującej prawdziwość podanej poczty elektronicznej.

9. Opracowanie doświadczeń wynikających z realizacji projektu

Całkowity czas realizacji prototypu wyniósł 5 miesięcy. W początkowej fazie projektu związany był on z potrzebą zapoznania się z wiedzą teoretyczną dotyczącą realizowanego zagadnienia. Po dokonaniu wyboru technologii kolejny okres czasu został przeznaczony na dogłębne zapoznanie się z wybranymi narzędziami. Najdłuższy okres czasu został poświęcony na realizację właściwej aplikacji.
Koszty projektu były zerowe. Wynika to z dużej dostępności materiałów pomocnicznych na darmowych serwisach. Niestety, brak opłat za korzystanie z materiałów często odbijał się na jakości prezentowanych rozwiązań. Podczas realizacji aplikacji bardzo często zmuszeni byliśmy do przywracania starszych wersji projektów. Spowodowane to było faktem, że część rozwiązań działała w sposób odmienny niż prezentowano to w materiałach dydaktycznych.
W przypadku wdrożenia systemu do czasu realizacji projektu należałoby dodać czas potrzebny na przeprowadzenie dogłębnych testów aplikacji na serwerze globalnym, przy znacznym obciążeniu ze strony użytkowników. W przypadku zrealizowanego prototypu dokonano jedynie testów na serwerach lokalnych.

10. Użyte technologie

Projekt został oparty o następujące technologie:

  • PostgreSQL - system zarządzania relacyjnymi bazami danych. Zastosowany do utworzenia bazy danych i przetrzymywania informacji koniecznych do funkcjonowania systemu,
  • Ruby on Rails - framework służący do tworzenia aplikacji webowych. Wykorzystywany w celu obsługi bazy danych oraz tworzeniu strony internetowej,
  • Google Maps Api -biblioteki firmy Google służące do prezentacji zagrożeń na mapie Krakowa,
  • JavaScript - biblioteki wykorzystywane w celu zapewnienia interakcji z użytkownikiem oraz obsługę zdarzeń,
  • Scriptacoulos -biblioteka programistyczna JavaScript oparta na Prototype JavaScript Framework. Zastosowany w celu uzyskania animacji interfejsu oraz wykorzystania elementów opartych na obiektowym modelu dokumentu.

11. Wykaz literatury

Powrót do strony projektu

pl/dydaktyka/sbd/2009/projekty/indect2/projekt_raport_koncowy.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0