Actividad 5: Modulando un sistema de torneos de videojuegos
Descripción del problema
Imagina que estás desarrollando un sistema para gestionar torneos de videojuegos. El sistema debe permitir a los jugadores registrarse, crear equipos, inscribirse en torneos y llevar un seguimiento de los resultados. Para ello, debes modular el sistema en diferentes paquetes y clases, siguiendo los principios de modularidad y reutilización de código.
Actividades
Crear un paquete
jugadores
: En este paquete, define una claseJugador
que represente a un jugador. La clase debe tener atributos comonombre
,edad
,nick
, y métodos para obtener y establecer estos atributos.Crear un paquete
equipos
: En este paquete, define una claseEquipo
que represente a un equipo de jugadores. La clase debe tener atributos comonombre
,jugadores
(una lista de objetosJugador
) y métodos para agregar y eliminar jugadores del equipo.Crear un paquete
torneos
: En este paquete, define una claseTorneo
que represente a un torneo de videojuegos. La clase debe tener atributos comonombre
,equipos
(una lista de objetosEquipo
) y métodos para inscribir equipos en el torneo y llevar un seguimiento de los resultados.Crear un paquete
resultados
: En este paquete, define una claseResultado
que represente los resultados de un torneo. La clase debe tener atributos comotorneo
,equipoGanador
, y métodos para obtener y establecer estos atributos.Crear una clase
Main
: En esta clase, crea un menú de opciones que permita a los usuarios registrar jugadores, generar equipos, inscribir equipos en torneos y mostrar los resultados. Utiliza las clases definidas en los paquetes anteriores para implementar la funcionalidad del sistema, las cuales son:Agregar Equipo: Permite al usuario agregar un nuevo equipo al torneo.
Agregar Jugador a Equipo: Permite al usuario agregar un jugador a un equipo existente.
Eliminar Jugador de Equipo: Permite al usuario eliminar un jugador de un equipo existente.
Agregar Torneo: Permite al usuario agregar un nuevo torneo al sistema.
Inscribir un Equipo en un Torneo: Permite al usuario inscribir un equipo en un torneo existente.
Asignar Resultado: Permite al usuario asignar un resultado a un torneo.
Mostrar Resultados: Permite al usuario mostrar los resultados de un torneo.
Mostrar Equipos: Permite al usuario mostrar los equipos inscritos en un torneo.
Mostrar Jugadores: Permite al usuario mostrar los jugadores de un equipo.
Mostrar Jugadores de un Torneo: Permite al usuario mostrar los jugadores inscritos en un torneo.
Salir: Permite al usuario salir del sistema.
Implementar la modularidad: Asegúrate de que cada paquete y clase tenga una única responsabilidad y que el código esté organizado de manera lógica. Utiliza principios de modularidad y reutilización de código para facilitar el mantenimiento y la escalabilidad del sistema.
Entregables
Código fuente del sistema modularizado en paquetes y clases.
Pruebas de funcionalidad del sistema, mostrando cómo se pueden registrar jugadores, crear equipos, inscribir equipos en torneos y mostrar resultados.
Reflexión sobre la importancia de la modularidad en el desarrollo de software y cómo se aplicaron los principios aprendidos en esta actividad.
Criterios de evaluación
Criterio | Descripción | Puntuación |
---|---|---|
Portada | Presentación y datos de identificación del equipo de trabajo. | 10% |
Código | Calidad del código, modularidad y uso de buenas prácticas. | 20% |
Pruebas | Cobertura de pruebas funcionales y casos de prueba. | 30% |
Modularidad | Uso de paquetes y clases. | 20% |
Interacción | Uso de JOptionPane para la interacción con el usuario. | 20% |
Total | 100% |
Fecha de entrega
La actividad debe ser entregada en un archivo comprimido (zip) que contenga el código fuente y las pruebas. La fecha de entrega es el 12 de mayo de 2025 a las 23:59 horas.