1. Wymagania

CWB-UW wymaga JRE (Java Runtime Environment) w wersji przynajmniej 1.6_01.

  1. Uruchamianie

Aplikację CWB-UW należy uruchamiać za pomocą dołączonych skryptów – cwb-uw.sh dla systemu Linux i cwb-uw.bat dla systemu Windows.

  1. Główne okno aplikacji

 

 

·        File selection – określa plik wejściowy aplikacji. Aby wybrać plik należy użyć przycisku Browse, otwarte zostanie okno dialogowe, w którym użytkownik będzie mógł dokonać wyboru pliku.

·        Agents selectionsłuży do określenia procesów, które posłużą do rozgrywania gier bisymulacyjnych. Na liście dostępnych agentów umieszczane są definicje, które znajdują się w pliku wejściowym. Aby rozgrywka była możliwa należy dokonać wyboru obu procesów.

·        Game type selection – służy do określenia typu rozgrywki: Strong bisimulation gamegra oparta na silnej bisymulacji, Weak bisimulation game – gra oparta na słabej bisymulacji.

·        Oponent selectionwybór przeciwnika:

o       2 Players game – gra dla dwóch graczy,

o       CWB UW as spoiler – gra dla jednego gracza, zadaniem aplikacji będzie pokazać różnicę między procesami,

o       CWB UW as duplicator – gra dla jednego gracza, zadaniem aplikacji będzie pokazać, że procesy się nie różnią.

·        Optionsotwiera okno opcji aplikacji.

·        GO – rozpoczyna rozgrywkę.

  1. Opcje aplikacji

 

 

·        Enable cheats – włącza/wyłącza podpowiedzi aplikacji.

·        Graph layout – określa początkowe rozmieszczenie węzłów grafów na wizualizacji.

·        Cancel – odrzuca wprowadzone zmiany w opcjach.

·        OK – zatwierdza wprowadzone zmiany w opcjach.

  1. Okno rozgrywki

 

 

·        Wizualizacje procesów, których równoważność rozstrzyga rozgrywka znajdują się w środkowej części okna rozgrywki. Kolory węzłów niosą ze sobą dodatkową informację: zwykłe węzły są czerwone, aktywne niebieskie, blokady czarne, węzły reprezentujące złożenie równoległe szare (po uaktywnieniu znikają). Globalny stan po ruchu spoilera (w procesie, w którym wykonał posunięcie) jest wyróżniony kolorem zielonym, a zdarzenia, które zostały uruchomione podczas tego ruchu są również zielone. Zwykłe zdarzenia są szare, natomiast jeśli są objęte zabronieniem aplikacja wyróżnia je czerwonym kolorem. Zdarzenia, które zostały uruchomione podczas ostatniego ruchu w  procesie są żółte.

·        Wybór ruchu poprzez wskazanie go na liście dostępny ruchów, a następnie naciśnięcie przycisku odpowiadającego stronie, po której użytkownik chciałby wykonać posunięcie. Ruch duplikatora jest wyróżniony na liście żółtym kolorem. Jeśli ruch jest zaznaczony na liście to zdarzenia, które są uruchamiane podczas jego wykonania są rysowane zielonym kolorem:

 

 

·         Jeśli włączone są podpowiedzi w opcjach aplikacji, to po zatrzymaniu kursora nad opisem ruchu, pojawia się wygenerowana przez aplikację podpowiedź:

 

 

·        Opis ruchu zawiera stan globalny procesu po wykonaniu posunięcia. Zakazane zdarzenia zapisywane są jako nazwa_zdarzenia\nazwa_zdarzenia.

 

·        Jeżeli jeden z graczy nie może wykonać poprawnego ruchu aplikacja powiadamia o zakończeniu gry przy pomocy odpowiedniego komunikatu:

 

 

·        Jeżeli podczas rozgrywki zostały osiągnięte po raz kolejny te same stany globalne w procesach, to aplikacja powiadamia o tym fakcie przy pomocy odpowiedniego komunikatu:

·        Istnieje możliwość cofania jednego wykonanego w grze ruchu. Jeśli użytkownik wybrał cofnięcie ruchu, który został wykonany przez gracza kontrolowanego CWB-UW, to aplikacja się znaleźć i wykonać inne równie dobre posunięcie:

o       jeżeli CWB-UW kontroluje ruchy Adama, a w aktualnej konfiguracji dostępny jest inny poprawny ruch prowadzący do konfiguracji (P,Q) takiej, że P Q, to takie posunięcie jest wykonywane,

o       jeżeli CWB-UW kontroluje ruchy Ewy, a w aktualnej konfiguracji dostępny jest inny ruch, na który Adam nie ma odpowiedzi prowadzącej do konfiguracji (P,Q) takiej, że P Q, to takie posunięcie jest wykonywane,

o       w przeciwnym wypadku wykonywany jest ten sam ruch.

·        Można cofnąć trzy ostatnio wykonane ruchy. W takim przypadku komputer wykonuje ponownie to samo posunięcie, a gracz może się ponownie zastanowić nad swoim ruchem.