Seguimos con el tema de crear una aplicación que permita el control de competiciones en federaciones deportivas. En este caso concreto en la modalidad de bolo palma. Después de plantear por encima la problemática a resolver, es hora de ir modelando las distintas entidades que darán forma al proyecto. Llegados a este punto, el embolado, empieza a ser curioso. Digo esto, porque voy escribiendo los posts mientras voy desarrollando. Así que supongo que el proyecto vaya pivotando y mutando varias veces.
Me he decidido por Javascript, como ya vimos en la aplicación de login, de la que partirá todo el proyecto, para el lado del servidor. Probablemente también lo use en el lado del cliente, aunque siento curiosidad por usar Laravel, pero de momento no hace falta mirar tan adelante. Para la base de datos me decanto de momento por Sqlite3. El objetivo es que el proyecto pueda funcionar en una raspberry Pi, o en un sencillo VPS de 3 €/mes así que toca minimizar el uso de recursos en cuanto a RAM y procesador.
La principal variación de la aplicación de login, está en el modelo de usuarios. Ya que no vamos a tener un solo tipo de usuarios, sino varios. Y cada tipo de usuarios, va a tener un panel de control distinto. Así, en una primera aproximación, tendremos los siguientes tipos de usuarios:
- Federación: en principio, un usuario único. Debe tener capacidad de crear temporadas, modalidades, categorías, circuitos y competiciones. Además será el encargado de dar de alta a organizaciones, árbitros y jugadores para que puedan hacer uso del sistema.
- Organizaciones: Para las competiciones que tengan asignadas, podrán consultar el listado diario de tiradas, introducir los registros de caja jugador, subir fotos y disponer de informes y estadísticas en tiempo real.
- Jueces Árbitros: para las competiciones que tengan asignadas, podrán consultar el listado diario de tiradas, además de firmar cada uno de los concursos.
- Jugadores: dentro de su modalidad y categoría podrán reservar hora en las distintas competiciones y podrán consultar su histórico a través de las distintas temporadas.
Por tanto se hace necesario también definir modelos de Temporada, Modalidad, Categorías, Circuitos, Competiciones y Concursos… A cada paso que doy, el charco se hace más profundo, ya veremos si soy capaz de salir…