0% encontró este documento útil (0 votos)
68 vistas12 páginas

Bases de Datos I: Guía del Curso

Este documento presenta un silabo para el curso de Bases de Datos I de 4 créditos. El curso se enfoca en conceptos y fundamentos básicos de bases de datos, modelado de datos, el modelo relacional y álgebra relacional, diseño de esquemas y consultas en SQL, y técnicas para garantizar la integridad y concurrencia de datos. El curso busca desarrollar competencias en modelado de bases de datos y resolución de problemas usando pensamiento computacional.

Cargado por

Edcam Code
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
68 vistas12 páginas

Bases de Datos I: Guía del Curso

Este documento presenta un silabo para el curso de Bases de Datos I de 4 créditos. El curso se enfoca en conceptos y fundamentos básicos de bases de datos, modelado de datos, el modelo relacional y álgebra relacional, diseño de esquemas y consultas en SQL, y técnicas para garantizar la integridad y concurrencia de datos. El curso busca desarrollar competencias en modelado de bases de datos y resolución de problemas usando pensamiento computacional.

Cargado por

Edcam Code
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CIENCIA DE LA

COMPUTACIÓN

Bases de Datos I
4 CRÉDITOS

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 1
ÍNDICE

1. ASIGNATURA 3
2. DATOS GENERALES 3
2.1 Créditos: Cuatro (4) créditos 3
2.2 Horas de teoría: dos (2) semanales 3
2.3 Horas de práctica: cuatro (4) semanales 3
2.4 Duración del período: dieciséis (16) semanas 3
2.5 Condición: 3
2.6 Modalidad: 3
2.7 Requisitos: 3
3. PROFESORES 3
3.1 Profesor coordinador del curso 3
3.2 Profesor(es) instructor(es) del curso 3
4. INTRODUCCIÓN AL CURSO 3
5. OBJETIVOS 4
6. COMPETENCIAS 5
7. RESULTADOS DE APRENDIZAJE 7
8. TEMAS 7
9. PLAN DE TRABAJO 8
9.1 Metodología 8
9.2 Sesiones de teoría 8
9.3 Sesiones de práctica (laboratorio o taller) 9
10. SISTEMA DE EVALUACIÓN 9
11. REFERENCIAS BIBLIOGRÁFICAS 11

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 2
UNIVERSIDAD DE INGENIERÍA Y TECNOLOGÍA
SILABO 2020-2

1. ASIGNATURA

CS2701 - Bases de Datos I

2. DATOS GENERALES

2.1 Créditos: Cuatro (4) créditos


2.2 Horas de teoría: dos (2) semanales
2.3 Horas de práctica: cuatro (4) semanales
2.4 Duración del período: dieciséis (16) semanas
2.5 Condición:
- Obligatorio para Ciencia de la computación
2.6 Modalidad: Virtual
2.7 Requisitos:
- CS1102 - Programación Orientada a Objetos I. (2do Sem)
- CS1D0 - Estructuras Discretas II. (2do Sem)

3. PROFESORES

3.1 Profesor coordinador del curso


Teófilo Chambilla Aquino ([email protected])
Horario de atención: Miércoles 8 a 9:00 AM

3.2 Profesor(es) instructor(es) del curso


Teófilo Chambilla Aquino ([email protected])
Horario de atención: previa coordinación con el profesor

4. INTRODUCCIÓN AL CURSO

La gestión de la información (IM) juega un rol principal en casi todas las áreas
donde los computadores son usados.
Esta área incluye la captura, digitalización, representación, organización,
transformación y presentación de información; algoritmos para mejorar la
eficiencia y efectividad del acceso y actualización de información almacenada,
modelamiento de datos y abstracción, y técnicas de almacenamiento de
archivos físicos.

Este también abarca la seguridad de la información, privacidad, integridad y


protección en un ambiente compartido.

Los estudiantes necesitan ser capaces de desarrollar modelos de datos


conceptuales y físicos, determinar que métodos de (IM) y técnicas son

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 3
apropiados para un problema dado, y ser capaces de seleccionar e
implementar una apropiada solución de IM que refleje todas las restricciones
aplicables, incluyendo escalabilidad y usabilidad.

5. OBJETIVOS

Sesión 1: Definir los principales conceptos y fundamentos básicos de bases de


