MÓDULO PROFESIONAL DE Sistemas Gestores / Xestores de Bases de Datos

Familia Profesional: Informática

Ciclo Superior de Administración de Sistemas Informaticos (CS ASI)

4 y 5 Trimestres

Profesor: Cesáreo García Rodicio

Fecha: Septiembre 2005

Índice de contenido

1 Introducción	5

2 Contextualización	6

3 Capacidades Terminales	8

4 Requisitos Previos	11

5 CRITERIOS DE SECUENCIACIÓN DE LOS CONTENIDOS	12

6 Elementos Curriculares de cada Unidad de Trabajo	15

Unidad Didáctica 1 Uso de Internet en el Desarrollo: documentación y búsqueda	15

1.1 Contenidos Conceptuales	15

1.2 Contenidos Procedimentales	17

1.3 Criterios de Evaluación	18

Unidad Didáctica 2 Introducción a las Bases de Datos	18

2.1 Contenidos Conceptuales	18

2.2 Contenidos Procedimentales	21

2.3 Criterios de Evaluación	21

Unidad Didáctica 3 Modelo Relacional y el Modelo E/R.	22

3.1 Contenidos Conceptuales	22

3.2 Contenidos Procedimentales	24

3.3 Criterios de Evaluación	26

Unidad Didáctica 4 Crear Modelos de Datos (SQL I)	26

4.1 Contenidos Conceptuales	27

4.2 Contenidos Procedimentales	28

Unidad Didáctica 5 Utilizar el Modelo de Datos (SQL II)	30

5.1 Contenidos Conceptuales	30

5.2 Contenidos Procedimentales	32

5.3 Criterios de Evaluación	33

Unidad Didáctica 6 El Servidor SGBDR (PostgreSQL)	33

6.1 Contenidos Conceptuales	33

6.2 Contenidos Procedimentales	35

6.3 Criterios de Evaluación	35

Unidad Didáctica 7	35

7.1 Contenidos Conceptuales	36

7.2 Contenidos Procedimentales	38

7.3 Criterios de Evaluación	40

Unidad Didáctica 8	40

8.1 Contenidos Conceptuales	40

8.2 Contenidos Procedimentales	41

8.3 Criterios de Evaluación	42

Unidad Didáctica 9 Análisis, Diseño e Implantación de un proyecto Real (Aplicación Web)	42

9.1 Contenidos Conceptuales	43

9.2 Contenidos Procedimentales	44

9.3 Criterios de Evaluación	44

7 CONTENIDOS ACTITUDINALES	44

8 METODOLOGÍA	45

9 MEDIDAS DE ATENCIÓN A LA DIVERSIDAD.	47

10 Evaluación	49

10.1 Procedimiento de Evaluación Ordinario	49

10.2 Criterios y Procedimientos para establecer las actividades de recuperación de los módulos pendientes	52

10.3 Procedimientos de Evaluación y cualificación extraordinaria del alumnado con módulos pendientes	53

10.4 Contenidos Mínimos Exigibles	53

11 Bibliografía	54

Introducción

Esta programación está referida al módulo profesional de Sistemas Gestores de Bases de Datos (SXBD ) que se cursa en el 2º año del ciclo formativo de grado superior de Administración de Sistemas Informáticos, concretamente en el cuarto y quinto trimestres. Este ciclo de grado superior tiene una duración total de 2000 horas (equivalente a 5 trimestres de formación en centro educativo como máximo, más la formación en centro de trabajo correspondiente).

La programación didáctica se desarrolla siguiendo las prescripciones del currículo publicado en el diario oficial de Galicia (DOGA) que reúne los siguientes aspectos:

Contextualización

Objetivos.

Contenidos y secuenciación.

Metodología.

Criterios y procedimientos de evaluación.

Atención a los alumnos con necesidades educativas específicas.

Bibliografía de aula y de departamento.

Esta programación didáctica para un módulo forma parte de la programación general o proyecto curricular de ciclo, que los profesores del Departamento de Informática elaboran con el fin de dar unidad y coherencia a las enseñanzas de los módulos del ciclo formativo, teniendo en cuenta las directrices establecidas en el Proyecto Curricular del Centro.

El Proyecto Curricular del ciclo formativo constituye el instrumento pedagógico-didáctico que articula a largo plazo el conjunto de actuaciones educativas del centro y tiene como objetivo alcanzar las finalidades educativas del mismo. Según la propuesta en el DCB este módulo consta de 185 horas.

A partir del análisis del currículo, se han elaborado una serie de unidades de trabajo que han sido organizadas y secuenciadas en torno a supuestos prácticos, en base a los cuales se justifica el estudio de los contenidos básicos permitiendo relacionarlos con su aplicación práctica. Estos contenidos determinan las etapas más significativas de los procedimientos que se van a desarrollar (presentación, análisis y aplicación) en función de las variables diferenciadoras elegidas.

Por último, se han definido los elementos curriculares de cada unidad de trabajo, es decir, los objetivos que deben alcanzarse, los contenidos que deben desarrollarse, las actividades del proceso de enseñanza-aprendizaje que deben realizarse, la metodología a emplear y los criterios de evaluación que permitan medir el nivel de aprendizaje obtenido.

Contextualización

El diseño curricular del módulo pertenece al último nivel de concreción del Curriculum. Partiendo del Diseño Base del Título de Formación Profesional, que recordemos es Técnico Superior en Administración de Sistemas Informáticos, se define el ciclo dentro del Plan Educativo del Centro y el Proyecto Curricular de Centro.

Vamos a contextualizar la programación en un centro educativo en zona urbana, bien comunicada y de un tamaño medio. Tiene los dos ciclos superiores de Informática, un ciclo superior de Administración y Finanzas y dos ciclos medios de Comercio. Además tiene programas de Garantía Social. La implantación de los ciclos superiores de informática son de reciente creación (dos promociones de técnicos superiores).

El centro pretende imprimir el carácter innovador, de educación “a medida” y adecuada al contexto laboral que se pretende imbuir en la “nueva formación profesional”. El centro pertenece a una ciudad urbana e industrial (Vigo) con presencia de empresas dedicadas al sector servicios informáticos de desarrollo de software y soporte técnico a infraestructuras informáticas. Las empresas demandan especialmente alumnos con formación en la arquitectura de Internet y administración de sistemas informáticos Windows y Linux.

En el tercer nivel de concreción curricular el ciclo formativo se coordinará con el otro ciclo de informática. El departamento de Informática ha decidido que el ciclo de DAI será por la mañana y el de ASI por la tarde, en grupos de máximo 30 alumnos y con al menos un ordenador por cada dos alumnos. Los locales asignados al ciclo cumplen en cuanto a instalaciones y dotación, los requisitos establecidos en el D.C.B., en el epígrafe 4.2. Requisitos mínimos de espacios e instalaciones para impartir estas enseñanzas.

Este módulo por lo tanto, se dará en horario de tarde lo que significa que los alumnos, en general, serán adultos y también que probablemente ya trabajen y algunos tengan problemas para asistir a clase.

Dentro de la contextualización en el centro y el ciclo formativo se ha visto que el uso de Internet como plataforma integral en la administración de sistemas informáticos es necesario en el alumno. Por lo tanto, una particularización del curriculum será centrarse en la plataforma Internet-Web como soporte para el desarrollo de nuevas funcionalidades, soporte a los usuarios y documentación-colaboración del desarrollo.

Además el centro quiere buscar en el uso de las nuevas tecnologías de la información, ,especialmente con la colaboración a través de Internet, una formación personalizada y adaptada a cada alumno.

Capacidades Terminales

Este módulo está asociado a varias capacidades terminales al ser un módulo transversal. Tiene como capacidades terminales elementales:

Analizar el tipo de información para registrar en función de las consultas o búsquedas que se vayan a realizar y las posibles aplicaciones que tendrán acceso a la base de datos.

