Objectius

En aquesta assignatura s'introdueixen els conceptes bàsics de Bases de Dades (BD) necessaris tant a nivell de dissenyador de BD com d'usuari.

Coneixements:

Al finalitzar el curs l'alumne ha de ser capaç de:

  • Conèixer i comprendre el salt tecnològic important que representen els sistemes de bases de dades pel que fa a tractament d'informació en computador; així com en el disseny i manteniment d'aplicacions de tractament de dades.
  • Conèixer l'arquitectura dels sistemes de bases de dades, les funcions de cada mòdul i el personal que treballa en aquests sistemes (usuaris, programadors i administradors de BD).
  • Comprendre la metodologia de disseny de BD. Conèixer el model Entitat/Relació (E/R).
  • Estudiar les propietats del model relacional de BD, estès en la majoria de motors de BD. Conèixer el llenguatge SQL, estàndard en BD relacionals.

Habilitats:

  • Es pretén que els alumnes adquireixin les següents habilitats:
  • Dissenyar una BD en el Model E/R a partir d'unes especificacions del món real.
  • Convertir la BD en el Model E/R a un conjunt de relacions i atributs d'una BD Relacional.
  • Utilitzar les regles d'integritat del model relacional de BD, així com saber formular qualsevol 
  • consulta a una BD.
  • Realitzar consultes simples i d'una certa complexitat a una BD mitjançant SQL.
  • Treballar amb un exemple de motor de BD com és ORACLE, d'ús bastant estès en l'àmbit professional.

Competències

  • Avaluar de manera crítica i amb criteris qualitat el treball realitzat.
  • Dissenyar, desenvolupar, mantenir i avaluar sistemes de programari que permeten representar, emmagatzemar i manipular de forma fiable i eficient grans volums de dades heterogènies dacord amb els requisits establerts.
  • Que els estudiants hagin demostrat que comprenen i tenen coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es basa en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda d'aquell camp d'estudi.
  • Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tant especialitzat com no especialitzat.
  • Que els estudiants sàpiguen aplicar els coneixements propis a la seva feina o vocació d'una manera professional i tinguin les competències que se solen demostrar per mitjà de l'elaboració i la defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi.
  • Treballar cooperativament en un context multidisciplinar asumiendo y respetando el rol de los diferentes miembros del equipo.
  • Utilitzar eficaçment la bibliografia i els recursos electrònics per obtenir informació.

Resultats d'aprenentatge

  • Avaluar de manera crítica i amb criteris de qualitat el treball desenvolupat.
  • Dimensionar correctament la infraestructura de la base de dades necessària per a la gestió i l'emmagatzematge massiu de dades en un determinat servei.
  • Dissenyar bases de dades relacionals o no-relacionals adequades a les característiques de les dades que es volen representar, manipular i emmagatzemar.
  • Fer consultes sobre una base de dades per extreure de manera eficient la informació rellevant per analitzar les dades requerides.
  • Que els estudiants hagin demostrat que comprenen i tenen coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es basa en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda d'aquell camp d'estudi.
  • Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tant especialitzat com no especialitzat.
  • Que els estudiants sàpiguen aplicar els coneixements propis a la seva feina o vocació d'una manera professional i tinguin les competències que se solen demostrar per mitjà de l'elaboració i la defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi.
  • Treballar cooperativament en un context multidisciplinari assumint i respectant el rol dels diferents membres de l'equip.
  • Utilitzar eficaçment la bibliografia i els recursos electrònics per obtenir informació.

Continguts

1. Introducció. Conceptes bàsics

    • Introducció i definicions
    • Components d'un sistema de Base de Dades.
    • Evolució històrica.
    • Avantatges i inconvenients d'un sistema de Bases de Dades.

2. Arquitectura

    • Arquitectura ANSI-SPARC 
    • El DBA i el SGBD
    • Arquitectura back-end / front-end

3. Disseny. El model Entitat/Relació

    • Disseny d'una Base de Dades
    • Model Entitat/Relació
    • Model E/R estès
    • Criteris de disseny d'un esquema E/R
    • Disseny d'un esquema E/R

4. Model de dades relacional

    • Introducció Estructura de dades Regles d'integritat
    • Manipulació de dades: àlgebra relacional, consultes SQL

