Projekt konceptualny

1. Sformułowanie zadania projektowego

Przedmiotem niniejszego projektu jest stworzenie systemu który pozwala na grę w Word Champion (zasady jak w grze Scrabble®) w czasie rzeczywistym z innymi użytkownikami. Użytkownik po zalogowaniu będzie mógł wybrać jeden z dostępnych pokojów do gry lub tworzyć własne pokoje. Gra możliwa będzie zarówno z innymi użytkownikami, jak i z „komputerem” (sztuczna inteligencja zaimplementowana w systemie). Dzięki funkcjonalności wiadomości publicznych oraz prywatnych, użytkownicy będą mogli cały czas się komunikować. Na bieżąco tworzone będą rankingi graczy które użytkownik będzie mógł w każdej chwili obejrzeć.

2. Analiza stanu wyjściowego

Istnieje obecnie kilka serwisów pozwalających na grę w Scrabble pomiędzy użytkownikami. Najpopularniejsze w Polsce są literaki . Żaden z istniejących serwisów nie udostępnia jednak funkcjonalności rozgrywki ze sztuczną inteligencją. Możliwa jest jedynie gra pomiędzy użytkownikami systemu. Tworzony system będzie posiadał podobny sposób rozgrywki jak dostępne już rozwiązania. Ułatwi to użytkownikom szybką zmianę serwisu. Użytkownicy będą także mieli dostęp do rankingów graczy oraz historii własnych gier. Niewątpliwą zaletą tworzonego przez nas projektu będzie możliwość rozgrywki z udostępnioną sztuczną inteligencją. Dzięki temu użytkownicy nigdy nie będą zmuszeni do oczekiwania na pojawienie się nowych użytkowników, oraz możliwe będzie zagwarantowanie użytkownikom dobrego poziomu gry.

3. Analiza wymagań użytkownika

3.1 Profile użytkowników

  • Rejestracja użytkownika
  • Logowanie
  • Usunięcie konta
  • Przeglądanie rankingów graczy

3.2 Pokoje do gry

  • Tworzenie nowego pokoju
    • Ustawianie czasu rozgrywki
    • Ustawianie ilości graczy
    • Wybór języka rozgrywki
  • Rozpoczęcie rozgrywki w pokoju
  • Dodawanie graczy komputerowych
  • Blokowanie pokoju
  • Zamykanie pokoju
  • Dołączanie do istniejącego pokoju

3.3 Gracz komputerowy (sztuczna inteligencja)

  • Wybór stopnia trudności

3.4 Historia rozgrywek

  • Przeglądanie historii rozgrywek gracza
  • Odtwarzanie rozegranej partii

3.5 Wiadomośći

  • Wysyłanie wiadomości prywatnych
  • Wysyłanie wiadomości publicznych (czat)
  • Wiadomosći na poziomie pokoju do gry
  • Archiwizacja wiadomości prywatnych

3.6 Gra

  • Wykonanie ruchu
  • Wymiana liter
  • Opuszczenie kolejki
  • Blokada ruchu innego gracza

4.Określenie scenariuszy użycia

WS - warunki wstępne WK - warunki końcowe

4.1 Utwórz konto

  • CEL: utworzenie konta w systemie
  • WS: uruchomienie programu
  • WK: pojawienie się konta użytkownika w systemie

PRZEBIEG:

1. Wyświetlenie formularza tworzenia konta.
2. Wprowadzenie nazwy użytkownika.
3. Wprowadzenie hasła.
4. Naciśnięcie przycisku wysyłającego żądanie do serwera.
5. Wyświetlenie komunikatu potwierdzającego utworzenie konta.

PRZEBIEG ALTERNATYWNY:

5a. System odrzuca wprowadzoną nazwę użytkownika
5a1. Wyświetlenie komunikatu o niedostępności wybranej nazwy
5a2. Powrót do kroku 1.

4.2 Zaloguj

  • CEL: zalogowanie do systemu
  • WS: uruchomienie programu, posiadanie konta w systemie
  • WK: użytkownik został zalogowany w systemie

PRZEBIEG:

1. Wyświetlenie widoku logowania.
2. Wprowadzenie nazwy użytkownika.
3. Wprowadzenie hasła.
4. Naciśnięcie przycisku ‘zaloguj’.
5. Przejście do widoku dostępnych pokoi do gry.

PRZEBIEG ALTERNATYWNY:

5a. System odrzuca wprowadzone dane
5a1. Wyświetlenie komunikatu o niepoprawności nazwy lub hasła.
5a2. Przejście do punktu 1.

4.3 Utwórz nową grę

  • CEL: utworzenie nowego pokoju do gry z innymi graczami lub komputerem
  • WS: zalogowanie w systemie
  • WK: w systemie został utworzony pokój do gry, inni użytkownicy mogą wejść do pokoju

PRZEBIEG