Obtener diseños de la estructura de las bases de datos, definiendo los conjuntos de entidades así como los conjuntos de relaciones.

Representar gráficamente la estructura lógica global de las bases de datos mediante diagramas entidad-relación

Transformar los diagramas entidad-relación en esquemas conceptuales definiendo el conjunto de esquemas de relación.

Aplicar procedimientos de normalización que minimicen las redundancias

Crear el conjunto de tablas de información así como la relación de índices que permitan accesos óptimos en la recuperación de la información de las bases de datos.

Obtener diseños útiles de formatos personalizados que faciliten la introducción y modificación de los datos y que permitan su validación.

Diseñar y almacenar las visitas para facilitar las consultas individualizadas así como la seguridad de las bases de datos

Consultar y actualizar las bases de datos mediante las utilidades qeu proporciona el SGBD Relacional.

Manejar las herramientas disponibles en los SGBD para facilitar la recuperación y presentación de la información. Generadores de informes personalizados y Menús

Realizar transferencias de datos entre la base de datos y programas software independientes, utilizando adecuadamente los mandatos del sistemas gestor de la base de datos.

Aplicar correctamente los mandatos y procedimientos del lenguaje SQL

Analizar la lista de dependencias funcionales para los distintos esquemas de relación que permitan asegurar la bondad del diseño de la base de datos, así como probar que su posterior actualización no creará relaciones ilegales.

Establecer las restricciones de dominio y de integridad referencial en la definición de tablas, asegurando que los cambios autorizados no lleven a una pérdida de consistencia de la base de datos.

Definir y establecer restricciones de integridad más complejas mediante el uso de afirmaciones.

Implementar procedimientos disparadores que permitan ál SGBD realizar acciones complejas ante determinadas actualizaciones autorizadas de la base de datos.

Proteger las bases de datos otorgando distintas autorizaciones o privilegios sobre las vistas y otros objetos (tablas, formularios, programas, aplicaciones) de ellas.

Describir procedimientos que permitan bloqueos en el caso de accesos concurrentes a las bases de datos.

Planificar procedimientos que garanticen la seguridad física de la base de datos.

Aplicar procedimientos para optimizar el rendimiento de la base de datos.

Resumiendo y sintetizando todas las capacidades terminales que iremos evaluando, tendríamos como objetivos del módulo:

Entender a un cliente (usuario final) sobre una necesidad concreta

Documentar su problema

Diseñar el Modelo de Datos (SQL)

Definir las consultas y/o procedimientos sobre los datos

Explotar una BD (Instalarla, Configurarla y Mantenerla)

El contenido de este módulo es sobre todo de tipo procedimental y el alumno deberá adquirir una serie de destrezas y habilidades en el manejo y administración del sistema. Pretendemos que el módulo sea una propuesta interesante y actual para el alumno.

Los contenidos básicos de tipo actitudinal irán orientados a fomentar la autonomía, la resolución autónoma de problemas de diseño de datos y la necesidad de una formación contínua como síntesis de los descritos en el Diseño Curricular Base.

Requisitos Previos

El alumno tendrá la capacitación prevista en los módulos de los primeros tres trimestres del ciclo. Estas competencias están descritas en los módulos correspondientes y resumiéndolas podríamos definir los siguientes:

Administración y Gestión de la conectividad de Red, especialmente una TCP/IP

Administración y Gestión Básica/Media de un sistema operativo multiusuario y multitarea

Conocimientos básicos de lógica y programación de estructuras de datos.

Conocimiento medio de un editor de texto avanzado

Además son de interés todos los contenidos conceptuales, procedimientales y actitudinales de todas las asignaturas de primer curso. Se prestará atención a los alumos que tienen módulos pendientes o con notas iguales o inferiores al 6.

Se hará una evaluación inicial del perfil de la clase, para definir correctamente el contexto del grupo. Al ser el segundo curso del ciclo es más fácil que el grupo sea más homogéneo en conocimientos, sin embargo no debemos olvidar que en áreas como la informática existe un alto nivel de alumnos con formación autodidacta y que incluso en cursos de verano han podido alcanzar algunos objetivos del módulo.

CRITERIOS DE SECUENCIACIÓN DE LOS CONTENIDOS

Los criterios generales de secuenciación adoptados son:

Identificar los principales componentes de los contenidos seleccionados en el primer nivel de concreción (DCB –Diseño Curricular Base-)

Analizar las relaciones que existen entre los componentes identificados y establecer las estructuras de contenido correspondientes

Proponer una secuenciación de los componentes atendiendo a las relaciones y estructuras establecidas y a las leyes del aprendizaje significativo

Los contenidos se organizan en varios bloques distribuidos secuencialmente. Las unidades didácticas se pueden englobar en cuatro grandes bloques y una unidad didáctica (UD) de transición:

Introducción a la Base de Datos y diseño (UDs 1,2 y 3)

Diseño de modelos de datos y su uso con SQL (UDs 4 y 5)

Administración de un servidor de BD relacional (UD 6)

Desarollo de un mini proyecto (UD 7)

Esta distribución en bloques permite una comprensión general del módulo, pero nos centraremos en una programación por unidad didáctica pues permite un mejor control y evaluación.

Aunque hemos hecho la distribución por horas, en la práctica una clase es un conjunto de sesiones de 50 minutos, generalmente dos o tres sesiones. En realidad es más útil el concepto de clase para el docente, pues para el alumno englobaría el concepto de “lo que voy a ver en la clase de hoy”. Obviamente sólo la experiencia permite determinar exactamente cuales son los contenidos para cada clase, sin embargo es imprescindible tener una programación secuencial según el número de horas teniendo en cuenta las clases a impartir.

En realidad un trimestre consta aproximadamente de unas 12 semanas. Por lo tanto el módulo tiene una duración aproximada de 24 a 28 semanas. Según el diseño curricular base del ciclo el módulo consta de 185 horas en total. Esto significa 8 sesiones de 50 minutos, y según considere el centro se necesitarán más o menos semanas para dar el módulo. Las unidades didácticas serán impartidas siguiendo la secuencia siguiente:

UD	TÍTULO	Semanas	Clases	50 min
1	Uso de Internet en el Desarrollo: documentación y búsqueda	2	4	16
2	Introducción a las Bases de Datos	2	4	16
3	Modelo Relacional y el Modelo E/R	3	6	24
4	Crear Modelos de Datos (SQL I)	4	8	32
5	Utilizar el Modelo de Datos (SQL II)	4	8	32
6	El Servidor SGBDR (PostgreSQL)	4	8	32
7	Análisis, Diseño e Implantación de un proyecto Real (Aplicación Web)	4	8	70
	185	23	46	222

El módulo está dividido en dos evaluaciones en los dos primeros trimestres del segundo curso del Ciclo Superior, es decir el cuarto y quinto trimestre del ciclo. La secuenciación de las unidades didácticas debería permitir comenzar la segunda evaluación con el trabajo de desarrollo propiamente dicho, esto significaría que en el cuarto cuatrimestre se comenzaría con la UD 5.

Esta distribución es meramente orientativa, dado el carácter abierto y flexible del currículo, y en función de las necesidades del grupo podrán producirse pequeños ajustes.

Elementos Curriculares de cada Unidad de Trabajo

Uso de Internet en el Desarrollo: documentación y búsqueda

En esta unidad didáctica es la primera del módulo, esto significa que los alumnos vienen de su descanso vacacional y que se debe empezar con contenidos más prácticos para introducirlos en el ritmo del trimestre. Esta unidad continuará con el trabajo de los módulos anteriores para el uso de Internet en clase, haciendo hincapié en el uso de Internet para el desarrollo de software, la documentación y la ayuda en línea.

