Desarrollo de una aplicación web para el juego de batalla naval

El juego de Batalla Naval que hemos desarrollado es una página web que permite a los usuarios, jugar al clásico juego de nuestra infancia. El juego se basa en una sencilla premisa: encontrar y hundir los barcos enemigos en un tablero de 10×10, ganando la partida quien encuentre todos los barcos primero. Es un juego de estrategia con reglas claras y directas, que no requiere grandes animaciones y permite completar una partida en pocos minutos. Estos factores, junto con los recuerdos que nos trae, nos llevaron a elegir dicho juego.
El juego de Batalla Naval implementado ofrece a los usuarios la posibilidad de disfrutar del clásico juego sin necesidad de registrarse. Pueden competir directamente y consultar el ranking de los jugadores registrados para medir sus habilidades contra los demás.
Para aquellos que opten por iniciar sesión, la experiencia se enriquece con funciones adicionales. Pueden guardar sus partidas en curso y recuperarlas más tarde para continuar jugando, lo que resulta especialmente útil para aquellos que desean pausar el juego y retomarlo más adelante. Además, tienen la capacidad de eliminar las partidas guardadas cuando ya no las necesiten, manteniendo así su historial organizado.
El historial de partidas permite a los usuarios revisar su progreso y resultados anteriores. Aquellos que logren una alta puntuación, pueden ver su nombre en el ranking de jugadores anteriormente mencionados. Además, valoramos la privacidad y la opción de decisión del usuario. Por lo tanto, ofrecemos la posibilidad de eliminar la cuenta en cualquier momento.
La aplicación ha sido desarrollada como un sistema web utilizando la metodología ágil SCRUM, dividiendo el proceso en 3 sprint para asegurar eficiencia y flexibilidad en el desarrollo. Este enfoque nos permitió iterar rápidamente sobre las funcionalidades del juego y ajustarlas según las necesidades.
Para el desarrollo del software, hemos empleado un conjunto robusto de tecnologías y herramientas que incluyen Angular JS y Angular Material para la interfaz de usuario dinámica y amigable, Node.js para el backend eficiente y escalable, phpMyAdmin para la gestión de bases de datos, y Git junto con GitHub para el control de versiones y la colaboración en equipo. Además, hemos integrado GitHub Actions y SonarCloud para garantizar la calidad del código y mantener los estándares de desarrollo.
ABSTRACT:
The Battleship game we have developed is a web page that allows users to play the classic game from our childhood. The game is based on a simple premise: find and sink the enemy ships on a 10×10 board, with the first player to find all the ships winning the game. It is a strategy game with clear and straightforward rules, requiring no elaborate animations and allowing a game to be completed in a few minutes. These factors, along with the nostalgic memories it brings, led us to choose this game.
The implemented Battleship game offers users the possibility to enjoy the classic game without needing to register. They can compete directly and check the ranking of registered players to measure their skills against others.
For those who choose to log in, the experience is enriched with additional features. They can save their current games and resume them later, which is especially useful for those who want to pause and continue playing at a later time. Additionally, they have the ability to delete saved games when they no longer need them, thus keeping their history organized.
The game history allows users to review their progress and previous results. Those who achieve a high score can see their name in the aforementioned player ranking. Furthermore, we value privacy and user choice, offering the possibility to delete their account at any time.
The application has been developed as a web system using the agile SCRUM methodology, dividing the process into three sprints to ensure efficiency and flexibility in development. This approach allowed us to iterate quickly over the game’s functionalities and adjust them according to needs.
For the software development, we employed a robust set of technologies and tools, including Angular JS and Angular Material for the dynamic and user-friendly interface, Node.js for the efficient and scalable backend, phpMyAdmin for database management, and Git along with GitHub for version control and team collaboration. Additionally, we integrated GitHub Actions and SonarCloud to ensure code quality and maintain development standards.

​El juego de Batalla Naval que hemos desarrollado es una página web que permite a los usuarios, jugar al clásico juego de nuestra infancia. El juego se basa en una sencilla premisa: encontrar y hundir los barcos enemigos en un tablero de 10×10, ganando la partida quien encuentre todos los barcos primero. Es un juego de estrategia con reglas claras y directas, que no requiere grandes animaciones y permite completar una partida en pocos minutos. Estos factores, junto con los recuerdos que nos trae, nos llevaron a elegir dicho juego.
El juego de Batalla Naval implementado ofrece a los usuarios la posibilidad de disfrutar del clásico juego sin necesidad de registrarse. Pueden competir directamente y consultar el ranking de los jugadores registrados para medir sus habilidades contra los demás.
Para aquellos que opten por iniciar sesión, la experiencia se enriquece con funciones adicionales. Pueden guardar sus partidas en curso y recuperarlas más tarde para continuar jugando, lo que resulta especialmente útil para aquellos que desean pausar el juego y retomarlo más adelante. Además, tienen la capacidad de eliminar las partidas guardadas cuando ya no las necesiten, manteniendo así su historial organizado.
El historial de partidas permite a los usuarios revisar su progreso y resultados anteriores. Aquellos que logren una alta puntuación, pueden ver su nombre en el ranking de jugadores anteriormente mencionados. Además, valoramos la privacidad y la opción de decisión del usuario. Por lo tanto, ofrecemos la posibilidad de eliminar la cuenta en cualquier momento.
La aplicación ha sido desarrollada como un sistema web utilizando la metodología ágil SCRUM, dividiendo el proceso en 3 sprint para asegurar eficiencia y flexibilidad en el desarrollo. Este enfoque nos permitió iterar rápidamente sobre las funcionalidades del juego y ajustarlas según las necesidades.
Para el desarrollo del software, hemos empleado un conjunto robusto de tecnologías y herramientas que incluyen Angular JS y Angular Material para la interfaz de usuario dinámica y amigable, Node.js para el backend eficiente y escalable, phpMyAdmin para la gestión de bases de datos, y Git junto con GitHub para el control de versiones y la colaboración en equipo. Además, hemos integrado GitHub Actions y SonarCloud para garantizar la calidad del código y mantener los estándares de desarrollo.
ABSTRACT:
The Battleship game we have developed is a web page that allows users to play the classic game from our childhood. The game is based on a simple premise: find and sink the enemy ships on a 10×10 board, with the first player to find all the ships winning the game. It is a strategy game with clear and straightforward rules, requiring no elaborate animations and allowing a game to be completed in a few minutes. These factors, along with the nostalgic memories it brings, led us to choose this game.
The implemented Battleship game offers users the possibility to enjoy the classic game without needing to register. They can compete directly and check the ranking of registered players to measure their skills against others.
For those who choose to log in, the experience is enriched with additional features. They can save their current games and resume them later, which is especially useful for those who want to pause and continue playing at a later time. Additionally, they have the ability to delete saved games when they no longer need them, thus keeping their history organized.
The game history allows users to review their progress and previous results. Those who achieve a high score can see their name in the aforementioned player ranking. Furthermore, we value privacy and user choice, offering the possibility to delete their account at any time.
The application has been developed as a web system using the agile SCRUM methodology, dividing the process into three sprints to ensure efficiency and flexibility in development. This approach allowed us to iterate quickly over the game’s functionalities and adjust them according to needs.
For the software development, we employed a robust set of technologies and tools, including Angular JS and Angular Material for the dynamic and user-friendly interface, Node.js for the efficient and scalable backend, phpMyAdmin for database management, and Git along with GitHub for version control and team collaboration. Additionally, we integrated GitHub Actions and SonarCloud to ensure code quality and maintain development standards. Read More