1. Naciśnięcie przycisku ‘utwórz pokój do gry’.
2. Wyświetlenie formularza wprowadzania parametrów gry.
3. Wybranie ilości miejsc w pokoju.
4. Wybranie tytułu pokoju.
5. Wybranie języka w jakim prowadzona będzie gra.
6. Wyświetlenie widoku gry.
7. Opcjonalnie: dodanie gracza komputerowego.
8. Opcjonalnie: oczekiwanie na innych graczy.
9. Naciśnięcie przycisku rozpoczynającego grę.

4.4 Dołącz do gry

  • CEL: wejście do pokoju utworzonego przez innego gracza
  • WS: zalogowanie w systemie, istnieje przynajmniej jeden utworzony pokój
  • WK: zajęcie jednego z miejsc w pokoju

PRZEBIEG:

1. Wyświetlenie widoku dostępnych pokoi.
2. Wybór pokoju z listy dostępnych pokoi.
3. Naciśnięcie na wybrany element listy.
4. Wyświetlenie widoku gry.

PRZEBIEG ALTERNATYWNY:

3a. W wybranym pokoju nie ma już wolnego miejsca.
3a1. Przejście do punktu 1.
3b. Wybrany pokój został zablokowany przez twórcę.
3b1. Przejście do punktu 1.

4.5 Graj

  • CEL: umożliwienie przeprowadzenia gry
  • WS: użytkownik znajduje się w pokoju do gry, gra została rozpoczęta przez twórcę pokoju
  • WK: zakończenie gry zwycięstwem jednego z graczy.

PRZEBIEG

1. Oczekiwanie na nadejście tury.
2. Nadejście tury użytkownika
3.
3a. Wstawienie słowa na planszę.
3b. Wybór liter do wymiany.
3c. Wybór opuszczenia tury.
4. Naciśnięcie przycisku zakończenia tury.
5. Przejście do punktu 1.
5a. Zakończenie gry.

PRZEBIEG ALTERNATYWNY

1a. Twórca pokoju zamknął pokój w czasie gry.
1a2. Wyświetlenie widoku listy pokoi do gry.
3d. Upłynięcie czasu przeznaczonego na grę dla gracza
3d2. Przejście do punktu 5.

4.6 Wyślij wiadomość

  • CEL: wysłanie wiadomości
  • WS: użytkownik jest zalogowany w systemie
  • WK: użytkownik/ użytkownicy otrzymują wiadomość

PRZEBIEG:

1. Opcjonalnie: użytkownik wybiera odbiorcę z listy dostępnych użytkowników
2. Użytkownik wprowadza wiadomość w odpowiednim oknie.
3. Użytkownik naciska przycisk wysyłający wiadomość.

4.7 Przeglądaj historię rozgrywek

  • CEL: umożliwienie przeglądania listy rozgrywek i śledzenia przebiegu gry
  • WS: zalogowanie w systemie
  • WK: zamknięcie okna przeglądania listy gier użytkownika

PRZEBIEG:

1. Wybór użytkownika z listy zalogowanych użytkowników
2. Kliknięcie przycisku ‘Przeglądaj rozegrane gry’
3. Wybór konkretnej rozgrywki z listy gier użytkownika
4. Kliknięcie przycisku ‘Odtwórz przebieg gry’
5. 
5a.Kliknięcie przycisku ‘Następny ruch’
5b.Zamknięcie okna odtwarzania przebiegu gry
6. 
6a.Przejście do punktu 3
6b.Zamknięcie okna przeglądania listy gier użytkownika

5. Identyfikacja funkcji realizowanych przez bazę danych

  • Przechowywanie informacji o użytkownikach - login, hasło, ranking
  • Przechowywanie informacji o rozegranych partiach - data rozegrania, ruchy wszystkich użytkowników oraz zdobyte przez nich punkty
  • Przechowywanie wiadomości prywatnych wysyłanych przez użytkowników
  • Przechowywanie informacji o listach przyjaciół użytkowników

6. Analiza hierarchii funkcji projektowanej aplikacji

Function Hierarchy Diagram

7. Budowa i analiza diagramu przepływu danych

Diagram kontekstowy - poziom 0

Diagram DFD - poziom 1

Diagram DFD - konta użytkowników

Diagram DFD - komunikacja między użytkownikami

Diagram DFD - Przeglądanie rozgrywek

8. Wybór encji (obiektów) i ich atrybutów

Użytkownik

  • login
  • haslo
  • ranking
  • id uzytkownika
  • lista przyjaciól

Rozgrywka

  • id rozgrywki
  • data rozgrywki

Ruch

  • id partii
  • id uzytkownika
  • wspolrzedna x
  • wspolrzedna y
  • slowo
  • punkty
  • nr ruchu
  • rodzaj ruchu

Wiadomosc

  • nadawca
  • odbiorca
  • data wyslania
  • tresc

9. Projektowanie powiązań (relacji) pomiędzy encjami

Entity-Relationship Diagram

10. Projekt diagramów STD

State Transition Diagram

pl/dydaktyka/ztb/2012/projekty/scrabble/projekt_konceptualny.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