# 📌 Informe 3 – Video carga de datos del proyecto
**NOTA: Aquí solo se entregará un vídeo**
## 1) Estructura sugerida del video (6–8 min, máx. 10)
**Título & objetivo**
- Nombre del equipo, app, motor de BD y propósito del video
**Contexto**
- 1 frase que enlace con el Informe de inicio (reglas clave) y el Informe de diseño (ER → relacional).
**Setup del entorno**
- Mostrar versión del SGBD (p. ej. `SELECT version();`).
- Crear base / conectar (sin exponer contraseñas).
- Estructura de carpetas: `01_schema.sql`, `02_seed.sql`, `03_queries.sql`.
**Esquema (DDL)**
- Ejecutar `01_schema.sql` (tablas, PK, FK, UNIQUE, NOT NULL, CHECK).
- Señalar **una decisión de diseño** (p. ej. tabla puente para N:M).
**Carga de datos (DML/Bulk)**
- Ejecutar `02_seed.sql` o `COPY/LOAD DATA`.
- Validación rápida: conteos por tabla.
**Consultas representativas (03_queries.sql)**
Mínimo 5 consultas, cada una responde a una regla/objetivo:
1. SELECT + WHERE (filtro por criterio de negocio).
2. JOIN (≥ 2 tablas) que responda una pregunta real.
3. Agregación con GROUP BY y HAVING.
4. Subconsulta
**Transacción breve**
- `BEGIN;` → `UPDATE/INSERT` → `ROLLBACK` o `COMMIT`.
- Explica en 1 frase cómo se garantiza la consistencia de datos en la transacción.
**Seguridad**
- Usuario de solo lectura para reporting: `CREATE USER …; GRANT SELECT ON schema.* TO …;`.
**Cierre**
- Cómo reproducir (README), límites conocidos y próximos pasos.
## 2) Artefactos que deben acompañar al video
- **Repositorio/ZIP** con:
```
/sql
01_schema.sql
02_seed.sql
03_queries.sql
README.md (paso a paso para correr)
```
- **README.md** (obligatorio) con: requisitos, motor y versión, comandos para levantar/cargar/consultar, orden de ejecución de scripts.
## 3) Requisitos técnicos mínimos
- **Motor**: MySQL/MariaDB (indicar versión).
- **Reproducibilidad**: Uso de comandos simples con los archivos sql
- **Naming** coherente con el diccionario de datos entregado en el informe 2 (ej.: `student_id`, `course_id`).
- **Consistencia con el Informe 2**: tablas/relaciones deben coincidir.
## 4) Guion mínimo de locución (plantilla)
- “Somos **Equipo 04**, mostraremos:
- La **creación del esquema** (PK/FK/constraints).
- La **carga de datos** y **5 consultas** que prueban nuestras reglas de negocio X, Y, Z.
- **Decisión clave**: resolvimos la relación N:M... por ejemplo, _Student–Course_ con `enrollment`.
- **Transacción demo**: garantizamos que... por ejemplo, el cupo no se sobreasigne (rollback si falla).
- **Seguridad**: usuario `report_reader` con permisos `SELECT`.
## 5) Rúbrica de evaluación (100 pts)
La evaluación se basará en la correcta ejecución técnica, claridad de las consultas y la reproducibilidad del proyecto.
| Criterio | Nivel 4 – Excelente | Nivel 3 – Bueno | Nivel 2 – Aceptable | Nivel 1 – Insuficiente | Puntos Máximos |
| :------------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------- | :------------: |
| **1. Correcta técnica (DDL + constraints)** | Esquema creado sin errores. Uso perfecto de constraints (PK, FK, UNIQUE, CHECK). Refleja fielmente el Informe 2. | Esquema funcional con constraints principales. Errores mínimos que no afectan la integridad de los datos. | Esquema creado pero faltan constraints clave o hay desajustes notorios con el Informe 2. | Fallos críticos en la creación del esquema. Faltan PK/FK o el script no ejecuta. | **2.5 pts** |
| **2. Carga de datos (DML/Bulk)** | Scripts de carga (`seed.sql`) impecables y eficientes. Validación clara del volumen de datos esperado. | Carga de datos exitosa mediante scripts. Faltan validaciones de volumen o hay datos inconsistentes menores. | Carga manual parcial o uso de scripts con errores que requieren intervención manual para funcionar. | No se presentan scripts de carga, o los scripts fallan completamente. No hay datos suficientes para probar. | **1.5 pts** |
| **3. Calidad de consultas y transacciones** | 5+ consultas complejas (JOIN, GROUP BY, subconsultas) que validan reglas de negocio. Transacción demo impecable (COMMIT/ROLLBACK explícito). | Consultas correctas y funcionales, pero alguna no responde claramente a una regla de negocio. Transacción básica. | Consultas simples o repetitivas. Fallos lógicos en los JOINs. Transacción ausente o incorrectamente explicada. | Consultas con errores de sintaxis, uso exclusivo de `SELECT *`. No demuestran cobertura de las reglas de negocio. | **2.5 pts** |
| **4. Reproducibilidad (README, scripts)** | Repositorio estructurado (`schema`, `seed`, `queries`). README detallado, claro y paso a paso. Reproducibilidad 100% garantizada. | Estructura de carpetas correcta. README funcional pero omite detalles menores de configuración o versiones. | Archivos desorganizados. README confuso o incompleto, dificultando la ejecución independiente. | Scripts mezclados o faltantes. Sin README o instrucciones de ejecución inútiles. | **1.5 pts** |
| **5. Seguridad básica (roles/permisos)** | Creación de usuario específico (ej. `report_reader`) con permisos granulares (solo `SELECT` en tablas específicas) demostrada en video. | Creación de usuario con permisos limitados a nivel de esquema, pero sin granularidad o justificación clara. | Menciona la seguridad pero la implementación es defectuosa o se usan permisos excesivos. | Todo ejecutado como `root`/`admin`. No hay demostración de roles o permisos restringidos. | **1.0 pts** |
| **6. Comunicación (claridad del video)** | Video dinámico (<10 min), audio claro, ritmo excelente. Todos los miembros explican con dominio técnico sus partes. | Video dentro del tiempo, buen audio. Explicaciones claras aunque con leves titubeos técnicos. | Video largo o apresurado. Audio deficiente en partes. Explicaciones superficiales o leídas textualmente. | Video incomprensible, sin estructura clara o excede excesivamente el tiempo. Falta de dominio del tema. | **1.0 pts** |
## 6) Checklist final antes de grabar
- Aplicar los scripts previamente.
- **Cada consulta** está vinculada a una **regla de negocio** del Informe 1.
- Se emplea el **usuario correcto (no root)**.
- Video < 10 min, fuente legible, teclado en pantalla desactivado, **subtítulos** si es posible.
## 7) Errores comunes a evitar
- Ejecutar scripts **fuera de orden** (rompe carga).
- Usar `SELECT *` en el video (muestra columnas irrelevantes y oculta intención).
- Cargar datos “a mano” desde terminal; **usen scripts** para reproducir.
- Mezclar **usuarios** (root, admin y lector) durante la demo.
- Repetir consultas sin explicar **qué regla** validan.
## 8) Entrega
- **Formato**: enlace a MP4 (Teams/Zoom/otro) + ZIP/Repo con los artefactos.
- **Nombre de archivo**: `Equipo##_VideoImplementacion_YYYY-MM-DD.mp4`.
- **Plazo**: Miércoles 08 de octubre.