En todo el módulo el uso de Internet estará presente como ayuda y documentación, como publicación y colaboración con el equipo de trabajo y finalmente como arquitectura de desarrollo.

Contenidos Conceptuales

Internet

Introducción

Nociones: Sockets, Puertos, Repaso de Redes TCP/IP

Colaboración por Internet para el módulo

Plataforma de Apoyo a las clases vía Web o grupos Yahoo

Descripción de recursos en Internet (URL Avanzado)

Correo Electrónico Avanzado

Opciones de Configuración: servidores, redireccionamiento, autenticación, etc

Configurar y Gestionar Carpetas

Importar y Exportar Mensajes de Correo Electrónico

Configuración de Varias Cuentas de Correo

Consulta de múltiples cuentas desde diferentes lugares

Buscar Información

Uso Básico de Google

Búsqueda Avanzada en Google

Formatos de Archivo: txt, html, pdf, sxw y doc

Búsqueda en listas de noticias

NetEtiquette

Normas de Educación en el envío de Mensajes

Relación Virtual: disponer de una identidad en Internet

Generación de confianza: escoger correctamente el nombre de usuario

Plataforma de Colaboración (grupos Yahoo):

Qué son

Cómo y para qué lo utilizaremos en clase

Servicios que nos ofrece

Contenidos Procedimentales

Gestión de una cuenta de Correo Electrónico

Crear una cuenta de correo electrónico gratuita. Conexión WebMail y POP

Configuración en un ordenador del centro

Manual de configuración de la cuenta de correo electrónico del colegio

Buscar información:

Buscar información sobre un lenguaje de programación

Crear un archivo de texto con links (bookmarks) interesantes y su descripción

Añadir enlaces de Internet a Bookmarks o Mis Favoritos

Crear y Gestionar una cuenta de noticias (ejemplo lenguaje)

Gestión del Grupo Yahoo y/o Comunidad Colaboración

Solicitar el ingreso en el grupo Yahoo y participar en él (mensaje de bienvenida)

Enviar mensaje desde el portal Web y desde el correo electrónico

Criterios de Evaluación

Ser capaz de manejar el correo electrónico de una manera eficiente

Ser capaz de realizar búsquedas avanzadas con un buscador (p.ej. Google)

Ser capaz de colaborar en la plataforma de colaboración escogida

Introducción a las Bases de Datos

En los sistemas de información actuales, las Bases de Datos son uno de los pilares fundamentales porque permiten dar consistencia y coherencia a los datos, para ser procesados desde diferentes aplicaciones.

Los contenidos son básicamente conceptuales y procedimentales aunque están inmersos los contenidos actitudinales en el trabajo en equipo. Las habilidades que intervienen son de interpretación, análisis y síntesis de la información necesaria para buscar y comprender cada uno de los elementos necesarios para crear un programa independiente del lenguaje.

Contenidos Conceptuales

¿Qué es un sistema Informático?

Hardware - Plataformas

Software - Sistema Operativo y Aplicaciones

Personas - Organización y Tipos de Usuarios

Modelo de Desarrollo de Tres capas: la importancia de los datos

¿Qué es? Arquitectura Software dentro de una arquitectura C/S

Capas

La capa de Presentación: La estética

La capa de Programación (Business Logic): El código

La capa de Datos: La información

Posibles Ventajas: performance, flexibility, maintainability, reusability, and scalability

¿Como construyo mi programa? Diseñar modelo de datos, diseñar lo que puedo hacer, permitir que el usuario lo utilice

Conceptos

¿Qué es una BD? Datos consistentes, coherentes y fáciles de manejar

¿Qué es un SGBD, Sistema Gestor de Bases de Datos?

¿Qué es el apellido R, de Relacional?

¿Es un archivo una Base de Datos?

Comparación de un SGBD con una estructura de datos dinámica/estática

Tipos y Arquitectura

Pequeña Historia de las BD

Componentes de una BD: HW, SW y Usuarios

Arquitectura ANSI/Sparc: Niveles Interno, Conceptual y Externo

Independencia de los Datos: Lógica y Física

Tipos de Modelos Lógicos: BD Jerárquicas, en Red, orientadas a Objetos y Relacionales

Diferencia entre Esquema de la Base de Datos y Ocurrencia/Estado de la BD

El modelo de Datos: describir la estructura de la BD. Entidades, Atributos e Interrelaciones

Ejemplos de SW de BD: Postgres, Oracle, DB2, Sybase, Informix, MS SQL Server, mysql, msql, solid, dBase, etc

Las hojas de cálculo: seudo-bases de datos muy utilizadas

Hoja de Cálculo, Tablas, Filas, Columnas, Celdas

Relación entre Tablas y vínculos

Ventajas (simple y rápido) e Inconvenientes

MS Access: una seudo-base de datos muy utilizada

Conceptos más avanzados

Los índices. Mejorar la localizacion de información

La concurrencia. Mejorar el servicio a varios clientes a la vez

Las transacciones. Mejorar el servicio de peticiones complejas (involucran más de una acción)

SGBD de verdad: Cumplen el Test ACID (Atomicity, Consistency, Isolation, Durability)

En la práctica: ¿Cómo hago para encontrar el Modelo de Datos?

Análisis

Diseño

Implantación

Contenidos Procedimentales

Analizar software según el modelo de Tres capas

Un programa en C (año pasado)

Cliente de Correo Electrónico

Kazaa (Descarga de Música)

Hacer una Base de Datos, en un archivo de texto (propongo para gestionar el préstamo de CDs)

Hacer una Base de Datos, utilizando Hojas de Cálculo

Terminar la BD con Hojas de Cálculo

Criterios de Evaluación

Entender los esquemas de datos en una aplicación

Diseñar una base de datos

Resolver problemas de datos

Modelo Relacional y el Modelo E/R.

El modelo Relacional permite una mayor consistencia y coherencia en el mantenimiento del modelo de datos. Aunque existen otros modelos (jerárquico, red, orientado a objetos) en la actualidad el adjetivo relacional es el más utilizado en los SGBD. Por otra parte, el modelo E/R es la tecnica de modelado más habitual para realizar modelos de datos.

Contenidos Conceptuales

El Modelo Relacional

Situado en el Modelo ANSI/SPARC: Modelo Lógico)

Historia: E. F. Codd (1970), Segunda Generación

Relación: Filas y Columnas

Define: Estructura, Integridad y Manejo de los Datos

Conceptos Básicos:

Relación/Tabla

Columna/Atributo

Fila/Tupla/Registro

Dominio: conjunto de Valores Legales

Grado: número de atributos

Cardinalidad: número de tuplas

Definición Formal de Relación: Cabecera (Atributo/dominio) y Cuerpo (Atributo Valor)

Propiedades de las Relaciones:

Nombre único

Valores Atómicos (Normalizada)

Atributos Únicos

No importa el Orden de los Atributos

Tuplas Únicas

No importa el orden

Claves/Llaves/Keys

Para qué sirven

SuperClave: atributo o conjunto que identifican en modo único una tupla

Clave Candidata: única e irreductible

Claves simples y compuestas (número de atributos)

Claves Primarias y Claves Ajenas

Claves Ajenas: relación con una relación externa

Esquema de una Base de datos

Acercamiento al modelo de datos final

Nombre de tuplas y atributos, subrayando claves primarias

El Modelo Relacional (y 2)

Reglas de Integridad

Definir Reglas que los datos tienen que cumplir

Tipos: de dominio, de entidades, de integridad referencial, del usuario ( lógica de negocio )

Concepto de Nulo: NULL (Operaciones Lógicas)

Restricción de Dominio: valores posibles

Restricción de Entidades: clave primaria no nula

Restricción de Integridad Referencial: clave ajena existente

Admitir Nulos

Borrado (Propagar, Restringir, Anular)

Modificación (Propagar, Restringir, Anular)