5. Disseny d'una base de dades

    • Fases de disseny d'una BD 
    • Captació i anàlisi de requeriments 
    • Disseny conceptual de la BD 
    • Disseny lògic
    • Disseny físic
    • Normalització

6. Nivell Intern

    • Accés a la Base de Dades física
    • Estructures d'emmagatzematge: Indexació, Hashing (dispersió)
    • Tècniques de compressió

Metodologia

El procés d'aprenentatge de l'alumne es fonamentarà en aquests tres tipus d'activitats: classes de teoria i problemes, sessions de pràctiques i redacció d'un informe tècnic d'una base de dades. Tota la documentació i material necessari per al seguiment del curs es trobarà accessible des de l'entorn documental Caronte (http://caronte.uab.es)

ACTIVITATS FORMATIVES DIRIGIDES 

Teoría i Problemes:

Les sessions de teoria s'imparteixen mitjançant classes amb suport documental i powerpoint. S'introduiran els conceptes teòrics necessaris per poder resoldre els problemes que es plantejaran al llarg del curs. En hores de problemes es proposaran exercicis a resoldre dins l'aula i es fomentarà el treball autònom per a que l'alumne resolgui la resta d'exercicis, amb la base de dades i les solucions disponibles. Les sessions de problemes s'estructuren en 2 blocs: (a) disseny de bases de dades relacionals i (b) interrogació d'una base de dades.

(a) Pel primer bloc de problemes es practicarà el disseny en el model E/R a partir d'uns requeriments específics.

(b) Pel segon bloc de problemes s'explicarà el llenguatge SQL (Structured Query Language), del que es proporcionarà material de suport, i es realitzaran consultes en algebra relacional y SQL, sobre una base de dades de exemple amb continguts concrets.

Pràctiques:

A les sessions de pràctiques, es pretén introduir a l'alumne al llenguatge SQL (Structured Query Language), que és el llenguatge estàndard per realitzar consultes a una base de dades. Cada sessió consistirà en un seguit d'exercicis sobre una base de dades amb la finalitat principal d'ajudar a comprendre els conceptes teòrics explicats a classe i a familiaritzar-se amb el disseny, creació i manipulació (com a programadors i com a usuaris) de bases de dades relacionals.

L'alumne prepara el treball de pràctiques explicat en l'enunciat de pràctiques. Aquesta preparació ha de ser prèvia a la sessió de pràctiques corresponent. El treball es finalitza assistint a les sessions de pràctiques tutelades pel professor en els horaris corresponents 

Els enunciats de les pràctiques, la normativa d'entrega i avaluació de pràctiques la podeu trobar en els documents corresponents en Cerbero.

ACTIVITATS FORMATIVES AUTÒNOMES 

Informe Tècnic de creació de bases de dades:

En paral·lel a les classes de teoria, problemes i sessions de pràctiques, tots els alumnes hauran de crear una base de dades. La base de dades es concretarà en la redacció d'un informe tècnic i els scripts necessaris per la creació de la base de dades i el joc de proves per la corresponent validació. Aquest treball es realitzarà grups de 4 o 5 alumnes i serà en la seva major part autònom sota la supervisió del professor en horaris de tutories.

Pràctiques assistencials de SQL:

En paral·lel a les classes de teoria, problemes i sessions de pràctiques, totsels alumnes hauran d'participar en pràctiques autònomes gestionades per ells mateixos que consisteixen en la resolució de problemes 

SQL.

Aquest treball es realitzarà de manera individual en els horaris que l'alumno crea més convenient dins dels límits imposats per la dinàmica del curs.

Els enunciats de les pràctiques assistencials, la normativa d'entrega i avaluació la podeu trobar en els documents corresponents al entorn documental Caronte.

ACTIVITATS FORMATIVES SUPERVISADAS 

Tutories:

L'objectiu de les tutories és solucionar dubtes i consolidar els coneixements adquirits a la setmana. Les tutories podran ser individuals o grups depenent del tema a tractar. Els horaris de tutoria disponibles seran determinats a principis del curs, però el alumne ha de comunicar al professor (preferentment per correu electrònic) amb antelació a la seva assistència a la tutoria.

Tot el material necessari (enunciats, scripts de BD, resultats dels problemes) estarà disponible al gestor documental Caronte (http://caronte.uab.cat).

Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.

Objectius

En aquesta assignatura s'introdueixen els conceptes bàsics de Bases de Dades (BD) necessaris tant a nivell de dissenyador de BD com d'usuari.  

Coneixements:

Al finalitzar el curs l'alumne ha de ser capaç de:

  • Conèixer i comprendre el salt tecnològic important que representen els sistemes de bases de dades pel que fa a tractament d’informació en computador; així com en el disseny i manteniment d’aplicacions de tractament de dades.
  • Conèixer l’arquitectura dels sistemes de bases de dades, les funcions de cada mòdul i el personal que treballa en aquests sistemes (usuaris, programadors i administradors de BD). 
  • Comprendre la metodologia de disseny de BD.
  • Conèixer el model Entitat/Relació (E/R).
  • Estudiar les propietats del model relacional de BD, estès en la majoria de motors de BD.
  • Conèixer el llenguatge SQL, estàndard en BD relacionals.

Habilitats:

Es pretén que els alumnes adquireixin les següents habilitats:

  • Dissenyar una BD en el Model E/R a partir d'unes especificacions del món real.
  • Convertir la BD en el Model E/R a un conjunt de relacions i atributs d'una BD Relacional.
  • Utilitzar les regles d’integritat del model relacional de BD, així com saber formular qualsevol consulta a una BD.
  • Realitzar consultes simples i d'una certa complexitat a una BD mitjançant SQL.
  • Treballar amb un exemple de motor de BD com és ORACLE, d’ús bastant estès en l’àmbit professional.

Competències

  • Avaluar de manera crítica i amb criteris qualitat el treball realitzat.
  • Dissenyar, desenvolupar, mantenir i avaluar sistemes de programari que permeten representar, emmagatzemar i manipular de forma fiable i eficient grans volums de dades heterogènies d’acord amb els requisits establerts.
  • Que els estudiants hagin demostrat que comprenen i tenen coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es basa en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda d'aquell camp d'estudi.
  • Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tant especialitzat com no especialitzat.
  • Que els estudiants sàpiguen aplicar els coneixements propis a la seva feina o vocació d'una manera professional i tinguin les competències que se solen demostrar per mitjà de l'elaboració i la defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi.
  • Treballar cooperativament en un context multidisciplinar asumiendo y respetando el rol de los diferentes miembros del equipo.
  • Utilitzar eficaçment la bibliografia i els recursos electrònics per obtenir informació.

Resultats d'aprenentatge

  1. Avaluar de manera crítica i amb criteris de qualitat el treball desenvolupat.
  2. Dimensionar correctament la infraestructura de la base de dades necessària per a la gestió i l'emmagatzematge massiu de dades en un determinat servei.
  3. Dissenyar bases de dades relacionals o no-relacionals adequades a les característiques de les dades que es volen representar, manipular i emmagatzemar.
  4. Fer consultes sobre una base de dades per extreure de manera eficient la informació rellevant per analitzar les dades requerides.
  5. Que els estudiants hagin demostrat que comprenen i tenen coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es basa en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda d'aquell camp d'estudi.
  6. Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tant especialitzat com no especialitzat.
  7. Que els estudiants sàpiguen aplicar els coneixements propis a la seva feina o vocació d'una manera professional i tinguin les competències que se solen demostrar per mitjà de l'elaboració i la defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi.
  8. Treballar cooperativament en un context multidisciplinari assumint i respectant el rol dels diferents membres de l'equip.
  9. Utilitzar eficaçment la bibliografia i els recursos electrònics per obtenir informació.

Continguts

1. Introducció. Conceptes bàsics

  • Introducció i definicions
  • Components d'un sistema de Base de Dades.
  • Evolució històrica.
  • Avantatges i inconvenients d'un sistema de Bases de Dades.

2. Arquitectura

  • Arquitectura ANSI-SPARC
  • El DBA i el SGBD
  • Arquitectura back-end / front-end

3. Disseny. El model Entitat/Relació

  • Disseny d'una Base de Dades
  • Model Entitat/Relació
  • Model E/R estès
  • Criteris de disseny d'un esquema E/R
  • Disseny d'un esquema E/R

4. Model de dades relacional

  • Introducció
  • Estructura de dades
  • Regles d'integritat
  • Manipulació de dades: àlgebra relacional, consultes SQL

5. Disseny d'una base de dades

  • Fases de disseny d'una BD
  • Captació i anàlisi de requeriments
  • Disseny conceptual de la BD
  • Disseny lògic
  • Disseny físic
  • Normalització

6. Nivell Intern

  • Accés a la Base de Dades física
  • Estructures d'emmagatzematge: Indexació, Hashing (dispersió)
  • Tècniques de compressió

Metodologia

El procés d'aprenentatge de l'alumne es fonamentarà en aquests tres tipus d'activitats: classes de teoria i problemes, sessions de pràctiques i redacció d'un informe tècnic d'una base de dades. Tota la documentació i material necessari per al seguiment del curs es trobarà accessible des de l'entorn documental Caronte (http://caronte.uab.es)


ACTIVITATS FORMATIVES DIRIGIDES

Teoría i Problemes:
Les sessions de teoria s'imparteixen mitjançant classes amb suport documental i powerpoint. S'introduiran els conceptes teòrics necessaris per poder resoldre els problemes que es plantejaran al llarg del curs. En hores de problemes es proposaran exercicis a resoldre dins l'aula i es fomentarà el treball autònom per a que l'alumne resolgui la resta d'exercicis, amb la base de dades i les solucions disponibles. Les sessions de problemes s'estructuren en 2 blocs: (a) disseny de bases de dades relacionals i (b) interrogació d'una base de dades.

(a) Pel primer bloc de problemes es practicarà el disseny en el model E/R a partir d'uns requeriments específics.

(b) Pel segon bloc de problemes s'explicarà el llenguatge SQL (Structured Query Language), del que es proporcionarà material de suport, i es realitzaran consultes en algebra relacional y SQL, sobre una base de dades de exemple amb continguts concrets.

Pràctiques:
A les sessions de pràctiques, es pretén introduir a l'alumne al llenguatge SQL (Structured Query Language), que és el llenguatge estàndard per realitzar consultes a una base de dades. Cada sessió consistirà en un seguit d'exercicis sobre una base de dades amb la finalitat principal d'ajudar a comprendre els conceptes teòrics explicats a classe i a familiaritzar-se amb el disseny, creació i manipulació (com a programadors i com a usuaris) de bases de dades relacionals.

L'alumne prepara el treball de pràctiques explicat en l'enunciat de pràctiques. Aquesta preparació ha de ser prèvia a la sessió de pràctiques corresponent. El treball es finalitza assistint a les sessions de pràctiques tutelades pel professor en els horaris corresponents

Els enunciats de les pràctiques, la normativa d'entrega i avaluació de pràctiques la podeu trobar en els documents corresponents en Cerbero.


ACTIVITATS FORMATIVES AUTÒNOMES

Informe Tècnic de creació de bases de dades:
En paral·lel a les classes de teoria, problemes i sessions de pràctiques, tots els alumnes hauran de crear una base de dades. La base de dades es concretarà en la redacció d'un informe tècnic i els scripts necessaris per la creació de la base de dades i el joc de proves per la corresponent validació. Aquest treball es realitzarà grups de 4 o 5 alumnes i serà en la seva major part autònom sota la supervisió del professor en horaris de tutories.

Pràctiques assistencials de SQL:
En paral·lel a les classes de teoria, problemes i sessions de pràctiques, totsels alumnes hauran d'participar en pràctiques autònomes gestionades per ells mateixos que consisteixen en la resolució de problemes SQL. Aquest treball es realitzarà de manera individual en els horaris que l'alumno crea més convenient dins dels límits imposats per la dinàmica del curs.

Els enunciats de les pràctiques assistencials, la normativa d'entrega i avaluació la podeu trobar en els documents corresponents al entorn documental Caronte.

ACTIVITATS FORMATIVES SUPERVISADAS

Tutories:
L'objectiu de les tutories és solucionar dubtes i consolidar els coneixements adquirits a la setmana. Les tutories podran ser individuals o grups depenent del tema a tractar. Els horaris de tutoria disponibles seran determinats a principis del curs, però el alumne ha de comunicar al professor (preferentment per correu electrònic) amb antelació a la seva assistència a la tutoria.