Base de dades de casa de colònies. Model ER

De wikijoan
Salta a la navegació Salta a la cerca

Introducció

Anem a veure un cas pràctic de disseny amb el model ER que correspon a una base de dades destinada a la gestió de les inscripcions d'un conjunt de cases de colònies. És un model força senzill que inclou només entitats, atributs i interrelacions binàries.

Problema 1. Casa de colònies. Model ER. Descripció del problema

solució

a) Cada casa de colònies té un nom que la identifica (i un identificador únic). De cadascuna en volem saber el nom, capacitat, la comarca on està situada i l'oferta d'activitats que proporciona. Una casa pot oferir activitats com ara natació, esquí, rem, pintura, fotografia, excursions, escalada, etc.

b) En una casa de colònies es poden practicar diverses activitats (de fet, cada casa n'ha d'oferir com a mínim una). Evidentment, una mateixa activitat la pot oferir diverses cases. Però tota activitat que s'enregistri a la base de dades ha d'estar oferta com a mínim per una de les cases.

c) Interessa tenir una avaluació de les ofertes d'activitats que proporcionen les cases. S'assigna una qualificació numèrica que indica el nivell de qualitat que té cadascuna de les activitats ofertes.

d) Les cases de colònies allotgen nens que s'hi han inscrit per a passar-hi unes petites vacances. Es vol tenir constància dels nens que s'allotgen a cadascuna de les cases en el moment actual. S'ha de suposar que hi ha cases que estan buides (no s'hi allotja cap nen) durant algunes temporades.

e) Dels nens que s'allotgen actualment en alguna de les cases interessa saber un codi que se'ls assigna per a identificar-los, el nom, el cognom, el telèfon dels seus pares i la seva comarca de residència.

f) De les comarques on hi ha cases o bé on resideixen nens, es vol tenir enregistrats la superfície i el nombre d'habitants. S'ha de considerar que hi pot haver comarques on no resideix cap dels nens que s'allotgen en un moment determinat a les cases de colònies, i comarques que no disposen de cap casa.

Discussió de classe

  • Pregunta: Comarca és un atribut de casa de colònies, i atribut de nen. O bé té entita pròpia?
  • Pregunta: Activitat és un atribut de la casa de colònies? O bé és una entitat?. Si fos un atribut hauria de ser multivaluat. I a més, on considerem el nivell (puntuació) que té una activitat d'una casa de colònies. Per tant, ha de ser una entitat.

Problema 2. Companyia de teatre

En aquest cas farem una descripció breu del problema, perquè ho volem plantejar com un problema obert on l'alumne ha de definir la seva solució.

Situem-nos. Som l'encarregat de vestuari d'una companyia de teatre. La companyia ja té una experiència de 10 anys muntant obres de teatre, i el vestuari és un caos i l'hem d'ordenar d'una forma racional.

L'objectiu serà fer una base de dades on puguem introduir totes les peces de vestuari de què disposem, i les que comprarem quan haguem de fer noves funcions.

Estem parlant de pantalons, perruques, gorros, sabates, vestits,... La situació que hem d'evitar és comprar un vestit per representar La Ventafocs, quan ja teníem un vestit similar (però que no sabíem on era perquè tenim un caos).

Idees:

  • una obra de teatre, en quin segle està ambientat?
  • podem col·locar la roba en armaris, sabaters, penjadors, capses, etc, i aquests elements poden tenir una referència (identificador).
  • ...

NOTA. El problema de la Companyia de Teatre és obert. No tots els alumnes tenen per què arribar a la mateixa solució i conclusió. Ja discutirem a classe els diferents resultats que hi ha hagut (i escollirem una opció que per conveni serà la bona).

Discussió a classe i Solució final

Teatre discussio classe.png
solució

Tasques a realitzar

Problema 1. Cases de colònies

Entrega al Classroom, en format pdf o document del Drive, i amb les captures de pantalla que consideris oportunes. No estalvïis text (al professor li agrada les explicacions).

1. Fes la representació gràfica del model ER (model conceptual), segons el plantejament que se't dona.

2. Se't demana verbositat. Has d'explicar la cardinalitat i l'obligatorietat/opcionalitat de les interrelacions, amb les teves paraules. En els dos sentits.

3. Considera el cercador de cases de colònies de la Generalitat:

Cerca per Cases de Colònies, i anota la informació que interessa per al problema. (quedat només en les cinc primeres cases). Pots guardar la informació en format CSV (valors separats per coma o punt i coma). Per ex:

 CC000299;ALBERG ROQUES BLANQUES;Barri del Veïnat de Roques Blanques, s/n;17534;RIBES DE FRESER

4. Llista de totes les comarques de Catalunya. Pots trobar la informació a la Viquipèdia catalana. En format CSV registraràs totes les comarques, capital, superfície, habitants.

5. Nens. Inventa't la informació de 5 usuaris que participen, han participat o participaran a la base de dades.

6. Activitats. Llista 10 activitats que ofereixen les cases de colònies.

Ara que hem posat informació sobre les entitats, hem de posar informació sobre les interrelacions.

7. Participació de nens amb cases de colònies.

NOTA: participació vol dir si la relació de entre nens i cases és obligatòria (o opcional); i si entre cases i nens és obligatòria (o opcional).

Participació total vol dir que és obligatòria. Participació parcial vol dir que és opcional.

En aquesta pregunta, el que has de fer és posar exemples (a partir de les dades que tens i de les cases que tens), d'aquesta interrelació, i que es posi de relleu si és opcional/obligatori.

Per exemple:

Jordi Gonzàlez va a la casa CC000299
...

8. Participació de nens amb comarques

9. Participació de cases amb comarques

10. Participació de cases amb activitats (indica la puntuació)

11. Quines preguntes es poden a la base de dades? Llistat de 5 preguntes o informes que volem demanar-li a la base de dades, i que podrem fer-ho quan tinguem les taules i sapiguem SQL.

Problema 2. Vestuari en una companyia de teatre

12. Planteja amb verbositat el problema de la Companyia de Teatre. Pensa en les entitats que sortiran, els atributs que tenen aquestes entitats, i les relacions que hi haurà entre les entitats.

13. Diagrama draw.io

14. Quines preguntes es poden a la base de dades? Llistat de 5 preguntes o informes que volem demanar-li a la base de dades, i que podrem fer-ho quan tinguem les taules i sapiguem SQL.


creat per Joan Quintana Compte, octubre 2021