Restricción por reglas de negocio

Operaciones del Álgebra Relacional

Básicas

Selección

Proyección

Unión

Diferencia

Producto Cartesiano

Derivadas

Intersección

Concatenación-Join (Natural Join y Outer Join)

Extras: Asociación/Agregación (Theta-Join) y División

Modelo E/R

Qué es y para qué sirve

Breve Historia y Uso

Elementos

Entidades

Atributos

Relaciones

Relaciones: Fuertes y Débiles

Nombre

Grado

Cardinalidad: Cardinalidad (0,0)--(n,n) (mínimo, máximo) de ocurrencias

Clave Primaria y Candidata

Como realizar el diseño

Definir las Entidades

Seleccionar los Atributos y las Claves Primarias

Definir las relaciones entre entidades

Definir los atributos de las relaciones, los roles y la cardinalidad

Poner a prueba el modelo diseñado

Práctica Guiada y Explicada: Gestión de Residuos

Del Modelo E/R al esquema conceptual

El objetivo final es obtener un modelo de datos en SQL (desde el esquema conceptual)

Las entidades se convierten en tablas

Se define el tipo de relación

Relaciones 1:1: Atributos

Relaciones 1:N: Tabla y/o Atributo

Relaciones N:M: Tabla

Finalmente se realiza el esquema conceptual

Normalización

Objetivo Final: obtener un modelo de datos robusto, sin redundancias y que soporte las operaciones necesarias del sistema

Redundancia: datos en diferentes sitios

El problema de la redundancia y ventajas de la normalización

Normalizar: obtener nuevas tablas (relaciones) que no tengan redundancia de datos

Las formas normales:

1a: Valores atómicos, es decir, únicos e indivisibles

2a: Un atributo no clave, depende totalmente de la clave primaria (compuesta). y no solo de uno de los atributos que lo forman (Dependencia funcional completa de la clave primaria)

3a: Un atributo no depende de otro atributo, es decir, sólo depende de la clave primaria. (Dependencia Funcional completa y no transitiva)

Boyce-Codd:

Contenidos Procedimentales

Introducción al Modelo Relacional

Análisis del sistema de préstamos de CDs (según modelo relacional)

Obtener el Esquema de la BD de préstamos de CDs

Obtener el Esquema de la BD de un sistema que ayude a gestionar la biblioteca del colegio

Reglas de Integridad y Operaciones

Definir las reglas de integridad

Definir consultas sobre el sistema de préstamos de CDs y Bibliotecas: Posibles operaciones

Operaciones de Agregación

Modelo Entidad / Relación

Diagrama E/R del sistema de préstamos de CDs

Diagrama E/R de la gestión de incidencias

Ejercicio Inventario Hardware Colegio

Ejercicio Previo

Ejercicio Guiado

Ejercicio Residuos Tóxicos

Ejercicio Previo

Ejercicio Guiado

Normalización

Ejemplos de Normalización

Normalizar la BD de los préstamos de los CDs

Criterios de Evaluación

Entender los conceptos Básicos del Modelo Relacional

Entender los conceptos Básicos del Modelo E/R

Entender los problemas de normalización de datos (redundancia)

Crear Modelos de Datos (SQL I)

El lenguaje SQL se utiliza para la descripción del modelo de datos, y para la modelización de consultas y acciones sobre la base de datos. En esta unidad didáctica el objetivo es obtener un modelo de datos robusto y bien definido, para ello se utiliza el lenguaje DDL (Data Description Language).

Contenidos Conceptuales

Conectarse a un SGBDR: consola (psql) y Modo SQL Emacs

Qué es una base de datos y qué es una tabla

Sintaxis comando: (psql --help) Ejemplo: psql -h HOST -d BASEDATOS -U USUARIO; Listado de BD: psql -l

Pidiendo ayuda: \? (comandos de consola), \h (ayuda sobre SQL), \g (ejecutar consultas, vale ";"), \q (salir de consola)

Algunos Comandos útiles: \l, \d, \dt, \d tabla ...

Trabajo con la consola de Emacs

Configurar Emacs: M-x customize-options (sql-postgres-options, sql-user, sql-postgres-program)

SQL Buffer (M-p, M-n, M-r, M-s)

Modo SQL (C-c C-r, C-c C-b) - Ligado a un buffer interactivo

Introducción a SQL

Lenguaje SQL

Pequeña Historia (Investigación: 70s (SEQUEL/2), Producción: 80s (SQL))

Standards: ANSI X3.135 (1986), ISO (1987), SQL1 (1989), SQL2 (1992), SQL3 (1999) pero NINGUNO los cumple totalmente (el SGBDR más cercano es Postgres)

Características: declarativo (importa el qué no el como), ejemplo ("select nombre from alumnos where id=120")

Palabras Reservadas (tokens: palabras reservadas e Identificadores)

Estructura de una sentencia SQL (tres ejemplos): comando, expresiones, cláusula, operador y funciones de agregado

Comando: describe la acción a realizar (por ejemplo SELECT)

