Dokumentacja projektu Makao karciana gra sieciowa 1
Spis treści Specyfikacja wymagań...3 Diagram przypadków użycia...4 Scenariusze...5 Diagramy sekwencji...6 Diagram modelu domeny...8 Projekt graficznego interfejsu użytkownika...9 Diagram klas wdrożeniowych...10 Wsparcie użytkownika...11 Plan testów aplikacji...12 Spis rysunków i tabel...13 2
Specyfikacja wymagań Wykonał: Grzegorz Lewiński Wersja: 1.0 1. Temat: Makao karciana gra sieciowa. 2. Potencjalni użytkownicy: osoby w wieku powyżej 12 lat. 3. Klienci: właściciele portali internetowych z grami sieciowymi do pobrania 4. Funkcje gry: Symuluje rozgrywkę karcianą w Makao z użyciem uniwersalnych zasad. Informuje gracza o ewentualnych problemach np. z połączeniem. Wyświetla ekran startowy, w którym gracz może: a) utworzyć nową grę. b) wyszukać istniejące gry. c) dołączyć do istniejącej gry. Po zakończeniu rozgrywki wyświetla uzyskany rezultat. 5. Ograniczenia: Przeznaczenie do rozgrywki sieciowej. Rozgrywka jest dwuosobowa. Ograniczenie czasowe rozgrywki do 15 minut. Przeznaczenie dla systemów z oprogramowaniem Java. 3
Diagram przypadków użycia Wykonała: Sylwia Kaleta Wersja: 1.2 Rys. 1. Diagram przypadków użycia 4
Scenariusze Wykonała: Sylwia Kaleta Wersja: 1.1 1. Stworzenie nowej rozgrywki Gracz wybiera swoją nazwę poprzez wpisanie jej. a) Gdy nazwa gracza jest zajęta, wyświetlany jest komunikat z prośbą o zmianę nazwy użytkownika. b) Gdy gracz nie wpisze nazwy gracza, wyświetlany jest komunikat z prośbą o uzupełnienie pola "Nazwa Gracza". Gracz wciska przycisk Stwórz rozgrywkę. Aplikacja tworzy i dodaje rozgrywkę do listy rozgrywek. 2. Dołączenie do istniejącej rozgrywki Gracz wybiera swoją nazwę poprzez wpisanie jej. a) Gdy nazwa gracza jest zajęta, wyświetlany jest komunikat z prośbą o zmianę nazwy użytkownika. b) Gdy gracz nie wpisze nazwy gracza, wyświetlany jest komunikat z prośbą o uzupełnienie pola "Nazwa Gracza". Gracz wciska przycisk Wyszukaj rozgrywkę. Aplikacja odświeża listę dostępnych rozgrywek. Gracz wciska przycisk Dołącz do rozgrywki. a) Jeżeli nie wybrano rozgrywki, wyświetlany jest komunikat z prośbą o wybranie rozgrywki z listy rozgrywek. Aplikacja dodaje gracza do wybranej rozgrywki. Aplikacja wyświetla okno rozgrywki. 3. Przeprowadzenie rozgrywki Aplikacja rozdaje graczom po pięć losowych kart z talii. Aktywny gracz wykłada kartę na stół (poprzez kliknięcie na kartę) lub bierze kartę z talii (poprzez kliknięcie na talię kart). a) Jeżeli gracz nie wykona akcji w czasie minuty, rozgrywka zostaje zakończona z przyznaniem zwycięstwa przeciwnikowi. Gracze zamieniają się rolą aktywnego gracza. Aplikacja kończy rozgrywkę, gdy któremuś z graczy skończą się karty w ręce. 4. Obserwacja trwającej rozgrywki Obserwator wciska przycisk Wyszukaj rozgrywkę. Aplikacja odświeża listę dostępnych rozgrywek. Obserwator wciska przycisk Dołącz do rozgrywki. a) Jeżeli nie wybrano rozgrywki, wyświetlany jest komunikat z prośbą o wybranie rozgrywki z listy rozgrywek. Aplikacja dodaje obserwatora do wybranej rozgrywki. Aplikacja wyświetla okno rozgrywki bez możliwości ingerowania w rozgrywkę przez obserwatora. 5. Wyświetlenie najlepszych wyników Gracz wciska przycisk Najlepsze wyniki. Aplikacja wyświetla okno z najlepszymi wynikami rozgrywek. 5
Diagramy sekwencji Wykonali: Sylwia Kaleta, Grzegorz Lewiński, Daniel Król Wersja: 1.0 1. Stworzenie nowej rozgrywki Rys. 2. Diagram sekwencji dla przypadku Stworzenie nowej rozgrywki 2. Dołączenie do istniejącej rozgrywki Rys. 3. Diagram sekwencji dla przypadku Dołączenie do istniejącej rozgrywki 6
Diagramy sekwencji Wykonali: Sylwia Kaleta, Grzegorz Lewiński, Daniel Król Wersja: 1.0 3. Przeprowadzenie rozgrywki Rys. 4. Diagram sekwencji dla przypadku Przeprowadzenie rozgrywki 4. Obserwacja trwającej rozgrywki Rys. 5. Diagram sekwencji dla przypadku Obserwacja trwającej rozgrywki 5. Wyświetlenie najlepszych wyników Rys. 6. Diagram sekwencji dla przypadku Wyświetlenie najlepszych wyników 7
Diagram modelu domeny Wykonali: Sylwia Kaleta, Grzegorz Lewiński Wersja: 1.3 Rys. 7. Diagram modelu domeny 8
Projekt interfejsu graficznego Wykonał: Daniel Król Wersja: 1.0 1. Aplikacja składa się z ekranu startowego i ekranu rozgrywki. 2. Ekran startowy zawiera listę istniejących rozgrywek oraz przyciski obsługujące funkcje tworzenia, dołączania i obserwowania rozgrywki. Okno ekranu startowego ma wymiary 450 na 300 pikseli. Rys. 8. Projekt interfejsu graficznego ekranu menu 3. Ekran rozgrywki symuluje stół, na którym jest rozgrywana gra karciana. Składa się na niego talia, z kartami do dociągnięcia, aktywna karta, zestawy kart do dyspozycji graczy (tzw. ręka gracza). Widoczne są także nazwy graczy i ich wyniki punktowe. Okno ekranu rozgrywki ma rozmiar 800 na 600 pikseli. Możliwe są dwa widoki okna rozgrywki: dla gracza (karty na ręce przeciwnika są zakryte) oraz dla obserwatora (widoczne są karty na rękach obu graczy). Rys. 9. Projekt interfejsu graficznego ekranu rozgrywki 9
Diagram klas wdrożeniowych Wykonali: Sylwia Kaleta, Grzegorz Lewiński Wersja: 1.3 Rys. 10. Diagram klas wdrożeniowych 10
Wsparcie użytkownika Wykonał: Daniel Król Wersja: 1.1 1. W celu zapewnienia użytkownikowi odpowiedniego wsparcia, do aplikacji powinien zostać dodany kontekst pomocy, który opisywałby poszczególne funkcjonalności, a w szczególności przebieg rozgrywki i jej zasady. Dostęp do niego powinien być możliwy z każdego widoku aplikacji w każdym momencie użytkowania jej. 2. Należy zadbać, aby użytkownik był na bieżąco informowany, do czego służy dany element interfejsu, poprzez wyświetlanie informacji w dymku (ang. tooltip) lub innym wyznaczonym miejscu interfejsu. 3. Aby umożliwić użytkownikowi informowanie zespołu o ewentualnych napotkanych błędach i zapewnić mu pomoc, której nie znajdzie w wyżej opisanych rozwiązaniach, należy uruchomić adres mailowy, służący do wspierania użytkowników i wymiany informacji z nimi. 11
Plan testów aplikacji Wykonał: Grzegorz Lewiński Wersja: 1.2 Testowana funkcjonalność 1 Tworzenie rozgrywki. 2 Wyszukanie istniejącej rozgrywki. 3 Dołączenie do rozgrywki. 4 Przeprowadzeni e rozgrywki. 5 Obserwacja rozgrywki. 6 Wyświetlenie najlepszych wyników. Tab. 1. Tabela planu testów aplikacji Opis Parametry do sprawdzenia Warunki zaliczenia Aplikacja powinna sprawdzać czy została podana dostępna nazwa gracza, utworzyć obiekt rozgrywki, umieścić go na liście dostępnych rozgrywek oraz wyświetlić ekran rozgrywki Aplikacja powinna odświeżyć listę rozgrywek na której powinny znaleźć się rozgrywki, do których można dołączyć bądź obserwować. Aplikacja powinna sprawdzić poprawność nazwy gracza i możliwość dołączenia do wybranej z listy rozgrywki oraz po spełnieniu tych warunków wyświetlić ekran rozgrywki. Aplikacja powinna kontrolować który gracz jest aktywny oraz symulować pełną rozgrywkę z wykorzystaniem określonych zasad. Aplikacja powinna przerywać rozgrywkę w przypadku minięcia minuty w trakcie trwania ruchu gracza. Po przeprowadzeniu symulacji rozgrywki aplikacja powinna wyświetlić uzyskane wyniki, a następnie wyświetlić ekran menu. Aplikacja powinna wyświetlić ekran rozgrywki z widokiem na odsłonięte karty obu graczy. Po zakończeniu rozgrywki aplikacja powinna wyświetlić uzyskane wyniki, a następnie wyświetlić ekran menu. Aplikacja powinna wyświetlić listę najlepszych wyników, posortowanych malejąco. 1. Poprawność nazwy gracza. 2. Rozgrywka dodana do listy. 3. Poprawność ekranu rozgrywki. 1. Odświeżona lista rozgrywek. 1. Poprawność nazwy gracza. 2. Możliwość dołączenia. 3. Poprawność ekranu rozgrywki. 1. Poprawność aktywność graczy. 2. Poprawność symulacji rozgrywki. 3. Poprawność ekranu wyników. 4. Poprawność ekranu menu. 1. Poprawność ekran rozgrywki. 2. Poprawność ekranu wyników. 3. Poprawność ekranu menu. 1. Poprawność widoku listy 10 wyników posortowanych malejąco. Poprawność sprawdzanych parametrów. 12
Spis rysunków i tabel 1. Rysunki: Rys. 1. Diagram przypadków użycia str. 4 Rys. 2. Diagram sekwencji Stworzenie nowej rozgrywki str. 6 Rys. 3. Diagram sekwencji Dołączenie do istniejącej rozgrywki str. 6 Rys. 4. Diagram sekwencji Przeprowadzenie rozgrywki str. 7 Rys. 5. Diagram sekwencji Obserwacja trwającej rozgrywki str. 7 Rys. 6. Diagram sekwencji Wyświetlenie najlepszych wyników str. 7 Rys. 7. Diagram modelu domeny str. 8 Rys. 8. Projekt interfejsu graficznego ekranu menu str. 9 Rys. 9. Projekt interfejsu graficznego ekranu rozgrywki str. 9 Rys. 10. Diagram klas wdrożeniowych str. 10 2. Tabele: Tab. 1. Tabela planu testów aplikacji str. 12 13