Gamification Forum (Fórum Gamification) is an original project developed as the final work of the course Agile Development with Advanced Java — the application is a Forum Management System.

Users can register topics and comments, while administrators can manage topics, comments, and create new forums.
When a user posts a topic or comment, they earn points, allowing them to compete with others in an exciting ranking system.
The application is structured in layers, following the MVC model, with an intermediate layer between the Servlets and the Database.
The project uses an Apache Tomcat JEE Application Server, which receives requests and forwards them to the Servlets. The Servlets then access the database through the DAO layer and forward the information to the JSP pages.
The registration of users, forums, topics, comments, and the ranking system are stored in a PostgreSQL database and accessed via JDBC.
Gamification Forum is a highlight in software testing, featuring: Unit Tests with JUnit, Database Integration Tests with DBUnit, and End-to-End (E2E) Behavior Validation Tests with Selenium WebDriver.
When it comes to Software Testing, Gamification Forum exceeds expectations. For instance, the utility class HelperTest(AuxiliaTest) provides a set of static methods that allow populating the database (with an initial test data set) before each test — even updating the table sequences in the database.
To maximize the learning of the target technology, form validation was done in the Servlets, creating an exceptional experience!
The Agile Development with Advanced Java course and the Gamification Forum final project consumed a total of 522 hours of work (completed between October 18th, 2021, and August 18th, 2022) — a period of 10 months.