09. Evento de actividades

En este ejercicio vamos a crear una aplicación acerca de un evento que se va a realizar, en el cual hay un listado de actividades a las que una persona se puede apuntar, dichas actividades son apuntarse a clases de Yoga, Zumba y Pilates en unos horarios determinados. Y las reglas que se han de cumplir para apuntarse a dichas actividades son:

  • El evento tendrá 3 disciplinas: Pilates, Yoga y Zumba.
  • Cada disciplina tendrá 3 bloques de horarios.
    • Bloque 1 de 9 a 12.
    • Bloque 2 de 14 a 17.
    • Bloque 3 de 18 a 21.
  • Cada actividad tendrá un máximo de 15 participantes, excepto Yoga, que tiene un máximo de 20.
  • Cada participante sólo se podrá apuntar a una actividad.

Vamos a crear un archivo markdown, denominado Actividades_LogicaNegocio.md, que contendrá la siguiente sintaxis:

## Requisitos del Sistema

- Registrar participantes para el evento
- El evento tendrá 3 disciplinas: Pilates, Yoga y Zumba
- Cada disciplina tendrá 3 bloques de horarios
  - Bloque 1 de 9 a 12
  - Bloque 2 de 14 a 17
  - Bloque 3 de 18 a 21
- Cada actividad tendrá un máximo de 15 participantes, excepto Yoga que tendrá 20
- Cada participante sólo se puede registrar a una sóla actividad

## Listado de Entidades

### actividades **(EC)**

- actividad_id **(PK)**
- bloque
- disciplina
- horario
- cupo

### participantes **(ED)**

- email **(PK)**
- nombre
- apellidos
- nacimiento

### registros **(ED | EP)**

- registro_id **(PK)**
- email **(FK)**
- actividad **(FK)**
- fecha

## Relaciones

1. Un **participante** crea un **registro** (_1 - 1_)
1. Una **actividad** se asigna a un **registro** (_1 - M_)

## Diagramas

### Modelo Relacional de la BD

## Reglas de Negocio

### actividades

1. Crear una actividad
1. Leer todas las actividades
1. Leer una actividad en particular
1. Actualizar una actividad
1. Eliminar una actividad

### participantes

1. Crear un participante
1. Leer todos los participantes
1. Leer un participante en particular
1. Actualizar un participante
1. Eliminar un participante

### registros

1. Crear un registro
1. Leer todos los registros
1. Leer un registro en particular
1. Actualizar un registro
1. Eliminar un registro

### lógica y validaciones de requisitos

- Registrar un participante implica:
  - Validar cupo de la actividad
  - Insertar datos a las entidades participantes y registros
  - Restarle uno al atributo cupo de la entidad actividades
- Listar registros
- Eliminar participante implica:
  - Eliminar datos a las entidades participantes y registros
  - Sumarle uno al atributo cupo de la entidad actividades
Scroll al inicio