datos a través de ejemplos y aplicaciones que actualmente se usa. Identificar
las funciones principales de un SGBD mediante los principales gestores de
bases de datos que usan las empresas.

Sesión 2: Definir los conceptos en notación del Diagrama Entidad a través de la


multiplicidad y participación de dos entidades.

Sesión 3: Describir los principios básicos del modelo relacional mediante la


transformación del diagrama entidad relación al modelo relacional.

Sesión 4: Analizar y aplicar las principales operaciones del algebra relacional


mediante la teoría matemática del conjunto (unión, intersección, diferencia y
producto cartesiano).

Sesión 5: Analizar y comprobar las consultas del algebra relacional mediante la


herramienta RELAX (Relational Algebra Calculator).

Sesión 6: Analizar y demostrar consultas en calculo relacional de tuplas (CRT)


mediante la lógica de predicados (lógica de primer orden).

Sesión 7: Diseñar y crear esquemas relacionales de base de datos en SQL


utilizando un motor de bases de datos de código abierto como PostgreSQL.

Sesión 8: Aplicar restricciones en esquemas relacionales de base de datos en


SQL mediante el uso de la llave primaria, llave foránea y restricciones propias
del SQL.

Sesión 9: Escribir disparadores y procedimientos almacenados utilizando un


motor de bases de datos de código abierto como PostgreSQL.

Sesión 10: Determinar la dependencia funcional entre dos o más atributos


mediante la identificación de la superclave y/o clave candidata.

Sesión 11: Describir las propiedades de las formas normales mediante casos y
aplicaciones reales. Aplicar algoritmos de normalización a través del uso de la
cerradura de un conjunto de atributos.

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 4
Sesión 12: Evaluar un conjunto de estrategias de procesamiento de consulta
mediante el uso de algoritmos para procesamiento de consultas.

Sesión 13: Identificar los índices adecuados para determinado esquema


relacional mediante el uso del EXPLAIN ANALIZE del motor de bases de datos
de código abierto como PostgreSQL.

Sesión 14: Evaluar las técnicas para garantizan el ACID en una transacción
mediante los diferentes métodos (bloqueos y Secuenciabilidad).

Sesión 15: Definir los principales conceptos y fundamentos básicos de bases


de datos No relacional mediante el caso de estudio de la Web Semántica (Base
de datos en grafos).

Sesión 16: Evaluar el aprendizaje parcial a través del examen final del proyecto
del curso.

6. COMPETENCIAS

● b5: La comprensión intelectual y la capacidad de aplicar las bases


matemáticas y la teoría de la informática (Computer Science) (Nivel 2)
El estudiante Modela base de datos a través de modelos ER, MR,
optimización, transacciones y recuperación de la información.

● d2: Capacidad para tener una perspectiva crítica y creativa para identificar y
resolver problemas utilizando el pensamiento computacional. (Nivel 2)
El estudiante desarrolla presentaciones grupales e informes sobre tópicos
específicos.

● i3: Ser capaz de aplicar los principios y tecnologías de ingeniería de


software para asegurar que las implementaciones de software son
robustos, fiables y apropiados para su público objetivo. (Nivel 3)
El estudiante utiliza de forma apropiada los módulos de optimización de
consultas, desempeño, indexación y fragmentación de tablas para BD
distribuidas utilizando un motor de bases de datos de código abierto como
PostgreSQL, Casandra o MongoDB.

● j2: Implementar la teoría apropiada, prácticas y herramientas para la


especificación, diseño, implementación y mantenimiento, así como la
evaluación de los sistemas basados en computadoras. (Nivel 3)
El estudiante aplica la teoría de grafos y árboles para la optimización y
resolución de problemas.

● j3: Especificar, diseñar e implementar sistemas basados en computadoras.


