Salta el contingut

Rúbrica PR5075/03: Dashboard BI amb Metabase i Docker

Informació general

Camp Detall
Pràctica PR5075/03 — Dashboard BI amb Metabase i Docker
Mòdul 5075 — Big Data Aplicat
Resultat d'Aprenentatge RA5 — Construeix solucions de Business Intelligence sobre Big Data
Criteris d'Avaluació CA5.1, CA5.2, CA5.3, CA5.4, CA5.5
Pes sobre la nota final 15% del mòdul 5075
Format de lliurament Fitxer .md o .pdf + captures de pantalla

Criteris d'avaluació detallats

Criteri 1: Configuració Docker (10%)

Nivell Puntuació Descripció
Excel·lent 9-10 docker-compose.yml amb PostgreSQL (versió 16) + Metabase (versió especificada), healthcheck a PostgreSQL amb pg_isready, nom de contenidors personalitzats amb el nom de l'alumne, xarxa interna dedicada, volums amb nom personalitzat. Metabase configurat per a usar PostgreSQL com a backend de metadades (no H2).
Notable 7-8 Docker Compose amb ambdós serveis funcionant correctament, noms personalitzats. Possiblement sense healthcheck explícit o sense PostgreSQL com a backend de Metabase.
Aprovat 5-6 Entorn Docker bàsic funcional (poden usar Metabase amb H2 intern). Els dos serveis corrent.
Insuficient < 5 Errors de configuració que impedeixen arrencar l'entorn, o ús de docker run manual sense docker-compose.yml.

Evidències requerides: Captura de docker compose ps amb tots els serveis actius.


Criteri 2: Model de dades (20%)

Nivell Puntuació Descripció
Excel·lent 9-10 Esquema relacionat complet (mínim 4 taules amb claus forànies definides), dades realistes i consistents (mínim 400 registres de vendes, 3 anys de dades, temporalitat estacional), índexos per a rendiment, almenys una vista analítica. El fitxer init.sql és net, comentat i reutilitzable.
Notable 7-8 Esquema correcte amb FK, dades suficients (mínim 200 registres), dades amb certa variabilitat temporal. init.sql ben estructurat.
Aprovat 5-6 Esquema bàsic funcional (2-3 taules), dades suficients per a crear almenys 3 visualitzacions. FK presents.
Insuficient < 5 Esquema incorrecte (sense FK), massa pocs registres per a fer anàlisi significativa (< 50), o init.sql absent.

Evidències requerides: El fitxer init.sql lliurat i captura de la vista d'esquema de Metabase.


Criteri 3: Qualitat del dashboard (30%)

Nivell Puntuació Descripció
Excel·lent 9-10 Dashboard amb 6+ visualitzacions coherents i complementàries (almenys: 1 línia temporal, 1 barra, 1 pastís o donut, 1 taula, 2 KPIs numèrics). El conjunt explica una història de negoci clara. Títol del dashboard inclou el nom de l'alumne. Visualitzacions ben titulades, eixos etiquetats, colors consistents. Layout organitzat i professional.
Notable 7-8 Dashboard amb 5+ visualitzacions correctes. Coherència visual acceptable. Títol amb nom de l'alumne. Possibles millores en el layout o en la narrativa.
Aprovat 5-6 Dashboard amb 3-4 visualitzacions funcionals. La majoria correctes. Títol amb nom de l'alumne present.
Insuficient < 5 Menys de 3 visualitzacions, visualitzacions incorrectes (tipus de gràfic inadequat per a les dades) o absència del nom de l'alumne.

Evidències requerides: Captura del dashboard complet i captures individuals de cada visualització.


Criteri 4: Filtres i interactivitat (20%)

Nivell Puntuació Descripció
Excel·lent 9-10 3 filtres de dashboard (rang de dates, categoria, segment de client) connectats correctament a totes les visualitzacions que els suporten. Demostració d'ús: captures amb el dashboard filtrat per almenys 2 valors diferents. Comprensió de com els filtres s'encadenen entre visualitzacions.
Notable 7-8 2 filtres funcionals i correctament connectats. Captures demostrant el funcionament dels filtres.
Aprovat 5-6 1 filtre funcional (preferiblement el de dates). Captura del filtre en acció.
Insuficient < 5 Sense filtres o filtres mal configurats que no funcionen.

Evidències requerides: Captures del dashboard amb filtres aplicats (almenys 2 estats diferents).


Criteri 5: SQL i mesures analítiques (15%)

Nivell Puntuació Descripció
Excel·lent 9-10 SQL correcte en totes les preguntes. Almenys 3 mesures analítiques avançades: percentatge sobre total, comparativa any rere any (YoY), ranking, acumulat, tiquet mig. Ús de Window Functions (OVER) en almenys 1 consulta. Consultes optimitzades (INDEX, evitar SELECT *).
Notable 7-8 SQL correcte, 2 mesures calculades (almenys una percentual o YoY). Les consultes funcionen i retornen resultats correctes.
Aprovat 5-6 SQL bàsic correcte (SELECT, GROUP BY, ORDER BY). Almenys 1 mesura calculada (SUM, AVG). Potser algunes consultes necessiten revisió.
Insuficient < 5 Errors SQL que impedeixen obtenir resultats correctes, o abús de la GUI de Metabase sense usar SQL per a cap visualització.

Evidències requerides: Captures de les consultes SQL a l'editor de Metabase.


Criteri 6: Lliurament i documentació (5%)

