The following provides some technical corner stones of the beergame software.
Software architecture
The beergame software is based on a client-server architecture featuring a server backend that does all the number crunching and coordination and a browser-based frontend that takes care of the visualisation part for the players.
The connection between server and clients is realised over a standard IP-network.
Frontend realisation
The frontend was built in Flash. This was the best solution for realising animations, which provide players with a game experience that comes close to the physical tabel version.
Hence, players need a browser with a recent flash plugin in order to participate in the beergame. To ensure compatability, players can be provided with a USB stick that contains a portable version of the Firefox browser with a flash plugin installed.
Communication with the server
Communication is realised using a web-service like communication with XML messages. Also, all game-related data is saved in files using XML as a structuring format. The idea being that a different frontend might be used in the future that simply needs to build on the XML messages and files.
Backend server
The server is responsible for gathering all game-related information, calculating all relevant numbers and sending to the playres only those states that need to be displayed in the frontend.
The backend was realised in Java and is based on an Apache Tomcat web server.
Technical details summary
- Front end: Flash v.8
- Backend: Java, Apache Tomcat 5.5
- Data transfer and storage: XML