Requisitos - nahumrosillo/Torni-Juegos GitHub Wiki

Requisitos

Usuario

  • Usuario: Un usuario es cualquier persona registrada en el sistema con cualquiera de los siguientes roles:

  • Superadministrador: Solo habrá uno y será quien pueda dar de alta y de baja a los administradores.

  • Administrador: Son los encargados de gestionar a los patrocinadores. Y gestionar juegos.

  • Patrocinador: Encargados de gestionar torneos con premio dentro de cada juego.

  • Jugador: Se inscriben en torneos para jugar.

  • Tienen un nick, nombre, dni, contraseña, fecha de nacimiento y un sexo.

  • Un usuario solamente podrá tener un rol. Solamente pondrá consultar juegos, torneos y partidos.

  • Cuando un nuevo usuario se registra, el superadministrador tendrá que darle de alta como Jugador, Patrocinador o Administrador.

  • Por defecto existirá el superadministrador de Nick: superadmin y contraseña: superadmin. Solo uno en el sistema.


Login

  • Para acceder a cualquier parte del software, es necesario que el usuario se registre previamente, o se logee en el sistema.

  • Si el usuario no existe entonces podrá registrarse en el sistema. Al finalizar el registro el usuario tendrá el rol de Jugador.


Juego

  • Para crear torneos es necesario que antes exista el juego en la aplicación. Solo el superadministrador y los administradores podrán añadir juegos a la aplicación. Si un juego ya existe, entonces no se añade. Pueden almacenarse como máximo 10 juegos diferentes.

  • Cada Juego podrá tener entre 0 y 100 torneos como máximo.

  • Un juego tendrá un nombre, una descripción como máximo 100 caracteres y una categoría (Acción, Juego de Mesa y Deporte).


Torneo

  • Dado un juego, cualquier patrocinador podrá crear torneos siempre y cuando no existan más de 100 torneos. Podrán tener premios o no.

  • Si patrocinador decide crear un torneo. Todos los campos son obligatorios. Es decir, hay que introducir todas las fechas. Tendrá que establecer una serie de parámetros:

  • Fecha inicio de inscripción: fecha inicial para inscribirse al torneo.

  • Fecha fin de inscripción: termina el periodo de inscripción.

  • Fecha inicio: Comienza el torneo, es la fecha inicial del primer partido.

  • Fecha fin: Finaliza el torneo, es la fecha del ultimo partido.

  • Numero de equipos: Equipos que van a participar. Mínimo 2 grupos.

  • Numero de jugadores por equipo: Jugadores necesarios en el equipo.

  • Premio: premio en metálico para el grupo ganador.

  • El patrocinador del torneo, podrá establecer la fecha de los partidos o bien dejar al sistema para que lo decida.

  • Desde la fecha inicio de inscripción hasta la fecha fin de inscripción, cualquier jugador o grupo podrá inscribirse al torneo siempre y cuando haya cupo, o desinscribirse. Un jugador indivudal puede solicitar equipo en el torneo o bien, previamente crear un grupo de jugadores e inscribirse en el torneo. Pasado este tiempo se cierran las inscripciones y comienza el torneo. Si no se ha alcanzado el número máximo de jugadores, entonces el torneo acaba por falta de jugadores. En caso contrario comienza el torneo con el primer partido.

  • Si un jugador abandona el torneo o abandona un partido, entonces ese equipo queda descalificado.

  • Un jugador no podrá inscribirse en un torneo si previamente ya está inscrito en otro en el mismo periodo de tiempo. Los torneos requieren estar con total disponibilidad desde la fecha de inscripción hasta la fecha que termina, por ello, no se permite inscribirse en varios torneos comprendidos entre la fecha de inicio del torneo y la fecha final del torneo.

  • Una vez creado un torneo no será posible modificar ningún parámetro del torneo.

  • Un patrocinador podrá crear tantos torneos como desee siempre y cuando no coincida ninguna de sus fecha entre fecha de inicio del torneo y fecha final del torneo. Podrá establecer un premio.

  • En un torneo solamente podrá participar jugadores, un patrocinador no podrá participar en un torneo.


Partido

  • Cada partido del torneo tendrá una fecha, un grupo local, un equipo visitante, puntuación del grupo local y puntuación del equipo visitante.

  • Cada partida podrá tener diferentes estados: No comenzado, en curso, finalizado, cancelado.

  • El creador del torneo será el responsable de modificar en tiempo real la puntuación del partido. También de decidir cuando el partido a finalizado.

  • Al terminar el partido se almacenaran los resultados del partido. El grupo ganador, el equipo perdedor y el resultado de cada uno.