Saltar a contenido

Reto 03

Bienvenidos al tercer reto de Desarrollo Web en Entorno Servidor. En este reto, el objetivo es desarrollar una aplicaci贸n funcional de tipo e-commerce aplicando los principios del framework Laravel, el patr贸n MVC, y el acceso a bases de datos mediante Eloquent ORM.

El reto se desarrollar谩 en grupos cooperativos de 4 a 5 personas, fomentando la organizaci贸n, la planificaci贸n compartida y la colaboraci贸n t茅cnica.

Trabajo cooperativo

Se trabajar谩 en grupos de 4 a 5 personas, distribuidos en roles complementarios:

  • Responsable de Datos: se encarga de dise帽ar las migraciones, relaciones y uso de factor铆as y semilleros.
  • Responsable de L贸gica: desarrolla los controladores, rutas y la l贸gica general de la aplicaci贸n.
  • Responsable de Seguridad: configura la autenticaci贸n y los roles, asegurando el acceso adecuado a cada funcionalidad.
  • Responsable de Documentaci贸n: recoge las decisiones del grupo, elabora el manual de uso y la gu铆a de instalaci贸n.
  • Responsable de Calidad (opcional en grupos de 5): supervisa la validaci贸n de formularios, la exportaci贸n de datos y realiza pruebas funcionales.

.

Objetivo del reto

Desarrollar un prototipo de tienda online funcional con Laravel 11, aplicando el patr贸n MVC, la gesti贸n segura de datos y el control de usuarios con roles diferenciados. El resultado debe cumplir con los criterios t茅cnicos, organizativos y de seguridad definidos durante la unidad.

Requisitos espec铆ficos

  • Uso del patr贸n MVC mediante Laravel.
  • Aplicaci贸n de Eloquent para operaciones CRUD.
  • Control de autenticaci贸n y roles (admin, cliente).
  • Migraciones y carga de datos con factor铆as y semilleros.
  • Formularios con validaci贸n en servidor.
  • Exportaci贸n de datos a CSV o JSON (m铆nimo uno).
  • Entorno configurado correctamente (Docker o alternativo).
  • C贸digo y estructura del proyecto organizada seg煤n convenciones del framework.

Funcionalidades m铆nimas del prototipo

  • Registro y login de usuarios.
  • Listado de productos (con paginaci贸n opcional).
  • Creaci贸n, edici贸n y eliminaci贸n de productos (solo para administradores).
  • Visualizaci贸n de productos para clientes.
  • Exportaci贸n de datos de productos.
  • Sembrado inicial de productos mediante factor铆as.

Elementos evaluables

  • Documentaci贸n clara que incluya:
  • Estructura del proyecto y decisiones de dise帽o.
  • Explicaci贸n de los roles implementados y su gesti贸n.
  • Instrucciones de instalaci贸n, pruebas y uso.
  • C贸digo fuente empaquetado y estructurado.
  • Presentaci贸n del proyecto como prueba de autor铆a.

Criterios de evaluaci贸n

Adem谩s de los los criterios de evaluaci贸n que se trabajan en las UT 06 y UT 07, se valorar谩:

  • Funcionalidad: El prototipo debe ser operativo, permitiendo la interacci贸n b谩sica con productos y el carrito de compras.
  • Adherencia a Est谩ndares: El c贸digo debe seguir buenas pr谩cticas de programaci贸n y estar bien organizado.

Calificaci贸n

Criterio de Evaluaci贸n Nivel Bajo (0) Nivel Medio (1) Nivel Alto (3)
CE6a. Documentaci贸n del servicio de base de datos. Inexistente o inadecuada. Presente pero incompleta o confusa. Clara, precisa y funcional para la instalaci贸n.
CE6b. Creaci贸n de estructuras de base de datos. Tablas mal definidas o incompletas. Estructuras funcionales pero mejorables. Tablas bien estructuradas, normalizadas y relacionadas.
CE6c. Realizaci贸n de consultas. Consultas con errores o mal planteadas. Consultas b谩sicas correctas. Consultas variadas, eficientes y seguras.
CE6d. Acceso a datos seguro. Acceso directo o con malas pr谩cticas. Acceso controlado pero sin validaci贸n o sanitizaci贸n adecuada. Acceso seguro con Eloquent y validaci贸n s贸lida.
CE6e. Gesti贸n de integridad (transacciones). No se utiliza. Aplicada parcialmente o con errores. Aplicada correctamente en operaciones cr铆ticas.
CE6f. Control y trazabilidad de datos. No se registran cambios ni acciones. Registro b谩sico o incompleto. Control claro de acciones, uso de timestamps, etc.
CE6g. Exportaci贸n/importaci贸n de datos. No implementado o no funcional. Exportaci贸n/importaci贸n parcial o limitada. Exportaci贸n completa a formato est谩ndar (CSV, JSON).
CE8a. Configuraci贸n del entorno. Entorno incompleto o no funcional. Entorno funcional pero con limitaciones. Entorno correctamente configurado, reproducible.
CE8b. Instalaci贸n del framework. Instalaci贸n incorrecta o ausente. Instalaci贸n funcional con carencias. Instalaci贸n limpia y conforme a buenas pr谩cticas.
CE8c. Aplicaci贸n del patr贸n MVC. No se sigue el patr贸n. Aplicado parcialmente o con desorden. C贸digo claramente estructurado en MVC.
CE8d. Desarrollo de rutas, controladores y modelos. Implementaci贸n deficiente o incompleta. Desarrollo funcional pero b谩sico. Rutas RESTful, controladores coherentes, modelos completos.
CE8e. Gesti贸n de formularios y validaciones. Formularios sin validaci贸n o inestables. Formularios funcionales pero con validaci贸n limitada. Formularios robustos con validaci贸n completa en servidor.
CE8f. Uso de migraciones y factor铆as. Migraciones incompletas o ausentes. Migraciones funcionales pero no automatizadas. Migraciones completas con uso de semilleros/factor铆as.
CE8g. Control de roles y usuarios. Sin roles o con errores de seguridad. Roles b谩sicos sin control de acceso claro. Roles bien definidos y protegidos seg煤n permisos.

Fecha de entrega

La entrega se realizar谩 a trav茅s de Aules en la UT 07 sobre la actividad RE 732.