To jest stara wersja strony!
Projekt stanowi podstawę bazodanową dla projektu realizowanego z przedmiotu Technologie i Programowanie WWW.
Projekt ma być prostym w obsłudze, darmowym programem on-line dzięki któremu kobiety mogą monitorować okresy swojej płodności. Ma dać możliwość komputerowej dokumentacji oraz interpretacji obserwowanych objawów płodności.
Zastosowanie pewnej metody objawowo-termicznej prof Rotzera (wskaźnik Pearla = 0,2) pozwala na prowadzenie bieżącej analizy komputerowej i wyciąganie wniosków w postaci określenia poszczególnych faz cyklu miesiączkowego. Dodatkowo analiza może zostać wzbogacona o inne metody.
Rozwiązanie które proponujemy nie występuje na polskim rynku. Program jako że będzie darmowy i ogólnie dostępny będzie na pewno konkurencyjny dla dostępnej płatnej wersji angielskiej.
Jeśli program stanie się popularny, będziemy mogli umieścić na nim reklamy.
Analiza stanu wyjściowego
Istnieją 2 podobne rozwiązania, jednak każdy z nich ma wyraźne braki które chcemy uzupełnić.
Grupa klientów jest ta sama, pary stosujące naturalne metody planowania rodziny.
Jeden projekt jest wortalem: www.fertilityfriend.com . Posiada on bardzo dużą, ciagle rozwijaną funkcjonalność. Jest to program płatny. Dla zachęcania nowych klientów dostępna jest ograniczona wersja bezpłatna oraz 1 miesiąc darmowego dostępu do części VIP. Opłata za stały dostęp to 10$/miesiąc. Nie posiada wersji polskiej.
Drugi produkt z tej kategorii to program CTLife www.ctlife.pl . Jest to polski program, dostępny tylko w wersji desktopowej. Do tego jest on płatny 100 zł za licencję jednoosobową.
Analiza wymagań użytkownika (wstępna)
Uzytkownik chce otrzymać prosty, darmowy program gdzie bez wysiłku będzie mógł wprowadzać dane i otrzymywać jednoznaczne wyniki.
Ograniczeniem jest to, że musimy zapewnić dyskrecję i bezpieczeństwo wprowadzanych danych, także danych osobowych.
Główne funkcjonalności (must):
- Zakładanie nowych kont, personalizacja : zmiana ustawień
- Wprowadzanie parametrów odpowiadającym danym objawom płodności, zapis do bazy danych.
- Grafy. Na podstawie zgromadzonych danych moduł liczący przeprowadza analizę i wyznacza okresy płodności / niepołodności. Można również generować czytelne wykresy (historia cyklu, fazy owulacji)
- Pomoc. Jak korzystać z aplikacji.
- Informacje o metodzie naturalnej antykoncepcji.
Funkcjonalności dodatkowe (should):
Funkcjonalności dodatkowe (could):
- Udostępnianie wybranych danych i wykresów innym użytkownikom
- SOAP
Funkcjonalności dodatkowe (would):
- Aplikacja w J2ME do wprowadzania danych, apl. do obslugi serwisu (przegladanie serwisu, njawazniejszych danych)
- zmiana wyglądu
-forum
Wymagania techniczne
Serwis będzie wortalem internetowym, więc powinien mieć mozliwość uruchomienia na kazdym komputerze z dostępem do internetu i praktycznie dowolna przegladarką.
Do uruchomienia tego projektu będziemy potrzebowali serwer (nie musi być zbyt wydajny, nie przewidujemy na początku zbyt dużego ruchu, w ramach potrzeby przeniesiemy się na coś bardziej wydajnego).
Wymagania dotyczace dostępu, obsługi, administracji, utrzymywalności
Jeśli zdecydujemy się na zainwestowanie w zewnętrzny hosting nie ma problemów związanych z obslugą, administracja, dostepem, utrzymywalnością. Ponieważ nie przewidujemy w poczatkowej fazie forum, nie potrzebujemy nikogo do moderacji.
Wymagania niezawodności i bezpieczeństwa
Ryzyko niezawodności zostanie zrzucone na firme hostingową.
Jeśli chodzi o bezpieczeństwo, to LINQ to SQL zapewnia bezpieczne połączenie z bazą danych (np. odporność na sql injection). Bezpieczeństwo strony przed nieautoryzowanymi użytkownikami jest zapewnine poprzez wprowadzenie mechanizmu autoryzacji asp (opis dokladniejszy w pkt. 8.)
Inne wymagania
Koncepcja nie wymaga żadnych specjalnych zezwoleń ani licencji.
Przypadki użycia
1. Gość
1.1. Wyszukiwanie użytkowników
1.2. Rejestracja z potwierdzeniem
1.2.1. Zaproponowanie loginu
1.2.2. Podanie hasła
1.2.3. Podanie adresu email
1.2.4. Podanie danych na swój temat
1.3. Przeglądanie wyników ankiety
1.4. Przeglądanie istniejących metod planowania rodziny
1.4.1. Wysłanie powiadomienia mailowego o metodzie do znajomego
1.4.2. Wyświetlanie danych na temat wybranej metody
2. Użytkownik:
2.1. Zarządzanie kontem
2.1.1. Przypomnienie hasła/wygenerowanie nowego
2.1.2. Aktualizacja profilu
2.1.2.1. Zmiana hasła
2.1.2.2. Zmiana adresu email
2.1.2.3. Zmiana danych na swój temat
2.2. Wyszukiwanie użytkowników
2.3. Przeglądanie istniejących metod planowania rodziny
2.3.1. Wysłanie powiadomienia mailowego o metodzie do znajomego
2.3.2. Wyświetlanie danych na temat wybranej metody
2.4. Przeglądanie danych nt cyklów owulacyjnych
2.4.1. Przeglądanie wykresów z naniesionymi danymi
2.4.2. Wprowadzanie danych
2.5. Przeglądanie danych pomiarowych i obserwacyjnych
2.5.1. Przeglądanie wykresów z naniesionymi danymi, w tym danych na temat obliczonych dni płodnych/niepłodnych
2.5.2. Wprowadzanie danych
3. Administrator:
Zarządzanie kontami użytkowników
Kasowanie/banowanie użytkowników
Wysyłanie mailingu do użytkowników
3.2. Kasowanie/dodawanie artykułów
3.3. Przeglądanie uwag od użytkowników
3.4. Przeglądanie statystyk serwisu
3.5. Powiadamianie o informacjach dotyczących serwisu
Identyfikacja funkcji
Rejestracja
Potwierdzenie rejestracji
Logowanie/wylogowywanie
Modyfikacja profilu
Wprowadzanie nowych danych pomiarowych
Wyświetlanie wykresów płodności na podstawie danych
Obliczanie dni płodnych, niepłodnych
Czytanie artykułów
Zgłoszenie uwag do administratora
Analiza hierarchii funkcji projektowanej aplikacji
Budowa i analiza diagramu przepływu danych
Wybór encji (obiektów) i ich atrybutów
Projektowanie powiązań (relacji) pomiędzy encjami
Projekt diagramów STD (State Transition Diagram – diagramy przejść pomiędzy stanami)
Diagram stanów dla użytkownika zalogowanego i gościa
Diagram stanów dla redaktora i administratora