Palabras reservadas: comandos y símbolos especiales: (*, ', ")

Constantes: cadena ('cadena de texto'), numeros (15 o 14.34 o 14e+8), fechas ('2004-01-02'), boolean ( true/false, t/f) etc

Expresiones: identificadores y operadores ( por ejemplo 15.4*2 ó 15.4 > 4 )

Operadores: relaciona un identificador con un valor (aritméticos y lógicos)

Cláusula: describe completamente el comando (FROM alumnos)

Comando Básico (por ejemplo SELECT)

Ayuda Interactiva: \help SELECT

Envíar el comando al SGBDR: \g ó más útil ; (punto y coma)

Uso de la palabra reservada AS (nombre de salida)

Sintaxis (no está completa):

SELECT * | expression [ AS output_name ] [, ...] [ FROM from_item [, ...] ]

Ejemplos: select id, num from paquetes;
update alumnos set nombre = 'Manuel';
create table prueba (id integer, nombre varchar(80));
INSERT INTO inventario VALUES ('0385121679', true);

Tipos de Datos

SQL: lenguaje fuertemente tipado (control de tipos de datos)

Tipos básicos (estándares): boolean, caracteres (char, varchar), numeros ( integer, real, numeric(p,s) ) y Tiempo (date, time, timestamp)

Ejemplos de Constantes: String, Integer y Boolean

Forzar el tipo: operador ::. Ejemplo: select 15::real;

En realidad hay muchos tipos de datos (URLs, geometría, etc): Ver con \dT en consola

Creación de Datos (DDL)

Creando Tablas

create table (tabla, atributos, dominios)

drop (destruir tablas, destruir columna)

alter table (modificar la estructura de una tabla)

Entender la sintaxis (\help comando SQL)

Restricciones (Constraints)

Sobre los campos: NOT NULL, DEFAULT, UNIQUE, PRIMARY KEY, check. Por ejemplo:

create table prueba (ejemplo_campo integer default 9, otro_ejemplo varchar(80) not null)

Con otras tablas: FOREIGN KEY, REFERENCES. Por ejemplo:

create table prueba (ejemplo_clave_ajena integer references usuarios (dni) )

Añadir restricciones (table_constraint) a la tabla ya creada

Manipulación Básica de Datos (DML)

¿Qué es?

Consultas (SELECT) (Fijarse: AS output_name, FROM from_item, WHERE condition)

Operadores Comparación: aritméticos (>, <, =, OR, AND ...), caracteres (LIKE, expresiones regulares ~)

Realizar un modelo de datos (mini-banco)

Uso de la Sintaxis de SQL:

Caracteres Especiales

En mayúsculas: palabras reservadas

En minúsculas: expresiones

Entre Corchetes [ ]: opcional

Entre Llaves { }: obligatorio

Tres puntos: repetir anterior

Con Operador | : Opciones Excluyentes

Sintaxis CREATE TABLE

Explicación Column Constraint

Explicación Table Constraint

Sintaxis ALTER TABLE

Repaso y crear nuevo modelo de datos (II)

Más sobre modelo de datos

Control de datos de entrada: check (expresion)

Creación de Secuencias

CREATE SEQUENCE (sintaxis)

Tipo de Datos: serial

Contenidos Procedimentales

Conectarse a un SGBDR: consola (psql) y Modo SQL Emacs

Qué es una base de datos y qué es una tabla

Sintaxis comando: (psql --help) Ejemplo: psql -h HOST -d BASEDATOS -U USUARIO; Listado de BD: psql -l

Pidiendo ayuda: \? (comandos de consola), \h (ayuda sobre SQL), \g (ejecutar consultas, vale ";"), \q (salir de consola)

Algunos Comandos útiles: \l, \d, \dt, \d tabla ...

Trabajo con la consola de Emacs

Configurar Emacs: M-x customize-options (sql-postgres-options, sql-user, sql-postgres-program)

SQL Buffer (M-p, M-n, M-r, M-s)

Modo SQL (C-c C-r, C-c C-b) - Ligado a un buffer interactivo

Introducción a SQL

Lenguaje SQL

Pequeña Historia (Investigación: 70s (SEQUEL/2), Producción: 80s (SQL))

Standards: ANSI X3.135 (1986), ISO (1987), SQL1 (1989), SQL2 (1992), SQL3 (1999) pero NINGUNO los cumple totalmente (el SGBDR más cercano es Postgres)

Características: declarativo (importa el qué no el como), ejemplo ("select nombre from alumnos where id=120")

Palabras Reservadas (tokens: palabras reservadas e Identificadores)

Estructura de una sentencia SQL (tres ejemplos): comando, expresiones, cláusula, operador y funciones de agregado

Comando: describe la acción a realizar (por ejemplo SELECT)

Palabras reservadas: comandos y símbolos especiales: (*, ', ")

Constantes: cadena ('cadena de texto'), numeros (15 o 14.34 o 14e+8), fechas ('2004-01-02'), boolean ( true/false, t/f) etc

Expresiones: identificadores y operadores ( por ejemplo 15.4*2 ó 15.4 > 4 )

Operadores: relaciona un identificador con un valor (aritméticos y lógicos)

Cláusula: describe completamente el comando (FROM alumnos)

Comando Básico (por ejemplo SELECT)

Ayuda Interactiva: \help SELECT

Envíar el comando al SGBDR: \g ó más útil ; (punto y coma)

Uso de la palabra reservada AS (nombre de salida)

Sintaxis (no está completa):

SELECT * | expression [ AS output_name ] [, ...] [ FROM from_item [, ...] ]

Ejemplos: select id, num from paquetes;
update alumnos set nombre = 'Manuel';
create table prueba (id integer, nombre varchar(80));
INSERT INTO inventario VALUES ('0385121679', true);

Tipos de Datos

SQL: lenguaje fuertemente tipado (control de tipos de datos)

Tipos básicos (estándares): boolean, caracteres (char, varchar), numeros ( integer, real, numeric(p,s) ) y Tiempo (date, time, timestamp)

Ejemplos de Constantes: String, Integer y Boolean

Forzar el tipo: operador ::. Ejemplo: select 15::real;

En realidad hay muchos tipos de datos (URLs, geometría, etc): Ver con \dT en consola

Creación de Datos (DDL)

Creando Tablas

create table (tabla, atributos, dominios)

drop (destruir tablas, destruir columna)

alter table (modificar la estructura de una tabla)

Entender la sintaxis (\help comando SQL)

Restricciones (Constraints)

Sobre los campos: NOT NULL, DEFAULT, UNIQUE, PRIMARY KEY, check. Por ejemplo:

create table prueba (ejemplo_campo integer default 9, otro_ejemplo varchar(80) not null)

Con otras tablas: FOREIGN KEY, REFERENCES. Por ejemplo:

create table prueba (ejemplo_clave_ajena integer references usuarios (dni) )

Añadir restricciones (table_constraint) a la tabla ya creada

Manipulación Básica de Datos (DML)

¿Qué es?

Consultas (SELECT) (Fijarse: AS output_name, FROM from_item, WHERE condition)

Operadores Comparación: aritméticos (>, <, =, OR, AND ...), caracteres (LIKE, expresiones regulares ~)

Realizar un modelo de datos (mini-banco)

Uso de la Sintaxis de SQL:

Caracteres Especiales

En mayúsculas: palabras reservadas

En minúsculas: expresiones

Entre Corchetes [ ]: opcional

Entre Llaves { }: obligatorio

Tres puntos: repetir anterior

Con Operador | : Opciones Excluyentes

Sintaxis CREATE TABLE

Explicación Column Constraint

Explicación Table Constraint

Sintaxis ALTER TABLE

Repaso y crear nuevo modelo de datos (II)

Más sobre modelo de datos

Control de datos de entrada: check (expresion)

Creación de Secuencias

CREATE SEQUENCE (sintaxis)

Tipo de Datos: serial

Criterios de Evaluación

Saber cómo conectarse a una base de datos Postgres

Descripción completa de un modelo de Datos (DDL)

Utilizar el Modelo de Datos (SQL II)

Lo que se pretende en esta unidad didáctica es saber cómo utilizar la base de datos para introducir, modificar y consultar datos. Haremos especial hincapié en la creación de consultas, y también en entender consultas complejas escritas por otros.

Contenidos Conceptuales

Inserción de Datos: Sentencia INSERT INTO

Modificando y consultando datos:

Modificación de Datos (con cuidado): Sentencia UPDATE

Consultas Básicas: Sentencia SELECT * | expression [ AS output_name ] [, ...] [ FROM from_item [, ...] [ WHERE condition ] ]. Por ejemplo select nombre as "El nombre", apellidos from alumnos where id_alumno = 25 ó select 25*8 AS "Operacion"

Condiciones (condition): expresiones que devuelvan valor true. Por ejemplo: nombre = 'Pepe' o nombre = 'Paco' AND edad < 25

Borrado de Datos (con cuidado): Sentencia DELETE

Consultas con varias tablas

Uso de varias Tablas:FROM tabla1, tabla2, tabla3: producto cartesiano de todas las tablas

Se utilizan las claves ajenas (foreign key) para generar condiciones (WHERE) sobre ese producto cartesiano.

El uso de Alias en Campos y Tablas, permite claridad y facilidad en la generación de consultas complejas

Mejorando las consultas

Cláusulas ORDER BY, LIMIT, OFFSET

Uso de Funciones

Qué son (expresiones)

Tipos y Ejemplos

Matemáticas: log(x), random()

Manejo de Caracteres: char_length('cadena'), substring ('cadena' from 'REGEXP')

Tiempo y Fecha: current_time, current_date, now()

De agregación: count, max, min, avg

Operaciones sobre cadenas: operador || (concatenar) y ~ (REGEXP)

Sintaxis completa de SELECT

Uso de JOIN en las consultas (uso en cláusula FROM)

CROSS Join: equivalente a separar por comas

Requieren Condiciones (qualifications): INNER Join y OUTER Join (right y left)

Las condiciones se añaden con la palabra ON y un expresión ON (join_condition)

Ejemplos

Agregación de Registros:

Cláusulas GROUP BY: agrupar según campo y utilizar funciones de agregación

Cláusula HAVING: condiciones sobre las filas agrupadas

Ejercicio Completo de Modelo de Datos y Entender consultas complejas de otros

Contenidos Procedimentales

Lenguaje DML

Ejecutar Consultas Básicas (SELECT) (Ver el contenido de la tabla, ver datos, AS , FROM)

Introducir datos, todos los campos o por separado (INSERT INTO)

Probar cómo protege la base de datos su consistencia (forzar errores)

Modificar Valores, que he introducido

Modifificar Filas / Datos (UPDATE)

Borrar Filas (DELETE)

Consultas Básicas y con Condiciones

Practicar con consultas con origen en diferentes tablas

Consultas con Funciones y trabajar con el modelo de datos

Modelo de Datos completo

Se busca construir un sistema de información para gestionar una base de datos de películas. Básicamente se requiere gestionar la información de las películas, las estrellas (actores / actrices) que participan en ella y los estudios de producción a las que pertenecen.

Además se requiere que las consultas que tendrá que soportar el modelo de datos sean:

Encontrar la dirección de un estudio

Encontrar todas las estrellas que participaron en películas realizadas en el año TAL o en alguna película que contenga la palabra TAL en el título.

¿Quíen fue la estrella de la película TAL?

¿Qué películas tienen mayor duración que la película TAL?

Encontrar el título y la duración de todas las películas producidas por los estudios TAL en el año TAL, ordenando la salida por su duración

Encontrar todas las estrellas que son hombres o viven en TAL ciudad

¿Qué estrellas distintas aparecen en las películas producidas por el estudio TAL, en TAL año? Si las películas salen repetidas, mostrarlas una sóla vez

¿Cuál es la media, en años, de publicación de las películas?

Encontrar las películas que empiecen por L, que tengan más de una palabra y que contengan en el título las letras a,p y m

Encontrar la suma de la duración de todas las películas de cada estudio

Además, cada alumno deberá, añadir tres ejemplos de consultas más, para vender su producto.

El trabajo se hará utilizando la base de datos del colegio y las tablas de la base de datos serán precedidas por el username del alumno. Recordad que todos tenéis el mismo usuario, por lo tanto cuidado con las tablas que modificáis y pensad la manera de tener copias de seguridad del modelo de datos. Se dispondrá de tres clases para el trabajo y en la última clase iré revisando el trabajo.

Criterios de Evaluación

Descripción de las acciones sobre la base de datos (DML)

Descripciones de consultas, uso avanzado de SELECT

El Servidor SGBDR (PostgreSQL)

Postgres es una base de datos avanzada que cumple con el Test ACID. Es gratuita y con licencia BSD. Es una base de datos con toda la funcionalidad necesaria para cualquier tipo de aplicación desde la más sencilla a la más compleja por eso la hemos escogido como herramienta de uso y administración como motor de base de datos.

Contenidos Conceptuales

Introducción: Porqué, Historia, Características, Ventajas/Inconvenientes

Instalación desde Código Fuente (procedimiento y cálculo de horas)

¿Qué es?

Plan de Trabajo: qué necesito, software necesario (versión), módulos y documentación

Instalación del Programa

Instalación: configuración (./configure), compilación (make), instalación (make install)

Creación de usuario y directorio de la base de datos. (data y configurar permisos)

Jerarquía de directorios: bin, doc, include, man, share, lib y DATOS

Inicializar el directorio de Datos (initdb -D el_directorio_que_escoja)

Arrancar el SGBDR (postmaster y/o script pg_ctl). Poner SIEMPRE el directorio de la BD

Probar que está funcionando (createdb y psql)

Trabajo Post-Instalación: configurar PATH, Librerías

Conexión a la base de datos (createdb, createuser, dropdb, dropuser )

Configuración Servidor

Archivo de Configuración: postgresql.conf (en $PGDATA). Si es necesario modificar los parámetros listen_addreses y el Puerto

Archivos de Log: redireccionando la salida del comando o con opciones en el script

Control de Acceso (Autenticación): pg_hba.conf, pg_ident.conf

Authentication

Control Basado en Host (Host-Based Access pg_hba.conf)

Quién, desde dónde y a qué

Tipos de conexión localhost y vía host (TCP/IP)

Estructura pg_hba.conf:

Tipo de Conexión: local | host | hostssl

database (all | sameuser | name)

user

ip_addr netmask

authentication_method (password, crypt, ident, trust, md5, reject )

Ejemplos de Archivos de Configuración

Tareas de Administración y Mantenimiento

Tipos de usuarios: DBA y usuarios (normal, desarrollador, programador, etc)

Gestión de Usuarios ( y Grupos)

Tablas del Sistema sobre usuarios:

pg_user: Tabla con información de usuarios

pg_shadow: Tabla con información sobre la clave de usuarios

Gestionar Usuarios

Lenguaje DCL: Data Control Language. Sentencias SQL: CREATE USER, DROP USER Y ALTER USER

Utilizando comandos: createuser, dropuser

Gestión de Bases de Datos

Utilizar Lenguaje DCL: Data Control Language. Sentencias SQL: CREATE DATABASE, DROP DATABASE y ALTER DATABASE

Utilizando comandos: createdb, dropdb

Tabla del Sistema: pg_database

Gestión de Permisos sobre Objetos

Tipos de permisos (hay más): SELECT, INSERT, UPDATE, DELETE, REFERENCES, CREATE y ALL

La palabra PUBLIC especifica cualquier usuario

Se pueden otorgar (GRANT) o quitar permisos (REVOKE)

Para ver los permisos de un objeto: \z nombre_objeto

Tablas del Sistema: pg_class. Ejemplo: select relname, relacl from pg_class;

Gestión de Copias de Seguridad

Utilizando comandos (El que hay que utilizar): pg_dump (para cada bd) y pg_dumpall (todas). Revisar las opciones (modelo de datos, contenido, comprimir, etc)

Copiar el Sistema de Archivos (PGDATA)

Otras funciones del mantenimiento:

Sobre la actividad de la BD (tablas del Sistema)

Sobre el Rendimiento del Sistema: Procesador, Memoria y Sistemas de Archivos)

Sobre la Documentación de los Modelos de Datos y Atención a los desarrolladores

Contenidos Procedimentales

Instalación de Postgres 8.0.1 (dos días):

Instalar, arrancar y parar (comando y scripts)

Conocer los diferentes archivos que hay en el directorio de instalación

Configuración del Servidor y Logs:

Arrancar/Parar Servidor con logs (creados por mí, y a través del script "control_postgres")

Añadir configuración en postgres.conf para activar conexión TCP y detallo del archivo de log

Configurar Acceso vía Host (modificando base de datos, usuarios y mecanismo de envío de la clave)

Acceso desde cualquier parte

Acceso desde una sola máquina

Gestión de Autenticación

Gestión de Usuarios: Añadir, Borrar y Modificar parámetros de usuarios

Gestión del Acceso vía host y usuario a las bases de datos

Revisar Tablas del sistema: pg_user, pg_shadow

Gestión de Permisos

Crear un usuario "invitado" que sólo pueda leer la tabla

Crear un usuario "web" que pueda añadir, leer, actualizar y borrar datos

Comprobar los permisos a través de la tabla pg_class o el comando \z

Administracion y Mantenimiento

Repaso a la situación interna: VACUUM y vacuumdb

Hacer copia de seguridad: pg_dump y pg_dumpall (¿cuando?, ¿cómo?, hot backup)

Recuperar la base de datos: pg_restore. Crear la BD , los usuarios, y los características de la BD

Copiar el sistema de archivos directamente

Criterios de Evaluación

Conocer su Arquitectura y Funcionamiento

Instalación, Configuración y Mantenimiento de Postgres

Funciones y Trabajo de DBA

Análisis, Diseño e Implantación de un proyecto Real (Aplicación Web)

Esta unidad didáctica se coordinará con la asignatura de DFSI. Tendrá un contenido puramente procedimental desarrollando un proyecto pequeño de desarrollo de una utilidad software a través de Internet. Se denominará mini-proyecto en comparación con el módulo Proyecto Integrado.

Se ofrecerán varias alternativas en forma de requerimientos de un cliente, y los alumnos tendrán que poner en práctica la implementación del sistema de forma autónoma simulando un entorno profesional. Esta unidad didáctica se centrará en la supervisión y repaso de los contenidos conceptuales y procedimentales relacionados son el análisis y diseño de nuevas funcionalidades.

Contenidos Conceptuales

Planificación del Proyecto

Cómo leer los requisitos

Análisis de los Requisitos

Planteamientos de Diseño

Presentación

Datos

Lógica/Programación

Diseño y esbozo de la arquitectura a implementar

Puesta en marcha de una aplicación Software

Instalación

Mantenimiento y control de versiones

Documentación en línea

Contenidos Procedimentales

Desarrollo de un mini proyecto a escoger entre cuatro alternativas, o escoger otra alternativa (desde el proyecto integrado o una planteada por el alumno). En grupos de máximo dos personas.

Criterios de Evaluación

Ser capaz de montar la arquitectura del sistema

Ser capaz de realizar el modelo de datos del sistema

Ser capaz de realizar las páginas dinámicas del sistema

CONTENIDOS ACTITUDINALES

Los contenidos relacionados a continuación son comunes a todas las unidades didácticas.

Comportamiento autónomo para la utilización de bibliografía y otras fuentes de información

Interés por seleccionar el entorno y las herramientas de programación más adecuados para conseguir mayor productividad

Interés por utilizar las herramientas de programación más adecuadas para conseguir mayor productividad y portabilidad

Constancia de la prueba funcional de los programas desarrollados y medida de los recursos del sistema

Constancia en la documentación del sistema

Interés por la producción de guías de usuario claras y sencillas

Valoración de la redacción cuidados de los informes y la utilización adecuada de la termninología informática.

Hábito de trabajo en grupo y respeto por las normas establecidas en el colectivo.

METODOLOGÍA

La metodología que se utilizará en clase potenciará, en lo posible los siguientes aspectos:

Colaboración y Participación (Internet y clase)

Interés (Contenidos Interesantes)

Educación personalizada (Evaluación Continua)

Dentro del proceso de enseñanza-aprendizaje tradicional se pensaba que el conocimiento fluía del profesor al alumno. Para aumentar la participación e interés del alumno se hace necesario hacerlo intervenir en el proceso. Palabras como “Aprendizaje Significativo” y “Constructivismo” resuenan dentro de las teorías pedagógicas que señalan la participación del alumno en su propio aprendizaje.

El uso de una plataforma de colaboración por Internet permite potenciar la colaboración porque el alumno puede aportar, por ejemplo, una consulta, o un enlace de Internet que ha encontrado o incluso preguntas a otros alumnos. Además el profesor enviará antes de la clase un correo electrónico a todos los alumnos con un pequeño esquema con el mapa de contenidos y las actividades a realizar en clase. De esta forma los servicios por Internet (correo electrónico y navegación Web por el grupo de colaboración) permiten una comunicación fluida entre los alumnos, y con el profesor. Además, y es este uno de las aspectos señalados en el Proyecto Educativo del Centro, el uso de Internet permite una mayor integración de los alumnos que trabajan y tienen dificultades para asistir de forma contínua a clase.

Sin embargo este sistema en ningún caso podrá sustituir a la educación tradicional, y en ese sentido, las clases consistirán generalmente en:

Explicación Oral del mapa de contenidos de la clase, prestando atención a la participación de los alumnos, y aprovechando sus preguntas/intervenciones para aportar los contenidos de la unidad didáctica

Propuestas de actividades de enseñanza-aprendizaje, de tipo práctico para que el alumno (sólo o en grupo) las desarrolle en clase. Sería ideal también que los alumnos terminen proponiendo alguna actividad.

Además el diseño de la programación y las unidades didácticas presentan contenidos interesantes y actuales, dentro del planteamiento del Diseño Curricular Base del Ciclo Formativo para este módulo. El uso de enlaces y materiales de Internet permite que incluso los alumnos puedan proponer materiales para la unidad didáctica (siempre revisados por el profesor), se generan por lo tanto contenidos más dinámicos que si se utilizara un libro de texto. Hay que tener en cuenta que existirá un trabajo importante de supervisión de los materiales aportados por los alumnos y/o de su programación antes de poner en práctica sus propuestas.

El componente de educación personalizada, es quizá más complejo de delimitar. Para ello, además de la relación con el alumno de tipo personal (en clase y vía correo electrónico) se tratará de, en cada unidad didáctica, evaluar de forma personalizada e incluso asignar tareas de formas personalizada. Para ello se utilizarán los criterios de clasificación de muy bien, bien, regular y mal en la evaluación práctica continua que permitirán conocer el grado de soltura en el manejo de contenidos de la unidad didáctica, que tiene el alumno. Estos aspectos se dejarán claros al comienzo del módulo tratando de aclarar que a cada alumno se le evaluará de forma personalizada según su nivel pero con pruebas generales (test) donde la evaluación será relativa a la clase.

Esta metodología pretende tener al alumno con una dinámica de estudio y trabajo continuo, sobre todo en clase.

MEDIDAS DE ATENCIÓN A LA DIVERSIDAD.

Las medidas de refuerzo educativo tendrán como objetivo potenciar los conocimientos y procedimientos englobados en los contenidos mínimos exigibles, que no fueron superados por los alumnos en las diferentes pruebas de evaluación. Para estos alumnos se realizarán las siguientes medidas:

Ejercicios específicos

Atención exclusiva con herramientas síncronas (Chat y Telefonía IP) y asíncronas (correo electrónico y Grupo Yahoo)

Evaluación diaria con mayor supervisión

El profesor mantendrá un servicio Web de la asignatura (http://www.cesareox.com/docencia/sxbd/) ,con la información del curso y que será actualizado diariamente. Además el profesor enviará un correo electrónico con el esquema de la clase y permitirá a estos alumnos comunicarse vía correo electrónico o chat según disponibilidad. Además el centro mantiene para cada ciclo un grupo yahoo de colaboración.

También existirán alumnos que obtendrán rápidamente los conocimientos y procedimientos de la unidad didáctica, ya sea por su capacidad o por los conocimientos autodidactas tan comunes en las áreas de informática. Para estos alumnos se tendrán en cuenta las siguientes medidas:

Profundizarán en cada unidad didáctica y se hará supervisión

Generarán documentación Web para el resto de alumnos

En el ámbito de la Formación Profesional, cada vez más coordinada con la realidad socio laboral, existen alumnos (especialmente en los turnos de tarde y noche) que trabajan y se les hace complicado asistir a todas las sesiones. Esta situación no es problema gracias al uso de herramientas Internet.

Además el uso de Internet y una plataforma de colaboración es de hecho la medida más importante de atención a la diversidad, pues permite que se potencia la relación entre alumnos que o no pueden asistir a clase o tienen dificultades en el seguimiento.

Evaluación

Procedimiento de Evaluación Ordinario

El sistema de evaluación empleado tiene como objetivo evaluar los contenidos, procedimientos y actitudes que pretendemos que el alumno tenga, pero además queremos transmitir la idea de la disciplina y la autoformación.

Por otra parte, basaremos la evaluación como una forma de supervisión en el mundo laboral y se permitirá en los exámenes el acceso a apuntes, notas, Internet o cualquier medio de documentación disponible también en el mundo laboral.

La evaluación contínua es la esencia de este sistema de evaluación, ayudando a tener un ritmo de trabajo todo el curso.

Las medidas de evaluación serán, para cada evaluación las mismas. Recordemos que este módulo tiene dos evaluaciones. El sistema se basará en:

Al menos tres exámenes tipo test de 40 preguntas, con cuatro alternativas y una respuesta única en cada pregunta. Los exámenes serán sorpresa e incluirán cualquier unidad didáctica (o parte de ella) dada en clase hasta el día anterior. La nota de cada alumno se comparará con el rendimiento de la clase en el examen. Será el 30% de la nota. La nota será entre 1 y 10, con un decimal.

Se hará una evaluación diaria del trabajo práctico y procedimental de forma continua obteniendo entre 6 y 8 notas a lo largo de una evaluación. El profesor podrá evaluar en cualquier momento. Será el 30% de la nota y será uno de los siguientes valores: Muy Bien, Bien, Regular y Mal. Se podrán pedir trabajos prácticos o tareas específicas al alumno, o grupo de alumnos fruto de este tipo de evaluación.

Al final de la evaluación existirá un examen oral y personal para cada alumno. Tendrá una duración de 15 minutos y se podrá preguntar a cada alumno cualquier contenido teórico y práctico del módulo. Tendrá un valor del 30% de la nota y será una nota entre 1 y 10, con un sólo decimal. En la última evaluación este examen será un proyecto final.

Valoración del trabajo en clase, la asistencia y la colaboración con otros alumnos. Esta nota supone el 10% del total y el profesor evaluará la participación en clase, la colaboración en la plataforma de Internet y la asistencia a las sesiones. Será una nota entre 1 y 10 con un decimal

No existirá el concepto de “recuperación” en el sentido de que existan exámenes específicos cuando no se superen unidades anteriores. Se hará una evaluación contínua y personalizada, que permite evaluar al alumno todos los contenidos. No se dividirá en partes el módulo y no existirá el concepto de “unidades pendientes” porque se pretende transmitir al alumno un concepto integral del módulo.

En las evaluaciones se utilizarán dos tipos de notas, entre 1 y 10 con un decimal y uno entre cuatro valores (Mal, Regular, Bien y Muy Bien). En el área de la administración de sistemas informáticos la industria suele categorizar a los profesionales en Novato, Junior, Senior y Experto, por ellos hemos utilizado las notas como una forma de evaluar al alumno suponiendo una contratación del alumno por parte de la empresa “profesor”. De esta manera la correspondencia de notas sería:

10 y 9. Estos alumnos pueden trabajar sin casi supervisión, son capaces incluso de tomar decisiones sobre nuevas tareas y manejar el concepto evaluado con soltura.

8. Estos alumnos tienen bastante soltura pero precisan de supervisión, no mucha pero necesitarían formación extra de corta duración para adquirir una soltura total.

7 Estos alumnos conocen las tareas y las pueden desarrollar pero necesitan de revisión muy detallada

5 y 6 Estos alumnos tienen los conocimientos mínimos pero deberían tener más práctica en las tareas y competencias del módulo. Para adquirir soltura necesitarían formación de larga duración.

En el caso de pérdida de evaluación contínua, por ejemplo si las faltas de asistencia son mayores al 10% de las sesiones del módulo, se hará un examen final que constará de:

Examen tipo test de 120 preguntas. Será eliminatorio y el alumno para aprobar debe sacar un mínimo de 70 respuestas correctas. Tendrá una duración de 100 minutos.

Examen práctico de 4 horas de duración para evaluar contenidos procedimentales, delante del ordenador

Examen oral y personal de 30 minutos para la evaluación de todo el módulo

Criterios y Procedimientos para establecer las actividades de recuperación de los módulos pendientes

La recuperación de este módulo, cuando esté pendiente se realizará en el último trimestre del segundo curso. El profesor encargado de las tareas de recuperación y evaluación será un profesor de segundo curso.

El alumno que lo desee como medida de refuerzo podrá asistir a clase siempre y cuando no interrumpa ni altere las clases del módulo de segundo curso y exista espacio físico en el aula. Si el alumno se incorpora al módulo, al repetir curso, se utilizarán los criterios de evaluación ordinarios

El sistema de recuperación se hará basándose en el trabajo personal del alumno y la consulta en horas de profesor en el último trimestre del curso. Las horas disponibles para recuperación serán aproximadamente la mitad de las del curso ordinario.

El sistema de recuperación se basará en el desarrollo práctico de un miniproyecto, equivalente a las dos últimas unidades didácticas y la evaluación contínua de contenidos de las unidades didácticas a medida que avanza el trimestre.

Procedimientos de Evaluación y cualificación extraordinaria del alumnado con módulos pendientes

Para aprobar el módulo deberán ser capaces de realizar la configuración básica y la instalación del Servidor Web con una página Web. La nota vendrá dada por el desarrollo del mini proyecto que se presenta en las dos últimas unidades didácticas del módulo.

Se evaluará este trabajo y se harán evaluaciones periódicas de tipo práctico para evaluar los contenidos procedimentales y conceptuales de las unidades didácticas.

Contenidos Mínimos Exigibles

El procedimiento de evaluación tratará de medir el alcance de los objetivos del módulo. Para cada unidad didáctica se seguirá el procedimiento de evaluación descrito en los apartados anteriores, teniendo en cuenta además el criterio de notas que nos hemos marcado.

Deste esta postura, un alumno, para aprobar, es decir para obtener un 5, ha de tener los conocimientos mínimos de las capacidades terminales del módulo. Para ello se evaluarán los contenidos de cada unidad didáctica (procedimentales, conceptuales y actitudinales) como al resto de los alumnos.

El contenido mínimo significa que el alumno tiene un conocimiento básico del contenido a evaluar, aunque no tenga la soltura suficiente para tomar decisiones sobre nuevas tareas. El criterio de las notas de evaluación sobre los contenidos se ha explicado en el apartado sobre criterios de evaluación.

Bibliografía

La bibliografía se apoyará fundamentalmente en recursos Web que se irán actualizando a lo largo del módulo por los alumnos y el profesor y disponibles en la página Web de la asignatura. La creación de recursos dinámicos en un área que evoluciona tan rápido como la informática es relativamente sencillo con el uso de Internet.

El uso de Internet como fuente de recursos para el módulo, se incluye dentro del planteamiento general del centro descrito en el PEC y PCC. Esta situación va evolucionando a medida que avanza el curso, aunque algunas de las propuestas iniciales son revisar en sites como los que mostramos a continuación:

http://www.tldp.org Linux Documentation Project. Documentación de Manuales, formas de documentación, procesos y sistemas operativos (es.tldp.org es el proyecto de traducción)

http://www.w3c.org World Wide Web Consortium. Estándares y Arquitectura Internet

http://www.postgresql.org Servidor de BDR PostgreSQL

http://www.microsoft.com/ Arquitectura Windows y DOS, Ayuda de Sistemas operativos y librerías

Se utilizarán también los manuales de usuario, de administrador y las ayudas instaladas localmente para cada Sistema Operativo y las aplicaciones software que utilicemos. Especialmente para cada lenguaje de programación se utilizará la ayuda que ofrezca la comunidad de soporte.

También se utilizarán las especificaciones del lenguaje utilizando la documentación pública, por ejemplo RFCs y especificaciones de W3C e IETF. Sin embargo no se recomendará la compra de ningún libro.

Algunos libros interesantes de consulta y que permiten profundizar más en los cconceptos de Arquitectura Web son:

Jakob Nielsen, Designing Web Usability. ISBN 1-56205-810-X. Diciembre 1999 Ed New Riders

PhilipGreenspun. Philip and Alex's Guide to Web Publishing ISBN 1-55860-534-7. Año 1999. Ed Morgan Kaufmann

En gallego, idioma cooficial de mi comunidad autónoma, la traducción es Sistemas Xestores de Bases de Datos, por eso empleo las siglas SXBD.

Ponemos el nombre del site no las páginas en concreto.

SXBD – Sistemas Gestores / Xestores de Bases de Datos

61

Encabezamiento

Sistemas Gestores / Xestores de Bases de Datos

SXBD

Yolanda G. Ulla

2001-10-03T18:25:00

Cesáreo García Rodicio