(Nivel 3)

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 5
El estudiante utiliza de forma adecuada herramientas como RelaX
Relational Algebra Calculator (https://dbis-uibk.github.io/relax/calc.htm) para
la verificación del álgebra relacional de una consulta

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 6
7. RESULTADOS DE APRENDIZAJE

Al final del curso de Base de datos I se espera:

RA1. Que el estudiante sea capaz de modelar Base de Datos Relaciones a


partir de los requerimientos computaciones, funcionales y reglas semánticas
propias de un problema dado.

RA2. Que el estudiante sea capaz de proponer soluciones de optimización de


consultas SQL para grandes volúmenes de datos utilizando adecuadamente la
indexación en las tablas en cualquier motor de bases de datos.

RA3. Que el estudiante sea capaz de garantizar la integridad de los datos y la


integridad referencial aplicando correctamente los conceptos de restricciones
de integridad del modelo de base de datos.

RA4. Que el estudiante sea capaz de evaluar las estrategias de procesamiento


de consultas SQL en grandes bases de datos y seleccionar la estrategia
optima.

8. TEMAS

1. Introducción a base de datos y DBMS


1.1. Enfoque y Evolución de Sistemas de Bases de Datos
1.2. Componentes del Sistema de Bases de Datos
1.3. Diseño de las funciones principales de un DBMS
2. Modelo Diagrama Entidad relación
2.1. Definición del Diagrama Entidad Relación
2.2. Restricciones - Multiplicidad
2.3. Restricciones - Participación
3. Modelo Diagrama Entidad relación avanzado
3.1. Relaciones múltiples
3.2. Entidad Débil y Virtual
3.3. Jerarquías de clases
3.4. Solapamiento y acoplamiento
4. Modelo Relacional
4.1. Definición del modelo relación Transformación del Diagrama Entidad
4.2. Relación al Modelo relacional
5. Algebra Relacional
5.1. Algebra relacional clásica
5.2. Selecciones y Proyecciones
5.3. Principales Operadores unarios
5.4. Funciones de agregación
6. Cálculo Relacional
6.1. Cálculo Relacional de Tuplas (CRT)
7. Lenguajes de Consulta
7.1. Structured Query Language (SQL)
7.2. Selecciones y Proyecciones
7.3. Agregaciones y agrupaciones.
8. Actualizaciones y Restricciones en SQL

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 7
8.1. Gestión y creación de tablas
8.2. Esquemas y Privilegios
8.3. Actualización de tablas y restricciones
9. Vistas y disparadores con SQL
9.1. Vistas actualizables
9.2. Vistas materializadas
9.3. Disparadores y procedimientos almacenados
10.Dependencia funcional
10.1. Directrices informales de diseño
10.2. Dependencias funcionales
10.3. Reglas de inferencia
11.Formas normales
11.1. Entidad y integridad referencial.
11.2. Descomposición de un esquema
11.3. Llaves candidatas, SuperLlaves y cierre de un conjunto de atributos.
11.4. Formas Normales (1FN, 2FN, 3FN, BCNF)
11.5. Algoritmos de normalización
12.Procesamiento y optimización de consultas
12.1. Mantener un buffer de datos en memoria
12.2. Procesamiento de consulta SQL
12.3. Optimización sintáctica
12.4. Optimización física
13.Indexación
13.1. Estructura básica de un índice.
13.2. Creación de índices con SQL
14.Transacciones
14.1. Garantías de ACID
14.2. Secuenciabilidad
14.3. Bloqueos
15.Base de datos no Relacional
15.1. Base de datos orientadas a grafos
15.2. Introducción a la Web Semítica

9. PLAN DE TRABAJO

9.1 Metodología

Se fomenta la participación individual y en equipo para exponer sus ideas,


motivándolos con puntos adicionales en las diferentes etapas de la evaluación
del curso.

A lo largo del curso se proporcionan diferentes lecturas, las cuales podrían ser
evaluadas. El uso de herramientas Online permite a cada estudiante acceder a
la información del curso, e interactuar fuera de aula con el profesor y con los
otros estudiantes.

9.2 Sesiones de teoría

Las sesiones de teoría se llevan a cabo en clases magistrales donde se


realizarán actividades que propicien un aprendizaje activo, con dinámicas que
permitan a los estudiantes interiorizar los conceptos.
Fecha de actualización: 27/08/2020
Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 8
Se desarrollará un proyecto incremental y esta consistirá en dos entregables y
será de libre criterio del alumno y consiste en construir una base de datos de
tamaño razonable para un problema del mundo real a elección. Se debe
diseñar el modelo conceptual, el modelo de relacional y el modelo físico
usando PostgreSQL.

9.3 Sesiones de práctica (laboratorio o taller)

Las sesiones prácticas se llevan en clase donde se desarrollan una serie de


ejercicios y/o conceptos prácticos mediante planteamiento de problemas, la
resolución de problemas, ejercicios puntuales y/o en contextos aplicativos.

Cada tópico tiene dos laboratorios son del tipo individual cuando la actividad
requiere el logro de destreza en el manejo de herramientas, y del tipo grupal
cuando la actividad requiere de la participación de dos o tres personas para
la concreción de un trabajo.

Las herramientas a utilizar son los siguientes:


- Draw.io, para el modelado de la base de datos.
- PostgreSQL v12 , para la experimentación e implementación de la base de
datos relacional.
- Wikidata, para la experimentación con base de datos orientadas a grafo.

10. SISTEMA DE EVALUACIÓN

Sesiones Teóricas:
Las sesiones de teoría se llevan a cabo en clases magistrales donde se
realizarán actividades que propicien un aprendizaje
activo, con dinámicas que permitan a los estudiantes interiorizar los conceptos.

Sesiones de Laboratorio:
Para verificar que los alumnos hayan alcanzado el logro planteado para cada
una de las unidades de aprendizaje, realizarán actividades que les permita
aplicar los conocimientos adquiridos durante las sesiones de teoría y se les
propondrá retos que permitan evaluar el desempeño de los alumnos.

Exposiciones individuales o grupales:


Se fomenta la participación individual y en equipo para exponer sus ideas,
motivándolos con puntos adicionales en las diferentes etapas de la evaluación
del curso.

Lecturas:
A lo largo del curso se proporcionan diferentes lecturas, las cuales podrían ser
evaluadas. El uso de herramientas Online permite a cada estudiante acceder a

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 9
la información del curso, e interactuar fuera de aula con el profesor y con los
otros estudiantes.

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 10
Sistema de Evaluación:
La nota final NF se obtiene a través de:
PRÁCTICA Y/O
TEORÍA
LABORATORIO

0.12 ∗ Practica Calificada


(PC1)
0.07 ∗ Evaluación Continua (C1)
EVALUACIÓN 0.14 ∗ Practica Calificada
0.08 ∗ Evaluación Continua (C2)
(PC2)
0.10 ∗ Proyecto (P1)
0.14 ∗ Practica Calificada
0.15 ∗ Proyecto (P2)
(PC3)
0.20 ∗ Examen (E1)

60% 40%

100%

La ponderación de la evaluación se hará si ambas partes están aprobadas o


siguiendo los parámetros decididos por la dirección de la carrera. Indique este
aspecto a continuación del asterisco.

las rúbricas que permitirán medir las actividades más significativas del curso y
que, además se relacionan con la evaluación de las competencias del
estudiante son:

Proyecto 1 : enlace
Proyecto 2 : enlace

11. REFERENCIAS BIBLIOGRÁFICAS

Bibliografía Básica

Gehrke, J., & Ramakrishnan, R. (2003). Database management systems.


McGraw-Hill.

Bibliografía Complementaria

Ramez Elmasri and Shamkant B. Navathe(2004). Fundamentals of Database


Systems, Fourth Edition. Addison Wesley.

Celko, J. (2005). Joe Celko's SQL programming style. Elsevier.

Date, C. J. (2011). SQL and relational theory: how to write accurate SQL code. "
O'Reilly Media, Inc.".

Dietrich, S. W. (2001). Understanding relational database query languages.


Prentice Hall Professional Technical Reference.

Robinson, I., Webber, J., & Eifrem, E. (2015). Graph databases: new
opportunities for connected data. " O'Reilly Media, Inc.".

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 11
Silberschatz, A., Korth, H. F., Sudarshan, S., Pérez, F. S., Santiago, A. I., &
Sánchez, A. V. (2002). Fundamentos de bases de datos.

Rob, P., Coronel, C., Silberschatz, A., Korth, H., & Sudarshan, S. (2006).
Database systems: Design, implementation. Management. Seventh Edition.
Course Technology.

Witt, G. (2004). Data Modeling Essentials. Morgan Kaufmann.

Mark Whitehorn and Bill Marklyn(2001). Inside Relational Databases, Second


Edition. Springer

Fecha de actualización: 27/08/2020


Revisado y aprobado por el Centro de Excelencia en Enseñanza y Aprendizaje y la Dirección de Ciencia de
la Computación 12

También podría gustarte