Web Board Game: Santorini

June 2024

Overview

A web-based implementation of the popular board game Santorini, featuring a modern architecture, robust testing, and automated deployment pipeline. The project demonstrates software engineering best practices and scalable design patterns.

Key Features

  • Modular and extensible game design using object-oriented principles
  • Comprehensive testing suite with 95% coverage
  • Automated CI/CD pipeline
  • Real-time multiplayer functionality
  • Responsive web interface

Technologies Used

JavaMavenJUnitJacocoGitHub ActionsUML

Architecture

The project follows a clean architecture approach with:

  • Domain-driven design principles
  • Clear separation of concerns
  • Low coupling and high cohesion
  • Extensive use of design patterns

Development Process

  • Agile development methodology
  • Test-driven development (TDD)
  • Continuous integration and deployment
  • Regular code reviews and pair programming