PIT MARKET 2.0 Anwenderdokumentation Exposee [Fesseln Sie Ihre Leser mit einem ansprechenden Exposee. Normalerweise ist dies eine kurze Zusammenfassung des Dokuments. Wenn Sie Ihre Inhalte hinzufügen möchten, einfach hier klicken und mit der Eingabe beginnen.] SWT-Projekt, Gruppe 09 Justus Paulick, Dominik Weinrich, Lukas Jähn, Xinyu Yang, Timon Kretzschmar Tutor: Jan Falkenberg Inhaltsverzeichnis 1 Einleitung ......................................................................................................................................... 2 2 Installation ....................................................................................................................................... 2 2.1 2.1.1 Server-Rechner ................................................................................................................ 2 2.1.2 Client Rechner ................................................................................................................. 2 2.1.3 Netzwerk ......................................................................................................................... 2 2.2 3 5 Erste Schritte ........................................................................................................................... 3 2.2.1 Zip-Archiv ......................................................................................................................... 3 2.2.2 Anwendung starten ......................................................................................................... 3 2.2.3 Navigation........................................................................................................................ 3 2.2.4 Einloggen ......................................................................................................................... 4 Spielvorbereitung ............................................................................................................................ 5 3.1 4 Systemvoraussetzungen .......................................................................................................... 2 Ein Spiel anlegen...................................................................................................................... 5 3.1.1 Basiskonfiguration eingeben ........................................................................................... 5 3.1.2 Standardkonfiguration .................................................................................................... 6 3.1.3 Eigene Konfiguration ....................................................................................................... 7 3.1.4 Konfiguration laden ......................................................................................................... 8 3.2 Konfiguration speichern .......................................................................................................... 8 3.3 Spielkarten erstellen................................................................................................................ 9 3.3.1 PDF-Dateien speichern .................................................................................................... 9 3.3.2 Spielkarten sortieren ....................................................................................................... 9 3.3.3 Spielkarten austeilen ....................................................................................................... 9 Spieldurchführung ........................................................................................................................... 9 4.1 Spiel laden ............................................................................................................................... 9 4.2 Clients verbinden................................................................................................................... 10 4.3 Karten austragen ................................................................................................................... 11 4.4 Spiel ....................................................................................................................................... 12 4.4.1 Verträge eingeben ......................................................................................................... 12 4.4.2 Diagramm ...................................................................................................................... 13 4.5 Auswertung ........................................................................................................................... 13 4.6 Export der Statistikdaten ....................................................................................................... 14 4.7 Auslosung .............................................................................................................................. 15 Fehlerbehandlung ......................................................................................................................... 15 1 1 Einleitung 2 Installation 2.1 Systemvoraussetzungen 2.1.1 Server-Rechner Als Server-Rechner wird im Folgenden immer der Computer bezeichnet, von dem aus das Spiel administriert wird. Dazu gehört die Bereitstellung des Servers durch das Öffnen der Anwendung, die Vorbereitung des Spiels, die Auswertung und während des Spiels die Anzeige des sogenannten „Börsencharts“. Wir empfehlen folgende Systemvoraussetzungen und haben die Anwendung unter folgenden Bedingungen getestet: Systemanforderung: Dual-Core-Prozessor, 4GB RAM Arbeitsspeicher, davon 1GB frei für die Anwendung Betriebssystem: ab Windows 7, ab Mac OS 10.8, ab Ubuntu 14.04 Unterstützte Browser: Firefox 33, Chrome 38, Safari 7, Internet Explorer 10 Wichtigste Anforderung an den Server-Rechner ist jedoch eine installierte Java-Version ab Java 1.7.0_65. Sie können ihre installierte Java-Version überprüfen, indem Sie in ihrer Konsole/Terminal/Kommandozeile den Befehl „java –version“ eintippen und Enter drücken. 2.1.2 Client Rechner Als Client-Rechner wird im Folgenden immer das Gerät bezeichnet, das die Assistenten als sogenannte „Eingabestation“ bedienen und womit die Verträge eingegeben werden. Die einzige Anforderung an den Client-Rechner ist dabei, dass es ein netzwerkfähiges Gerät mit Webbrowser sein muss. Darin eingeschlossen sind folglich auch Smartphones und Tablets. 2.1.3 Netzwerk Die wichtigste Anforderung an das Netzwerk ist, dass alle beteiligten Geräte im gleichen Subnetz sein müssen. Dieser Umstand ist leider nicht bei jedem großen Netzwerk, wie z.B. dem Uni-Netzwerk, gegeben. Wir empfehlen daher folgende Möglichkeiten ein eigenes Netzwerk aufzubauen: Router: Errichten Sie ihr eigenes Netzwerk mit einem extra Router und verbinden Sie alle Geräte per WLAN oder LAN-Kabel mit dem Netzwerk Smartphone: Die meisten Smartphones können als mobiler Hotspot fungieren, auch „Tethering“ genannt. In diesem Fall ist das Smartphone quasi der Router und alle beteiligen Geräte können sich mit diesem Netzwerk per WLAN verbinden. 2 2.2 Erste Schritte 2.2.1 Zip-Archiv 2.2.2 Anwendung starten 2.2.3 Navigation Abb. 2.1: Start und Ende der Anwendung Dieses Fenster öffnet sich, sobald Sie die Anwendung gestartet haben. Das Fenster befindet sich hauptsächlich im Hintergrund und bietet Ihnen quasi nur den Einstieg bzw. Ausstieg aus der Anwendung. Die eigentliche Anwendung findet hingegen in Ihrem Internetbrowser statt, welchen Sie auch über dieses Fenster öffnen können. Direkt nach dem Start der Anwendung öffnet sich der Browser zunächst automatisch. Browser öffnen: kommt zum Einsatz, wenn Sie während des Spiels das Browserfenster oder den Tab geschlossen haben und zur letzten Spielphase zurückkehren möchten. Log: beinhaltet einige Statusmeldungen der Anwendung (z.B. erfolgreiche Eingaben, Fehlermeldungen). Für das normale Spiel hat das jedoch keine Relevanz. Über die Schaltfläche Server beenden können Sie die komplette Anwendung beenden. Achtung! Mit dem Beenden der Anwendung gehen alle nicht gespeicherten Daten des laufenden Spiels verloren. Abb. 2.2: Navigation im Browserfenster 3 In der obigen Abbildung sehen Sie den grundlegenden Aufbau der Browseransicht. Verlaufsanzeige: zeigt Ihren aktuellen Fortschritt in der jeweiligen Phase der Anwendung Menü: bietet Ihnen einige grundsätzliche Möglichkeiten der Navigation. Hauptfenster: die eigentliche Ansicht der Anwendung. Hier können Sie ihre Daten eingeben und die Ergebnisse bestaunen. Hinweis: Um zur vorherigen Seite zurückzukehren, benutzen Sie bitte immer die Schaltfläche Zurück oben rechts im Menü und niemals den Zurück-Button ihres Browsers. 2.2.4 Einloggen Abb. 2.3: Schritt 3: Login Wenn das Browserfenster geöffnet wurde, müssen Sie sich zuerst anmelden. Es gibt zwei Rollen in der Anwendung – der Professor oder Spielleiter, der das Spiel vorbereitet und über dessen PC später z.B. auch das Diagramm angezeigt wird, und der Assistent, der lediglich die Verträge eingibt. Standardmäßig lauten die Benutzernamen „Professor“ mit dem Passwort „Prof“ und „Assistant“ mit dem Passwort „Assi“. Im Menü Optionen können Sie die Passwörter ändern. Hinweis: Sollten Sie ihr Passwort vergessen haben, öffnen Sie den Ordner, in den Sie das zipArchiv entpackt haben, und löschen Sie dort die Datei „settings.txt“ im Ordner „settings“. Dann werden alle Passwörter wieder auf die oben genannten Standardeinstellungen zurückgesetzt. Nach erfolgreicher Anmeldung haben Sie die ersten Schritte abgeschlossen und befinden sich im Hauptmenü. Nun können Sie ein neues Spiel vorbereiten oder ein Spiel starten, indem Sie eine bereits gespeicherte Konfiguration laden. 4 Abb. 2.4: Hauptmenü - jetzt kann es endlich losgehen 3 Spielvorbereitung 3.1 Ein Spiel anlegen 3.1.1 Basiskonfiguration eingeben Abb. 3.1: Eingabemaske der Basiskonfiguration In der Basiskonfiguration legt man die Grunddaten des Spiels fest, also die erwarteten Spieler und die Anzahl an Assistenten. Spieler sind diejenigen, die eine Verkäufer/Käuferkarte bekommen, um damit zu handeln. Die Assistenten sind diejenigen, die die Karten am Anfang des Spiels verteilen (siehe 3.3.3. Spielkarten austeilen). Außerdem tragen sie die ausgehandelten Verträge ein (siehe 4.4.1 Verträge eingeben). Wenn man die Basisdaten eingeben hat, kann man zwischen der Standardkonfiguration und einer eigenen Konfiguration wählen. In den Konfigurationen kann man die Verteilung der Verkäufer und Käufer festlegen. Hinweis: die maximale Spielerzahl beträgt 8999 und muss gerade sein, die maximale Assistentenanzahl beträgt 26. 5 3.1.2 Standardkonfiguration Die Standardkonfiguration ist eine vom Lehrstuhl Volkswirtschaftslehre der TU-Dresden mitgelieferte Käufer-/Verkäuferverteilung. Die empfohlene Spielerzahl beträgt 800, sie kann aber auch mit anderen Spielerzahlen gespielt werden. Abb. 3.2: Standardkonfiguration mit Gruppenanzeige Auf dem Bild sehen sie links die Käufer- und rechts die Verkäufergruppen für 800 Spieler. Jede Gruppe enthält 3 Informationen: Anteil: die relative Anzahl an Spielern zur halbierten Spielerzahl (Spielerzahl/2 = Anzahl an Käufern und Verkäufern) Preis: Der Wert gibt bei den Käufern Aufschluss über die Zahlungsbereitschaft und bei den Verkäufern Aufschluss über die Kosten. Absolut: Aus der relativen Anzahl in der Spalte Anteil ergibt sich eine bestimmte absolute Spieleranzahl. Die erste Zeile der Käufer aus dem Bild oben kann also wie folgt gelesen werden: 16% von 400 Käufern haben eine Zahlungsbereitschaft von 45€, das sind insgesamt 64 Spieler. Die Käufer- und Verkäuferfunktion können sie sich in Abb. 3.3. unter dem Punkt „Eigene Konfiguration“ ansehen. 6 3.1.3 Eigene Konfiguration Um eine eigene Konfiguration einzugeben, ist es sinnvoll sich im Vorfeld Gedanken über die Käufer- und Verkäuferverteilung zu machen. Die Verteilungen bestehen aus Gruppen, jede Gruppe hat einen relativen Anteil zur Gesamtspielerzahl, wobei diese durch zwei geteilt wird um die Anzahl an Käufern und Verkäufern festzulegen z.B. bei 800 Spielern gibt es 400 Käufer und 400 Verkäufer und der relative Anteil wird pro Gruppe auf 400 Spieler gerechnet. Außerdem gibt es eine absolute Spielerzahl, die automatisch errechnet wird, und einen Preis. Bei den Käufern steht der Preis für die Zahlungsbereitschaft und bei den Verkäufern für die Kosten. Ein Verkäufer will seine Ware mindestens zum Preis seiner Kosten verkaufen und ein Käufer will die Ware maximal für den Preis seiner Zahlungsbereitschaft kaufen . Abb. 3.3: Standardkonfiguration: Verkäuferfunktion blau, Käuferfunktion rot, eine "Treppenstufe" ist jeweils eine Gruppe Abb. 3.4: erweiterte Konfigurationseingabemaske 7 Um eine neue Gruppe hinzuzufügen gibt es Plusbuttons unterhalb der Tabelle, um eine Gruppe zu löschen gibt es einen Minusbutton neben der Gruppe. Der relative Anteil der Käufer- bzw. Verkäufergruppen muss insgesamt 100% ergeben, wobei sich dieser auf die Hälfte der Gesamtspielerzahl bezieht. Es sind nur ganzzahlige positive Preise zulässig. 3.1.4 Konfiguration laden Abb. 3.5: geladene Konfiguration Es ist möglich eine Konfiguration zu laden, die zu einem früheren Zeitpunkt erstellt und gespeichert wurde. Diese wird dann auf die neu eingegebene Basiskonfiguration bezogen und ist editierbar. 3.2 Konfiguration speichern Nachdem man die Konfiguration festgelegt und auf weiter geklickt hat wird diese automatisch im angezeigten Ordner gespeichert (siehe 2.2.1. Zip-Archiv). Es ist auch möglich diese zusätzlich noch einmal in einem Ordner seiner Wahl zu speichern. Wenn Sie auf Konfiguration speichern klicken, speichern die meisten Browser die Datei in Ihrem 8 Download-Verzeichnis. Wenn Sie den Button mit Rechtsklick->Ziel speichern unter auswählen, können Sie einen beliebigen Speicherort wählen. Die gespeicherte Datei wird benötigt, wenn Sie mit der vorbereiteten Konfiguration ein Spiel starten möchten. Sie sollten sich daher den Speicherort der Konfigurationsdatei gut merken. Der Dateiname ist nicht editierbar und lautet: Konfiguration_Zeitstempel. Der Zeitstempel wird beim speichern erstellt und setzt sich wie folgt zusammen: JahrMonatTag_StundeMinuteSekunde. Achtung: Die abgespeicherte Konfiguration sollte auf keinen Fall durch andere Programme bearbeitet werden! 3.3 Spielkarten erstellen 3.3.1 PDF-Dateien speichern 3.3.2 Spielkarten sortieren 3.3.3 Spielkarten austeilen 4 Spieldurchführung 4.1 Spiel laden Wenn Sie in der Vorbereitung die Käufer-/Verkäuferverteilung speichern, wird Ihnen der Pfad angezeigt, wo die angelegte Konfiguration gespeichert wurde – nämlich im Ordner der Anwendung unter „/target/config“. Wenn Sie ein Spiel laden, öffnet sich ein Fenster in dem Sie genau diesen config-Ordner suchen und Ihre gewünschte Konfiguration auswählen. Abb. 4.1: Spiel laden - Konfiguration auswählen Wenn Sie ihre gewünschte Konfiguration öffnen werden auf der nächsten Seite alle geladenen Daten nochmal angezeigt. 9 Abb. 4.2: Kontrolle - die richtige Konfiguration gewählt? 4.2 Clients verbinden Wenn Sie das Spiel geladen haben, wird es Zeit alle Client-Rechner mit dem Server zu verbinden. Das klingt komplizierter als es wirklich ist, denn die Clients müssen lediglich eine bestimmte Adresse in ihrem Browser öffnen. 10 Abb. 4.3: Eingabe der IP-Adresse des Servers im Browser des Clients Die IP-Adresse mit dem Port 8080 wird im Browser des Server-Rechners angezeigt und muss in die Adresszeile der Browser aller Client-Rechner übertragen werden. Es folgt wieder die Abfrage der Login-Daten für den Assistenten – siehe Kapitel 2.2.4 Einloggen. Hinweis: Um den Zugriff von Unbefugten zu verhindern, wird diese IP-Adresse später nicht noch einmal angezeigt. Deshalb müssen alle Client-Rechner in diesem Moment der Spielvorbereitung die Verbindung mit dem Server herstellen. 4.3 Karten austragen Alle Karten, die nicht an die Spieler ausgeteilt wurden, müssen aus dem System wieder ausgetragen werden, weil sonst die Vorhersage verfälscht wird. Dafür sind jetzt wieder die Pakete der Spielkarten wichtig. Die Pakete sind aufsteigend durchnummeriert und müssen auch in genau dieser Reihenfolge ausgeteilt werden. Nach dem Austeilen muss für jedes Paket die ID der obersten verbliebenen Karte (bzw. die kleinste verbliebene ID) eingetragen werden. Dadurch erkennt das Programm, welche Karten aus diesem Paket nicht ausgeteilt wurden, nämlich alle Karten mit den folgenden IDs inklusive dieser eingetragenen ID. Wenn alle Karten eines Paketes ausgeteilt wurden, können Sie die entsprechende Checkbox auswählen. 11 Abb. 4.4: Beispiel für die Verteilung auf die Pakete Abb. 4.5: Karten austragen Wenn dem Spiel die Paketverteilung aus Abb. 4.4 zugrunde liegt, dann bedeuten die Eingaben in der Abb. 4.5 folgendes: Aus den Paketen A und D wurden alle Karten ausgeteilt. Aus dem Paket B wurden nur die Karten bis zu der ID 1355 ausgeteilt, somit ist die oberste verbliebene ID 1356. Das bedeutet, dass alle Karten mit den IDs von 1356 – 1400 aus dem System gelöscht werden. Bei Paket C heißt das analog, dass die Karten mit den IDs von 1582 – 1600 ausgetragen werden. 4.4 Spiel 4.4.1 Verträge eingeben Abb. 4.6: Ansicht des Client-Rechners Die Ansicht für die Eingabe der Verträge sollte selbsterklärend sein. Einzugeben sind nur die jeweiligen IDs von Käufer und Verkäufer und der verhandelte Preis. Wichtig zu beachten ist 12 dabei, dass der Preis eine ganze Zahl sein muss, Kommazahlen werden nicht akzeptiert. Ob der Verkäufer oder der Käufer zuerst eingegeben wird, ist hingegen egal. Allerdings ist es nicht möglich, dass beide Handelspartner Käufer bzw. Verkäufer sind. Die Anwendung prüft zudem automatisch, ob einer der beiden Spieler bereits zuvor schon einmal gehandelt hat, ob die eingegebenen IDs überhaupt im Bereich der ausgegebenen Karten liegt und ob der eingegebene Preis im positiven Bereich liegt. 4.4.2 Diagramm Abb. 4.7: "Börsenchart" In der Server-Anwendung sehen Sie nun das sogenannte „Börsenchart“, indem nacheinander alle Preise der eingegebenen Verträge dargestellt werden. Die Ansicht wird jede Sekunde aktualisiert. Die Skalierung des Diagramms passt sich dynamisch an die vorhandenen Daten an. Dabei ist die Skalierung der y-Achse auf ±20% des höchsten und niedrigsten Wertes für die Zahlungsbereitschaft bzw. die Kosten beschränkt. Dadurch wird sichergestellt, dass Ausreißer, wie in obiger Abbildung zu sehen, die Darstellung nicht zu sehr verzerren. 4.5 Auswertung Durch einen Klick auf Spiel beenden wird das laufende Spiel beendet, das heißt es können keine weiteren Verträge eingegeben werden. Es wird nun noch einmal das endgültige Chart mit allen Verträgen angezeigt. Mit einem Klick auf Auswertung starten stehen Ihnen verschiedene Möglichkeiten zur Verfügung, um das Spiel auszuwerten. Zuerst werden nun zusätzlich die Anfrage- und Nachfragekurven im Chart dargestellt. Diese werden anhand der Daten aus Ihrer eingegebenen Verteilung und den ausgetragenen Karten berechnet. Oben rechts im Chart werden verschiedene Statistikdaten des Spiels angezeigt. -----------Screenshot Auswertung----------------- 13 4.6 Export der Statistikdaten Abb. 4.8: Manueller Export über das Menü oben rechts Außerdem werden zwei Exportdateien mit Statistikdaten erstellt. eine PDF-Datei: beinhaltet den Export der Auswertungsansicht, enthält also das endgültige Chart mit Angebots- und Nachfragekurve, sowie die angezeigten Statistikdaten eine CSV-Datei: beinhaltet ausführlichere Daten der Verträge. Es werden für jeden Vertrag die Daten des beteiligen Käufers und Verkäufers und die spezifischen Daten des Vertrags (Preis, Uhrzeit, Eingabestation) gespeichert. Außerdem werden in dieser Datei auch alle Spielerkarten aufgeführt, die keinen Vertrag abgeschlossen haben. Die CSV-Datei lässt sich mit einem Tabellenkalkulationsprogramm öffnen und bietet Ihnen somit verschiedene Möglichkeiten das Spiel statistisch auszuwerten. Diese beiden Exportdateien werden automatisch im Spielordner gespeichert unter „…/Pit Market 2.0/target/data“. Über den Menüpunkt Export können Sie die Dateien aber auch manuell runterladen. Hier gilt, wie beim Speichern der Konfiguration, mit Rechtsklick -> Ziel speichern unter können Sie einen beliebigen Speicherort wählen, andernfalls wird die Datei im Download-Ordner ihres Browsers gespeichert. Sie können nun noch optional die Auslosung durchführen oder das Spiel abschließen und direkt ins Hauptmenü zurückkehren. Dort ist es Ihnen auch sofort wieder möglich ein neues Spiel zu laden und zu starten. 14 4.7 Auslosung Abb. 4.9: Ergebnis der Auslosung Diese Funktion, zu finden unter dem Menüpunkt Auslosung während der Auswertung, ist ein optionaler Bestandteil des Spiels. Dabei wird aus allen abgeschlossenen Verträgen zufällig ein Vertrag ausgewählt, die beiden Vertragspartner werden ermittelt und jeweils die Differenz zwischen Vertragspreis und Zahlungsbereitschaft bzw. Kosten errechnet. Daraus ergibt sich ein entsprechender Gewinn oder Verlust. Wenn Sie möchten können Sie den Gewinn als Prämie auszahlen oder den Verlust als Strafe einfordern. Diese Funktion hat den Zweck einen besonderen Anreiz für die Studenten/Spieler zu schaffen. Falls es nötig sein sollte, können Sie auch die Auslosung wiederholen, um einen anderen Vertrag auszulosen. 5 Fehlerbehandlung 15