The development of this project is part of the software engineering course at the Polytechnic University of Milan, and as a final examination, it is necessary for the bachelor's degree in computer engineering. The course was held by prof. Alessandro Margara, Gianpaolo Cugola and Pierluigi San Pietro in the academic year 2021-2022.
Final Score: 30/30 cum laude
The project consists of a distributed multi-user application with a graphical interface that emulates a board game.
The official game can be found here
| Functionality | State |
|---|---|
| Basic rules | 🟢 |
| Complete rules | 🟢 |
| Socket | 🟢 |
| GUI | 🟢 |
| CLI | 🟢 |
| Character cards | 🟢 |
| Multiple games | 🟢 |
| Persistence | 🟢 |
| 4 players game | 🔴 |
| Resilience to disconnections | 🔴 |
🔴 Not implemented 🟡 Implementing 🟢 Implemented
Coverage criteria: code lines.
| Package | Tested Class | Coverage |
|---|---|---|
| Model | Global Package | 823/963 (85%) |
- Intellij IDEA Ultimate - Development environment
- Maven - Project management
- Git - Version control
- Junit - Testing
- Sonarqube - Code analysis
- Astah UML - UML diagram
The software can be run on WIndows, Linux and MacOS.
The software was developed using Java 17.0.0.2 and Java JDK 17.0.0.2, so be sure to use these versions or higher.
- Be sure to have Java and Java JDK installed
- Download AM57-client.jar and AM57-server.jar (at least one server should be up to play!)
- To open the server you need to type
-java -jar AM57-server.jar [port number](this passage is optional if another server is already running) - Open the cmd and then type
-java -jar AM57-client.jar [interface]where instead of interface, type CLI or GUI depending on your preferences - Have fun!
When using the CLI mode, we suggest to utilize conEmu on Windows, since some special characters are not correctly visualized in the default Windows shell.
Eryantis Board Game is copyrighted 2021.
Licensed under the MIT License ; you may not use this software except in compliance with the License.
