PROMPT MAESTRO — PLATAFORMA EDUCATIVA PHP + MYSQL
PROMPT MAESTRO — PLATAFORMA EDUCATIVA PHP + MYSQL
Quiero desarrollar desde cero una plataforma educativa web en PHP + MySQL, inicialmente sencilla y minimalista, pero con una arquitectura correctamente diseñada para poder crecer posteriormente.
La plataforma comenzará como un blog educativo, pero debe estar preparada para convertirse posteriormente en una plataforma de aprendizaje interactivo con:
Blog educativo.
Temas.
Subtemas.
Contenido educativo.
Imágenes.
Videos.
Preguntas.
Respuestas.
Exámenes.
Flashcards.
Quiz Visual.
Memorama.
Registro de resultados.
Estadísticas.
Y posteriormente una IA educativa.
La primera versión NO debe implementar IA.
La prioridad es construir una base sólida, sencilla, modular y fácil de entender.
1. FILOSOFÍA DEL PROYECTO
El proyecto debe ser:
Minimalista.
Funcional.
Fácil de mantener.
Fácil de modificar.
Fácil de ampliar.
Bien organizado.
Seguro.
Sin frameworks innecesarios.
Sin diseño visual complejo.
No quiero que se pierda tiempo creando un diseño bonito.
Quiero que primero funcione correctamente.
El CSS debe limitarse a lo estrictamente necesario para:
estructura;
formularios;
tablas;
botones;
navegación;
tarjetas;
actividades;
distribución;
responsive básico.
NO utilizar:
Bootstrap.
Tailwind.
Materialize.
Foundation.
Frameworks CSS.
Plantillas administrativas.
Librerías visuales externas.
Utilizar CSS propio y mínimo.
Posteriormente se podrá crear un diseño visual completamente diferente sin tener que modificar la lógica de la aplicación.
2. TECNOLOGÍAS
Utilizar:
PHP 8+
MySQL 8+
PDO
HTML5
CSS3
JavaScript Vanilla
No utilizar:
Laravel.
Symfony.
CodeIgniter.
WordPress.
ORM.
Frameworks PHP.
La conexión a MySQL debe utilizar PDO.
Todas las consultas que reciban datos externos deben utilizar consultas preparadas.
3. ARQUITECTURA
Utilizar una arquitectura modular sencilla.
Propuesta:
/blog-educativo
/admin
/index.php
/temas
/subtemas
/contenidos
/multimedia
/preguntas
/flashcards
/examenes
/usuarios
/config
/controllers
/models
/views
/includes
/assets
/css
/js
/uploads
/imagenes
/videos
/public
/actividades
/examenes
/flashcards
/quiz-visual
/memorama
/index.php
La estructura puede modificarse si existe una alternativa técnicamente mejor.
Explicar primero la arquitectura propuesta antes de generar todo el código.
4. BASE DE DATOS
Crear:
database.sql
que genere toda la base de datos.
Nombre:
blog_educativo
La base de datos debe utilizar:
InnoDB.
UTF8MB4.
Claves primarias.
Claves foráneas.
Índices.
Timestamps cuando sean necesarios.
No crear una tabla diferente para cada tema.
NO crear:
matematicas
espanol
historia
como tablas.
Debe existir una sola tabla:
temas
Y otra:
subtemas
relacionadas mediante claves foráneas.
5. TABLA USUARIOS
Crear:
usuarios
Campos:
id
nombre
email
password
rol
activo
fecha_creacion
fecha_actualizacion
El campo rol puede utilizar inicialmente:
admin
y posteriormente:
alumno
profesor
etc.
Las contraseñas deben utilizar:
password_hash()
y:
password_verify()
Nunca guardar contraseñas en texto plano.
6. TABLA TEMAS
Crear:
temas
Campos:
id
nombre
slug
descripcion
imagen_id
activo
fecha_creacion
fecha_actualizacion
Ejemplo:
Matemáticas
Español
Historia
Inglés
Ciencias
Programación
7. TABLA SUBTEMAS
Crear:
subtemas
Campos:
id
tema_id
nombre
slug
descripcion
imagen_id
activo
fecha_creacion
fecha_actualizacion
Relación:
temas.id
↓
subtemas.tema_id
Un tema puede tener muchos subtemas.
Ejemplo:
MATEMÁTICAS
Fracciones
Decimales
Porcentajes
Ecuaciones
Geometría
8. CONTENIDOS
Crear:
contenidos
Campos:
id
tema_id
subtema_id
titulo
slug
resumen
contenido
imagen_destacada_id
orden
activo
fecha_creacion
fecha_actualizacion
Reglas:
Todo contenido pertenece obligatoriamente a un tema.
El subtema puede ser NULL.
Ejemplo:
Tema:
Matemáticas
Subtema:
Fracciones
Contenido:
"Fracciones equivalentes"
9. MULTIMEDIA
Crear una biblioteca central de multimedia.
Tabla:
multimedia
Campos:
id
tema_id
subtema_id
contenido_id
tipo
nombre_original
nombre_archivo
ruta
extension
mime_type
tamaño
titulo
descripcion
alt_text
orden
activo
fecha_creacion
El campo:
tipo
podrá contener inicialmente:
imagen
video
10. IMPORTANTE — REUTILIZACIÓN DE MULTIMEDIA
Las imágenes y videos deben poder reutilizarse.
Una imagen subida una sola vez debe poder utilizarse en:
contenido;
Flashcard;
Quiz Visual;
Memorama;
imagen destacada;
posteriormente otras actividades.
NO crear copias físicas innecesarias.
Ejemplo:
Una imagen:
perro.jpg
puede utilizarse en:
Contenido: "Los mamíferos"
Flashcard: "Dog"
Quiz Visual: "¿Qué animal aparece?"
Memorama: "Animales"
11. SUBIDA DE IMÁGENES Y VIDEOS
Crear un administrador de multimedia.
Permitir:
subir imagen;
subir video;
seleccionar tema;
seleccionar subtema;
opcionalmente asociarlo a un contenido.
Guardar físicamente:
/uploads/imagenes/
/uploads/videos/
En MySQL guardar únicamente los metadatos.
Nunca utilizar directamente el nombre original como nombre físico.
Generar nombres únicos.
Ejemplo:
20260811_a83k91.jpg
12. SEGURIDAD DE ARCHIVOS
Validar:
extensión;
MIME;
tamaño;
nombre;
directorio de destino.
No permitir que dentro de uploads puedan ejecutarse archivos PHP.
Crear medidas mediante:
.htaccess
o configuración equivalente del servidor.
13. PREGUNTAS
Crear:
preguntas
Campos:
id
tema_id
subtema_id
multimedia_id
tipo
pregunta
explicacion
dificultad
activo
fecha_creacion
fecha_actualizacion
Relaciones:
tema_id → temas.id
subtema_id → subtemas.id
multimedia_id → multimedia.id
Los últimos dos pueden ser NULL.
14. TIPOS DE PREGUNTAS
El campo:
tipo
debe permitir inicialmente:
multiple_choice
visual
Pero diseñar el sistema para posteriormente poder agregar:
verdadero_falso
respuesta_abierta
ordenar
relacionar
completar
etc.
No implementar esos tipos todavía.
15. PREGUNTAS NORMALES
Ejemplo:
Tema:
Matemáticas
Subtema:
Multiplicación
Pregunta:
¿Cuánto es 5 × 5?
16. PREGUNTAS VISUALES
Si:
preguntas.multimedia_id
contiene una imagen, la pregunta puede utilizarse como:
Quiz Visual.
Ejemplo:
Imagen:
[foto de un animal]
Pregunta:
¿Qué animal aparece en la imagen?
Las respuestas se obtienen de la tabla:
respuestas
17. TABLA RESPUESTAS
Crear:
respuestas
Campos:
id
pregunta_id
respuesta
es_correcta
orden
activo
fecha_creacion
Relación:
preguntas.id
↓
respuestas.pregunta_id
Una pregunta puede tener cualquier número de respuestas.
Por ejemplo:
2
3
4
5
6
etc.
No limitar la tabla a cuatro respuestas.
18. CREACIÓN DINÁMICA DE RESPUESTAS
En el administrador:
/admin/preguntas/
crear:
Crear pregunta
Debe permitir:
seleccionar tema;
seleccionar subtema;
seleccionar tipo;
seleccionar dificultad;
seleccionar imagen opcional;
escribir pregunta;
escribir explicación;
agregar respuestas dinámicamente.
Botón:
Agregar respuesta
JavaScript debe permitir agregar y eliminar respuestas sin recargar la página.
Ejemplo:
Pregunta:
¿Cuánto es 5 × 5?
[ 25 ] [✓ Correcta] [Eliminar]
[ 20 ] [Incorrecta] [Eliminar]
[ 30 ] [Incorrecta] [Eliminar]
[ 15 ] [Incorrecta] [Eliminar]
[ + Agregar respuesta ]
19. VALIDACIÓN DE RESPUESTAS
Para una pregunta de opción múltiple:
mínimo 2 respuestas;
exactamente 1 correcta.
No permitir guardar:
ninguna respuesta;
una sola respuesta;
ninguna correcta;
varias correctas.
Validar en:
JavaScript
Y obligatoriamente también en:
PHP
Nunca confiar únicamente en JavaScript.
20. EXÁMENES
Crear:
examenes
Campos:
id
titulo
descripcion
tema_id
subtema_id
numero_preguntas
numero_opciones
activo
fecha_creacion
fecha_actualizacion
21. PREGUNTAS DEL EXAMEN
Crear:
examen_preguntas
Campos:
id
examen_id
pregunta_id
orden
Relaciones:
examenes.id
↓
examen_preguntas.examen_id
y:
preguntas.id
↓
examen_preguntas.pregunta_id
22. BANCO DE PREGUNTAS
Las preguntas deben funcionar como un banco reutilizable.
Una misma pregunta puede utilizarse en diferentes exámenes.
No duplicar preguntas.
Ejemplo:
Pregunta #25
"¿Cuánto es 5 × 5?"
Puede utilizarse en:
Examen 1
Examen 2
Examen de repaso
Quiz
etc.
23. GENERACIÓN ALEATORIA DE EXÁMENES
Permitir generar un examen utilizando:
tema;
subtema;
número de preguntas;
número de opciones.
Ejemplo:
Tema:
Matemáticas
Subtema:
Fracciones
Preguntas:
10
Opciones:
4
El sistema seleccionará preguntas aleatoriamente.
24. SELECCIÓN DE RESPUESTAS
Las respuestas deben salir exclusivamente de:
respuestas
Nunca inventarlas automáticamente.
Cada pregunta debe tener:
1 respuesta correcta
y varias incorrectas.
25. FUNCIÓN PARA GENERAR OPCIONES
Crear una función reutilizable:
obtenerOpcionesPregunta($preguntaId, $numeroOpciones)
Debe:
Buscar respuesta correcta.
Buscar respuestas incorrectas.
Verificar que existan suficientes.
Seleccionar aleatoriamente las incorrectas necesarias.
Agregar la correcta.
Mezclar las opciones.
Devolverlas.
Ejemplo:
Banco:
25 correcta
20 incorrecta
30 incorrecta
15 incorrecta
35 incorrecta
Examen con 4 opciones:
A) 30
B) 25
C) 15
D) 35
Otro intento:
A) 20
B) 35
C) 25
D) 30
La correcta siempre será:
25
pero su posición cambia.
26. FLASHCARDS
Crear módulo:
/actividades/flashcards/
Las Flashcards deben poder asociarse a:
tema;
subtema;
imagen;
texto;
respuesta.
Crear:
flashcards
Campos:
id
tema_id
subtema_id
multimedia_id
frente
reverso
orden
activo
fecha_creacion
fecha_actualizacion
27. FUNCIONAMIENTO DE FLASHCARDS
Ejemplo:
Tema:
Inglés
Subtema:
Animales
Frente:
[Imagen de perro]
What is this?
Botón:
Mostrar respuesta
Después:
DOG
Botones:
Anterior
Siguiente
Barajar
Reiniciar
28. FLASHCARDS CON O SIN IMAGEN
Una Flashcard debe poder funcionar:
solo con texto
o:
texto + imagen
Ejemplo sin imagen:
Frente:
What is the opposite of hot?
Reverso:
Cold
Ejemplo con imagen:
[imagen]
What is this?
Dog
29. QUIZ VISUAL
Crear:
/actividades/quiz-visual/
El Quiz Visual debe utilizar preguntas existentes cuyo:
tipo = visual
y que tengan:
multimedia_id
30. FUNCIONAMIENTO DEL QUIZ VISUAL
Ejemplo:
[IMAGEN]
¿Qué animal aparece?
A) Perro
B) Gato
C) Caballo
D) León
La respuesta correcta debe provenir de:
respuestas
No crear respuestas separadas exclusivamente para Quiz Visual.
31. REUTILIZACIÓN DE PREGUNTAS
Una pregunta visual debe poder utilizarse posteriormente en:
Quiz Visual;
Examen;
repaso;
estadísticas.
No duplicar la pregunta.
32. MEMORAMA
Crear:
/actividades/memorama/
El Memorama utilizará imágenes existentes en:
multimedia
No duplicar las imágenes.
33. GENERACIÓN DEL MEMORAMA
El usuario podrá seleccionar:
Tema
Subtema
Número de parejas
Ejemplo:
Tema:
Animales
Subtema:
Animales salvajes
Parejas:
8
El sistema seleccionará 8 imágenes.
Cada imagen aparecerá exactamente 2 veces.
Ejemplo:
Imagen A
Imagen A
Imagen B
Imagen B
Imagen C
Imagen C
etc.
Después mezclar aleatoriamente todas las cartas.
34. FUNCIONAMIENTO DEL MEMORAMA
Inicialmente todas las cartas estarán ocultas.
Al hacer clic:
Mostrar primera.
Mostrar segunda.
Comparar.
Si son iguales:
mantener visibles.
Si son diferentes:
esperar brevemente;
ocultarlas.
Mostrar:
movimientos;
parejas encontradas;
parejas totales;
tiempo;
botón reiniciar.
El juego debe funcionar con JavaScript Vanilla.
35. REGLA PARA EL MEMORAMA
Las imágenes utilizadas deben pertenecer al mismo:
tema
y opcionalmente:
subtema
Evitar seleccionar imágenes aleatorias de toda la plataforma.
36. ACTIVIDADES
Crear:
/actividades/
Página:
ACTIVIDADES
[ Exámenes ]
[ Flashcards ]
[ Quiz Visual ]
[ Memorama ]
37. ACTIVIDADES POR TEMA
Desde un tema:
/tema/matematicas
poder mostrar:
Contenido
Subtemas
Exámenes
Flashcards
Quiz Visual
Memorama
si existen recursos disponibles.
38. PANEL ADMINISTRATIVO
Crear:
/admin/
Menú:
Inicio
Temas
Subtemas
Contenidos
Multimedia
Preguntas
Flashcards
Exámenes
Usuarios
39. CRUD
Implementar CRUD para:
Temas
Subtemas
Contenidos
Multimedia
Preguntas
Flashcards
Exámenes
Usuarios
Operaciones:
Crear
Listar
Ver
Editar
Eliminar
Preferir eliminación lógica:
activo = 0
cuando corresponda.
40. PÁGINA PÚBLICA
Crear:
/
/temas
/tema/{slug}
/contenido/{slug}
/actividades
/actividades/examenes
/actividades/flashcards
/actividades/quiz-visual
/actividades/memorama
Utilizar URLs amigables mediante:
.htaccess
41. CONTENIDO EDUCATIVO
Los contenidos deben permitir:
título;
resumen;
texto;
imagen;
videos;
multimedia relacionada.
No instalar inicialmente un editor WYSIWYG.
Utilizar textarea.
Si se permite HTML, explicar claramente cómo sanitizarlo.
42. BIBLIOTECA DE MULTIMEDIA
Crear una pantalla:
/admin/multimedia/
que permita:
listar imágenes;
listar videos;
subir;
editar información;
eliminar;
filtrar por tema;
filtrar por subtema;
visualizar.
43. ESTRUCTURA RELACIONAL
La estructura principal debe quedar conceptualmente así:
BLOG EDUCATIVO
|
+-----------------+-----------------+
| |
TEMAS MULTIMEDIA
| |
SUBTEMAS imágenes/videos
|
+----------------+
| |
CONTENIDOS PREGUNTAS
| |
| RESPUESTAS
|
MULTIMEDIA
Y las actividades:
TEMAS
|
+---- EXÁMENES
| |
| +---- EXAMEN_PREGUNTAS
|
+---- FLASHCARDS
|
+---- QUIZ VISUAL
|
+---- MEMORAMA
|
+---- MULTIMEDIA
44. PRINCIPIO DE REUTILIZACIÓN
Este principio es MUY IMPORTANTE.
No crear información duplicada.
Ejemplo:
Una imagen de un perro se almacena una sola vez.
Esa misma imagen puede utilizarse en:
Contenido
Flashcard
Quiz Visual
Memorama
Una pregunta puede utilizarse en:
Examen
Quiz Visual
Repaso
etc.
Una respuesta pertenece a una pregunta y puede aparecer cada vez que esa pregunta sea utilizada.
45. RESULTADOS DE LOS EXÁMENES
Aunque inicialmente el sistema puede funcionar sin alumnos registrados, preparar la arquitectura para almacenar resultados.
Crear posteriormente:
intentos_examen
Campos:
id
examen_id
usuario_id
fecha_inicio
fecha_fin
calificacion
Y:
respuestas_examen
Campos:
id
intento_id
pregunta_id
respuesta_id
es_correcta
Esto permitirá posteriormente conocer:
preguntas acertadas;
preguntas falladas;
respuestas seleccionadas;
puntuación;
número de intentos;
tiempo.
46. PROGRESO EDUCATIVO FUTURO
Dejar preparada la arquitectura para posteriormente registrar:
alumno;
actividad;
tema;
subtema;
pregunta;
respuesta;
resultado;
tiempo;
puntuación;
intento;
fecha.
Esto permitirá posteriormente construir:
estadísticas;
progreso;
historial;
fortalezas;
debilidades;
recomendaciones.
NO implementar todavía un sistema avanzado de aprendizaje adaptativo.
47. FUTURA IA EDUCATIVA
IMPORTANTE:
NO IMPLEMENTAR IA EN ESTA VERSIÓN.
Solamente diseñar la plataforma pensando en una futura versión.
La IA posteriormente podría utilizar:
temas;
subtemas;
contenidos;
multimedia;
preguntas;
respuestas;
Flashcards;
resultados;
errores;
progreso.
La futura IA podría:
explicar conceptos;
responder preguntas del alumno;
generar ejercicios;
generar preguntas;
generar Flashcards;
recomendar contenidos;
detectar temas débiles;
adaptar la dificultad;
crear planes de estudio;
analizar errores;
proporcionar tutoría personalizada.
Pero nada de esto debe implementarse todavía.
48. PREPARACIÓN DE LA BASE PARA IA
No crear todavía:
tabla_ia
ni:
tabla_chatgpt
ni:
tabla_openai
La arquitectura debe ser independiente de cualquier proveedor de IA.
La futura IA debe poder conectarse mediante una capa independiente.
Por ejemplo:
/services/AIService.php
pero NO es necesario implementarlo todavía.
49. POSIBLE ARQUITECTURA FUTURA
Preparar conceptualmente:
PLATAFORMA EDUCATIVA
|
+-----------------+----------------+
| | |
BLOG ACTIVIDADES PROGRESO
| | |
| +------+------+ |
| | | | |
| Examen Flash Quiz Resultados
| | Visual |
| | |
+---------------+-----------------+
|
CONTENIDO
|
IA EDUCATIVA
|
+------------+-------------+
| | |
Tutor Generador Analizador
| ejercicios progreso
La IA será una segunda etapa.
50. SEGURIDAD
Implementar:
PDO.
Prepared Statements.
password_hash().
password_verify().
sesiones.
protección de rutas administrativas.
CSRF.
htmlspecialchars().
validación POST.
validación GET.
validación de archivos.
protección de uploads.
nombres únicos de archivos.
MIME validation.
límites de tamaño.
No confiar en JavaScript para seguridad.
51. CSS
Crear solamente:
/assets/css/style.css
El CSS debe ser pequeño.
No utilizar estilos decorativos innecesarios.
Debe proporcionar:
layout;
grid;
flex;
formularios;
tablas;
botones;
tarjetas;
navegación;
actividades;
responsive básico.
El diseño debe parecer más una aplicación funcional que una página comercial.
52. JAVASCRIPT
Utilizar JavaScript Vanilla.
Crear:
/assets/js/app.js
Y otros archivos cuando sea necesario:
flashcards.js
memorama.js
preguntas.js
examen.js
No utilizar jQuery salvo que exista una razón técnica importante.
53. MEMORAMA CON JAVASCRIPT
El JavaScript del Memorama debe controlar:
selección de cartas;
bloqueo temporal;
comparación;
parejas;
movimientos;
cronómetro;
reinicio;
finalización.
No depender del servidor para cada clic.
54. FLASHCARDS CON JAVASCRIPT
Controlar:
mostrar respuesta;
siguiente;
anterior;
barajar;
reiniciar.
55. EXÁMENES
El examen debe poder:
mostrar preguntas;
mostrar opciones;
registrar respuesta;
avanzar;
retroceder si se decide permitirlo;
finalizar;
calcular resultado.
Al finalizar:
mostrar:
Preguntas:
10
Correctas:
8
Incorrectas:
2
Calificación:
80%
56. DISEÑO DEL CÓDIGO
Separar:
MODELOS
para consultas y acceso a datos.
CONTROLADORES
para lógica.
VISTAS
para HTML.
CONFIGURACIÓN
para conexión y parámetros.
SERVICIOS
para funciones reutilizables.
Por ejemplo:
/models/Pregunta.php
/controllers/PreguntaController.php
/services/ExamenService.php
/services/FlashcardService.php
/services/MemoramaService.php
57. FUNCIONES REUTILIZABLES
Crear servicios reutilizables.
Ejemplos:
obtenerOpcionesPregunta()
obtenerPreguntasAleatorias()
obtenerMultimediaPorTema()
obtenerMultimediaPorSubtema()
generarParejasMemorama()
obtenerFlashcards()
calcularResultadoExamen()
Estas funciones deben evitar duplicar código.
58. BASE DE DATOS PRIMERO
Antes de generar PHP:
Explicar el modelo relacional.
Mostrar las tablas.
Mostrar las relaciones.
Explicar las claves foráneas.
Explicar los índices.
Explicar cómo se reutilizará multimedia.
Explicar cómo se reutilizarán preguntas.
Explicar cómo funcionará el Memorama.
Explicar cómo funcionará la futura integración de IA.
Después generar:
database.sql
59. GENERACIÓN DEL PROYECTO
Generar el proyecto de forma progresiva.
PRIMERA ETAPA:
arquitectura;
base de datos;
database.sql;
conexión PDO;
configuración.
SEGUNDA ETAPA:
autenticación;
administración;
temas;
subtemas.
TERCERA ETAPA:
contenidos;
multimedia;
subida de archivos.
CUARTA ETAPA:
preguntas;
respuestas dinámicas;
banco de preguntas.
QUINTA ETAPA:
exámenes;
selección aleatoria;
calificación.
SEXTA ETAPA:
Flashcards.
SÉPTIMA ETAPA:
Quiz Visual.
OCTAVA ETAPA:
Memorama.
NOVENA ETAPA:
resultados y preparación para estadísticas.
No intentar generar absolutamente todo en un único bloque si esto provoca código incompleto.
Es preferible generar cada etapa completamente funcional antes de continuar.
60. FORMATO DE ENTREGA
Cuando generes código:
Indicar siempre el archivo.
Ejemplo:
/config/database.php
<?php
...
Después:
/models/Tema.php
<?php
...
No mezclar varios archivos en un mismo bloque.
Explicar brevemente para qué sirve cada archivo.
61. INSTALACIÓN
Crear un archivo:
README.md
con instrucciones para:
Crear base de datos.
Ejecutar database.sql.
Configurar usuario MySQL.
Configurar contraseña.
Configurar host.
Configurar URL.
Configurar uploads.
Configurar permisos.
Crear usuario administrador.
Iniciar el proyecto.
Debe funcionar inicialmente en:
XAMPP
Laragon
Apache + PHP + MySQL
62. DATOS DE PRUEBA
Crear opcionalmente:
database_seed.sql
con datos de prueba.
Ejemplo:
Temas:
Matemáticas
Español
Inglés
Ciencias
Subtemas:
Fracciones
Multiplicaciones
Gramática
Animales
Agregar algunas:
preguntas;
respuestas;
Flashcards;
imágenes de ejemplo mediante rutas ficticias;
exámenes.
No incluir archivos binarios de imágenes dentro del SQL.
63. PRUEBAS
Después de implementar cada módulo, indicar cómo probarlo.
Por ejemplo:
PRUEBA DE TEMAS
Entrar a administración.
Crear Matemáticas.
Crear Fracciones.
Verificar relación.
Editar.
Desactivar.
PRUEBA DE PREGUNTAS
Crear pregunta.
Agregar 4 respuestas.
Marcar una correcta.
Guardar.
Editar.
Verificar respuestas.
PRUEBA DE EXAMEN
Crear preguntas.
Crear examen.
Seleccionar 5 preguntas.
Generar examen.
Verificar aleatoriedad.
Resolver.
Verificar calificación.
PRUEBA DE MEMORAMA
Subir imágenes.
Asociarlas a tema.
Seleccionar tema.
Seleccionar número de parejas.
Jugar.
Verificar parejas.
64. REGLA PRINCIPAL DEL PROYECTO
No sacrificar la estructura de la base de datos por hacer el código rápidamente.
La base de datos debe permitir posteriormente crecer hacia una plataforma educativa completa.
La aplicación debe ser:
SIMPLE AHORA
pero:
ESCALABLE DESPUÉS.
65. RESULTADO FINAL ESPERADO
La primera versión debe permitir:
BLOG
Temas.
Subtemas.
Contenidos.
Imágenes.
Videos.
BANCO EDUCATIVO
Preguntas.
Respuestas.
Diferentes tipos de preguntas.
Explicaciones.
Dificultad.
EXÁMENES
Crear examen.
Seleccionar preguntas.
Generar preguntas aleatoriamente.
Seleccionar respuestas incorrectas.
Incluir respuesta correcta.
Mezclar opciones.
Resolver examen.
Calificar.
FLASHCARDS
Crear tarjetas.
Texto.
Imagen.
Frente.
Reverso.
Barajar.
Estudiar.
QUIZ VISUAL
Utilizar imágenes existentes.
Preguntas visuales.
Respuestas existentes.
Selección aleatoria.
MEMORAMA
Utilizar imágenes existentes.
Seleccionar tema.
Seleccionar subtema.
Seleccionar número de parejas.
Generar parejas automáticamente.
Mezclar.
Contabilizar movimientos.
Contabilizar tiempo.
FUTURO
Preparar la arquitectura para:
alumnos;
profesores;
progreso;
estadísticas;
historial;
recomendaciones;
IA educativa.
La IA NO debe implementarse en esta primera versión.
66. PRINCIPIO ARQUITECTÓNICO FINAL
El sistema debe entenderse como una plataforma donde existe un:
BANCO CENTRAL DE CONTENIDO
que alimenta diferentes formas de aprendizaje.
Por ejemplo:
BANCO DE CONTENIDO
|
+-------------------+-------------------+
| | |
CONTENIDO PREGUNTAS MULTIMEDIA
| | |
| RESPUESTAS |
| | |
+-------------------+-------------------+
|
ACTIVIDADES
|
+----------------+----------------+
| | |
EXAMEN FLASHCARDS QUIZ VISUAL
|
MEMORAMA
Y posteriormente:
BANCO DE CONTENIDO
|
PROGRESO ALUMNO
|
IA EDUCATIVA
|
APRENDIZAJE ADAPTATIVO
La información debe almacenarse una sola vez y reutilizarse en las diferentes actividades.
La plataforma debe diseñarse desde el inicio siguiendo este principio.
Comentarios
Publicar un comentario