Nivell Puntuació Descripció
Excel·lent 9-10 README complet amb instruccions d'arrancada clares (es pot reproduir sense ajuda), fitxer init.sql lliurat, mínim 6 captures de pantalla ben etiquetades, respostes argumentades a totes les preguntes de reflexió, temps emprat indicat, dificultats trobades i solucions.
Notable 7-8 README amb instruccions bàsiques, captures suficients, respostes a les preguntes de reflexió.
Aprovat 5-6 Lliurament present amb captures mínimes i instruccions parcials.
Insuficient < 5 Lliurament incomplet, sense captures o sense init.sql.

Taula resum de criteris

Criteri Pes Excel·lent (9-10) Notable (7-8) Aprovat (5-6) Insuficient (< 5)
Configuració Docker 10% PostgreSQL + Metabase, healthcheck, noms personalitzats, volums Docker funcionant, noms personalitzats Entorn bàsic funcional Errors greus de configuració
Model de dades 20% 4+ taules amb FK, 400+ registres 3 anys, índexos, vista 3+ taules correctes, 200+ registres 2-3 taules, 50+ registres Esquema incorrecte o sense dades
Qualitat del dashboard 30% 6+ visualitzacions coherents, storytelling, nom alumne visible 5+ visualitzacions correctes 3-4 visualitzacions Menys de 3 o incorrectes
Filtres i interactivitat 20% 3 filtres (dates, categoria, segment) connectats, capturat en ús 2 filtres funcionals 1 filtre funcional Sense filtres
SQL i mesures 15% SQL correcte, Window Functions, YoY, percentatge, ranking SQL correcte, 2 mesures calculades SQL bàsic, 1 mesura Errors SQL
Lliurament 5% README + init.sql + 6 captures + reflexions + dificultats README + captures + reflexions Lliurament parcial Incomplet

Penalitzacions

Incidència Penalització
Lliurament fora de termini (fins a 3 dies) -1 punt de la nota final
Lliurament fora de termini (> 3 dies) -2 punts de la nota final
Títol del dashboard sense nom de l'alumne -0.5 punts
Nom de contenidors no personalitzats -0.5 punts
Sense fitxer init.sql lliurat -1 punt
Còpia d'un altre company (similitud > 80%) 0 en la pràctica i comunicació a la direcció

Preguntes de reflexió: criteris de correcció

Pregunta Resposta mínima acceptable
Pregunta 1 (Star Schema vs relacional) Star Schema: consultes BI ràpides (menys JOINs, dades pré-agregades), però desnormalitzat (redundància). Relacional: bo per a OLTP (transaccions), menys eficient per a analítica (molts JOINs).
Pregunta 2 (vista vs taula materialitzada) Vista: executa la consulta cada vegada que s'accedeix, sempre dades actualitzades. Taula materialitzada: guarda el resultat, necessita refresc manual o automàtic, molt més ràpida per a consultes analítiques.
Pregunta 3 (arquitectura Modern Data Stack) Proposar: Airbyte/Fivetran per a ingestió, Snowflake/BigQuery com a DW, dbt per a transformació, Metabase/Superset per a visualització. Valorar l'arquitectura ELT (vs ETL tradicional).
Pregunta 4 (SQL vs GUI) Limitacions GUI: no permet subconsultes, Window Functions, CASE WHEN complex, CTEs. Millor SQL quan: lògica analítica complexa, mesures calculades avançades, rendiment crític.
Pregunta 5 (categoria ingressos vs marge) Resposta dependent de les dades (no hi ha resposta única). Valorar: identificar la discrepància concreta, explicar que vendre molt no és equivalent a guanyar molt, proposar prioritzar les categories d'alt marge.
Pregunta 6 (Metabase vs enterprise) Possibles mancances Metabase OS: alertes natives limitades, no row-level security granular, sense semantic layer propi, connectors menys que Power BI. Avantatge open-source: cost zero, privacitat, personalització total.

Exemples d'excel·lència

Un dashboard excel·lent per a PR5075/03 hauria de:

  1. Contar una història: No es tracta de posar 6 gràfics qualsevol. El dashboard ha de respondre preguntes específiques de negoci de forma fluida.

  2. Jerarquia visual clara: KPIs al capdamunt (resposta ràpida), tendències al mig (context temporal), detalls a la part inferior (exploració).

  3. Colors amb significat: No usar colors aleatoris. Usar una paleta consistent: el verd per a creixement positiu, el vermell per a decreixement.

  4. Títols informatius: No "Vendes per categoria", sinó "Ordinadors dominen el 45% dels ingressos (2024)".

  5. Filtres que realment filten: Comprovar que en seleccionar "2023" al filtre de dates, totes les visualitzacions mostren dades de 2023.


Programació temporal orientativa

Part Temps estimat Observació
Part 1: Configuració docker-compose 20 min Crear i adaptar el docker-compose
Part 1: Crear init.sql 45 min Afegir dades pròpies o adaptar les de mostra
Part 2: Arrancada i config Metabase 20 min Inclou temps d'espera de Metabase
Part 3: Crear les 6+ preguntes 75 min Aproximadament 12 min per pregunta
Part 4: Construir el dashboard 40 min Organitzar, títols, colors
Part 4: Configurar els filtres 20 min Connectar filtres a visualitzacions
Part 5: Subscripció (opcional) 10 min
Documentació i reflexió 50 min README, captures, reflexions
Total ~4 hores