proyecto de base de datos

62
Universidad de Panamá Facultad de Informática, Electrónica y Comunicación BASE DE DATOS Labor Social Curso: Análisis y Diseño de Sistemas II Semestre 2011

Upload: universidad-de-panama

Post on 23-Jun-2015

171 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Proyecto de Base de Datos

Universidad de PanamáFacultad de Informática, Electrónica y Comunicación

BASE DE DATOSLabor Social

Curso: Análisis y Diseño de SistemasII Semestre 2011

Page 2: Proyecto de Base de Datos

Elaborado por: Solineth Batista ySamuel Rodríguez

Page 3: Proyecto de Base de Datos

Agenda

Introducción

Planteamiento del semestre anterior

Requerimientos del sistema

¿Qué hicimos el semestre pasado?

Resumen del trabajo anterior

¿Qué hizo falta?

¿Qué se agregó?

Diseño Conceptual

Diseño Lógico

Diseño Físico

Normalización

Documentación

Conclusiones

Recomendaciones

Page 4: Proyecto de Base de Datos

Introducción

• El trabajo que presentaremos a continuación tiene como objetivos principales hacer énfasis en las fases de diseño de una base de datos relacional y destacar la importancia que tienen estas etapas en la elaboración de una base de datos estructurada, cuya integridad podremos comprobar a través de las consultas que ejecutemos en ella.•El semestre pasado nos correspondió cursar la materia de Base de Datos, en donde se nos impartieron los principios de las bases de datos relacionales, las operaciones de álgebra, y la normalización a la que debe ser sometida cada relación que se haya formado.

Inicio

Page 5: Proyecto de Base de Datos

IntroducciónA través de un proyecto sencillo, hemos buscado clarificar cada etapa del diseño de base de datos y su desarrollo, es preciso destacar que debe seguirse cada paso sin pasarlo por alto, asegurando así que nuestra asociación de los datos sea bastante eficiente.

Luego de la experiencia de haber elaborado el proyecto anterior, hemos reedificado cada paso, analizando las fallas y proponiendo soluciones a nuestro sistema de base de datos. Esta dinámica nos permitirá desarrollar la destreza de identificar errores, relaciones redundantes, entre otras cosas

Inicio

Page 6: Proyecto de Base de Datos

Planteamiento del Semestre Anterior

En el curso de Base de Datos del semestre anterior se nos asignó realizar un proyecto final que consistiera en una base de datos que satisficiera una necesidad común y una interfaz gráfica que nos permitiera consultar información dentro de la base de datos (lenguaje de programación libre de elección) tampoco se exigió un SGBD específico, para ello trabajamos en grupos de cuatro estudiantes. El tema para nuestra base de datos era libre, cada grupo podía escoger que tipo de administración manejaría la base de datos.

Inicio

Page 7: Proyecto de Base de Datos

No se nos exigió visitar comercios o instituciones públicas o privadas para comprobar requerimientos del sistema.Entre los puntos que debíamos definir en nuestro proyecto final estaban los siguientes:

•Presentar el modelo relacional previo a la presentación.•Realizar una presentación del trabajo final que consistía en: la base de datos completa con datos y la realización de consultas SQL para comprobar su integridad.•Requería de los respectivos procesos de normalización (1FN-2FN-3FN), sin embargo, no se pidió detalle de cómo realizamos la misma en nuestra base de datos. Solamente hacerla sin evaluación.•Un trabajo escrito con los objetivos de dicho sistema, el diccionario de datos, algunas consultas de inserción en SQL, el modelo relacional.

Inicio

Page 8: Proyecto de Base de Datos

Requerimientos del Sistema

1.- ¿Qué es lo que se hace? El sistema de administración de labor social guarda información de los estudiantes que realizan labor social, sean estos datos personales o académicos, permite consultarlos y modificarlos en el momento necesario. Además incluye los datos de contacto de las instituciones que han sido asignadas como lugares propicios para realizar dicha labor.

Inicio

Page 9: Proyecto de Base de Datos

2.- ¿Cómo se hace? Cada una de estas funciones: guardar, consultar y modificar las realiza a través de un SGBD. Esta es capaz de adaptarse a diversas plataformas de sistemas operativos. Debe capacitarse al personal para que se encargue del mantenimiento periódico y manejo de este sistema, además cada facultad de la Universidad de Panamá debe contar con él. La interfaz que se diseñe en un futuro que conecte con esta base de datos debe ser lo suficientemente apropiada y de fácil uso para los colaboradores.

Inicio

Page 10: Proyecto de Base de Datos

3.- ¿Con que frecuencia se presenta? La frecuencia con la que se presenta la necesidad de realizar dichas funciones (almacenamiento, consulta y modificación) es baja actualmente ya que la resolución que declara la labor social obligatoria para todos los estudiantes de la Universidad de Panamá se da apenas el año pasado en 2010. Sin embargo, a medida que estos estudiantes inicien su labor social, será necesario documentar todo esto, y será mucho más fácil mediante una base de datos manejada a través de una aplicación, a la vez que el tiempo que la demanda sea baja permitirá a la vez someter el sistema a pruebas constantes y concordar con el personal que se encargará de manejarlos qué tipo de cosas les gustaría que la aplicación manejara.

Inicio

Page 11: Proyecto de Base de Datos

4.- ¿Qué tan grande es el volumen de transacciones o de decisiones? El volumen de decisiones que contemplará la aplicación no es grande, pues las funciones principales como almacenamiento, por ejemplo, solo requieren que el estudiante proporcione dichos datos. La consulta permitirá visualizar el avance que cada estudiante lleva en su labor social, de acuerdo a este se evaluará si este requisito para graduarse ha sido completado, de lo contrario deberá completarlo. La modificación de información permitirá depurar errores humanos al ingresar los datos de algún estudiante, por supuesto, este proceso debe ser constatado con pruebas reales.

Inicio

Page 12: Proyecto de Base de Datos

5.- ¿Cuál es el grado de eficiencia con el que se efectúan las tareas? El grado de eficiencia con que se realizan las tareas actualmente no es el mayor ya que se maneja a través de un sistema de archivos, y hemos constatado que este carece de integridad.

6.- ¿Existe algún problema? El problema actual es que manejar esta información de manera manual sería una tarea sumamente tediosa, complicada, sujeta a pérdida y alteración de los datos manejados.

7.- Si existe un problema, ¿Qué tan serio es? Este problema en escala de prioridades es serio porque realizar la labor social representa para los estudiantes que ingresaron a partir del 2010 un requisito para obtener su diploma, por ello es que surge la necesidad de documentar esta información en el momento necesario y para futuras consultas.

8.- Si existe un problema, ¿Cuál es la causa que lo origina? El problema de manejar información manualmente son las consecuencias que esta actividad trae, pérdida de información, alteración de documentos, entre otras.

Inicio

Page 13: Proyecto de Base de Datos

¿Qué hicimos el semestre pasado?

Plantear el modelo relacional previo a la presentación final:

Inicio

Page 14: Proyecto de Base de Datos

modelo relacional anterior

Inicio

Page 15: Proyecto de Base de Datos

Base de Datos completa con datos y consultas SQL

Inicio

Page 16: Proyecto de Base de Datos

CREATE TABLE INFO_PERSONAL(IDEN CHAR(18) NOT NULL,NOMBRE VARCHAR(45) NOT NULL,SEG_NOMBRE VARCHAR(45) NULL,APELLIDO VARCHAR(45) NOT NULL,SEG_APELLIDO VARCHAR(45) NULL,TEL_RESIDEN VARCHAR(25) NULL,TEL_CELL VARCHAR(20) NULL,EMAIL VARCHAR(65) NOT NULLPRIMARY KEY(IDEN));

CREATE TABLE INFO_URGENCIA(IDEN CHAR(18) NOT NULL,TIPO_SANGRE VARCHAR(45) NOT NULL,PARENTEZCO VARCHAR(45) NULL,ACUDIENTE VARCHAR(45) NOT NULL,TEL_ACUDIENTE VARCHAR(45) NULL,ENFERMEDADES VARCHAR(25) NULL,FOREIGN KEY (IDEN) REFERENCES INFO_PERSONAL (IDEN));

Algunas sentencias SQL de creación e inserción de datos

Inicio

Page 17: Proyecto de Base de Datos

INSERT INTO INFO_ACADEMICA VALUES (‘8-837-1611’ , ‘FIEC’ , ‘INFORMATICA’ , ‘15/FEB/10’);INSERT INTO INFO_ACADEMICA VALUES (‘8-818-215’ , ‘FIEC’ , ‘INFORMATICA’ , ‘10/ENE/10’);INSERT INTO INFO_ACADEMICA VALUES (‘8-630-208’ , ‘FIEC’ , ‘INFORMATICA’ , ‘01/JUL/12’);INSERT INTO INFO_ACADEMICA VALUES (‘8-878-645’ , ‘FIEC’ , ‘INFORMATICA’ , ‘23/DEC/11’);

INSERT INTO INFO_LABORSOCIAL VALUES (‘8-837-1611’ , ‘CASA DE JUBILADOS’ , ‘100’ , ‘15/FEB/2010’ , ‘16/MAR/2010’ );INSERT INTO INFO_LABORSOCIAL VALUES (‘8-298-551’ , ‘CASA ESPERANZA’ , ‘100’ , ‘15/OCT/2010’ , ‘16/FEB/2010’ );INSERT INTO INFO_LABORSOCIAL VALUES (‘8-877-2107’ , ‘HACIENDA DE AMOR’ , ‘11’ , ‘20/FEB/2010’ , ‘28/OCT/2010’ );INSERT INTO INFO_LABORSOCIAL VALUES (‘4-592-23641’ , ‘ESCUELA BUEN PASTOR’ , ‘26’ , ‘28/MAY/2010’ , ‘30/NOV/2011’ );

Inicio

Page 18: Proyecto de Base de Datos

Resumen del trabajo anteriorA principios del año 2010 se aprobó en Consejo Universitario la realización de Labor o Servicio Social por parte de todos los estudiantes que ingresen desde la fecha de publicación en Gaceta Oficial (Marzo – Mayo de 2010) en adelante.De aquí nace la necesidad de llevar un Control Interno de todos los Servicios Sociales que realicen los estudiantes de la Facultad de Informática, Electrónica y Comunicación, por medio de sus respectivas Escuelas.En el siguiente proyecto utilizaremos los recursos aprendidos en clases sobre las bases de datos, para resolver esta necesidad dentro de nuestra propia Facultad.

Inicio

Page 19: Proyecto de Base de Datos

De aquí, que los objetivos generales de nuestro proyecto son:

•Facilitar a los administrativos de la Facultad el tratamiento del tema de Labor Social.•Facilitar a los estudiantes el registro de sus horas de Labor Social.•Implementar este Sistema permanentemente en esta y en todas las demás Facultades que así lo necesiten para el Registro de sus estudiantes.

Inicio

Page 20: Proyecto de Base de Datos

La tabla info_personal recoge toda la información personal del estudiante

Atributo Descripción Restricciones

Iden Cédula del estudiante Primary key (PK), not null

Nombre Primer nombre del estudiante No nulo

Seg_nombre Segundo nombre del estudiante No nulo

Apellido Primer apellido del estudiante No nulo

Seg_apellido Segundo apellido del estudiante No nulo

Tel_residen Teléfono de residencia del estudiante No nulo

Tel_cell Teléfono celular del estudiante No nulo

email Correo electrónico del estudiante No nulo

Diccionario de Datos

Inicio

Page 21: Proyecto de Base de Datos

La tabla info_académica recoge toda la información académica del estudiante (en qué facultad estudia y su fecha de ingreso a la carrera)

Atributo Descripción Restricciones

Iden Cédula del estudiante Foreign key (FK) referencia a info_personal(iden), not null

Facultad Nombre de la facultad del estudiante

No nulo

Carrera Carrera que cursa el estudiante

No nulo

Fecha_ingreso Fecha de ingreso del estudiante

No nulo

Inicio

Page 22: Proyecto de Base de Datos

La tabla info_urgencia recoge toda la información de contacto del responsable del estudiante, en caso de urgencia

Atributo Descripción Restricciones

Iden Cédula del estudiante Foreign key (FK) referencia a info_personal(iden), not null

Tipo_sangre Tipo de sangre del estudiante No nulo

Parentesco Parentesco que tiene con el estudiante No nulo

Acudiente Nombre del acudiente No nulo

Tel_acudiente Teléfono de contacto del acudiente No nulo

enfermedades

Campo donde se nombra si el estudiante padece alguna enfermedad o es alérgico a algún alimento,

medicina u otro

No nulo

Inicio

Page 23: Proyecto de Base de Datos

La tabla info_urgencia recoge toda la información de contacto del responsable del estudiante, en caso de urgencia

Atributo Descripción Restricciones

Iden Cédula del estudiante Foreign key (FK) referencia a info_personal(iden), not null

Tipo_sangre Tipo de sangre del estudiante No nulo

Parentesco Parentesco que tiene con el estudiante No nulo

Acudiente Nombre del acudiente No nulo

Tel_acudiente Teléfono de contacto del acudiente No nulo

enfermedades Campo donde se nombra si el estudiante padece alguna enfermedad o es alérgico a algún alimento,

medicina u otro

No nulo

Inicio

Page 24: Proyecto de Base de Datos

La tabla info_laborsocial recoge toda la información relativa a la realización de su Labor Social

Atributo Descripción Restricciones

Iden Cédula del estudiante Foreign key (FK) referencia a info_personal(iden), not null

horas Cantidad de horas que se obtendrán por el Servicio Social

No nulo

Fecha_ini Fecha de inicio del Servicio Social No nulo

Fecha_fin Fecha de Cierre del Servicio Social No nulo

Id_lugar Código de lugar sea: orfanato, asilo, comedor, escuela, indicando el nombre de institución.

Primary Key (PK), not null

Id_tipo Código de tipo de lugar (categorías) Primary Key (PK), not null

Inicio

Page 25: Proyecto de Base de Datos

¿Qué hizo falta?La Base de Datos de Control de Horas de Labor Social requería de información de contacto con los lugares donde se realiza la Labor Social, permitiendo de alguna manera comprobar que en efecto el estudiante estuvo allí y realizo su trabajo.

Para realizar todo este proceso de cambio de la base de datos necesitamos definir cada una de las etapas de diseño de base de datos que conforman el modelo relacional, ya que la estructura se modifica por completo.

Cada una de estas fases no se realizaron en el proceso anterior por lo tanto, la redefinición de cada una de las relaciones que conforman esta pequeña base de datos nos permitirán comprobar si en efecto contaba con las fases de normalización requeridas.

Inicio

Page 26: Proyecto de Base de Datos

¿Qué se agregó?Antes que nada, iniciamos con las etapas de diseño de base de datos. Primero, el diseño conceptual de nuestras entidades involucradas.

Inicio

Page 27: Proyecto de Base de Datos

DISEÑO CONCEPTUAL

Inicio

Page 28: Proyecto de Base de Datos

Entidades IdentificadasInfo_personal

Info_laborsocial

Info_lugares

Info_academica

Info_urgencia

Info_tipos

Info_tipos e info_lugares tendrá información referente a los lugares donde se hace la labor social, han sido añadidas.

Inicio

Page 29: Proyecto de Base de Datos

Info_tiposInfo_academica

Info_laborsocial

Info_urgencia

Info_lugares

Info_personal

Se clasifican

Realiza

contiene

Pueden tener

Tiene

Inicio

Page 30: Proyecto de Base de Datos

Info_personal

iden

nombre

seg_nombre

apellido

seg_apellido

cedula

dirección

tel_resid

tel_cel

e_mailInfo_urgencia

Iden

Tipo_sangre

Parentezco

acudiente

Tel_acudiente

enfermedades

Info_academica

iden

Facultad

Carrera

Fecha_ingreso

Total_horas

Pueden tener

Tiene

Info_laborsocial

iden

Lugar

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

Realiza

Inicio

Page 31: Proyecto de Base de Datos

Info_lugares

Id_lugar

Nombre

dirección

teléfono

Id_tipo

Info_laborsocial

iden

Lugar

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

Info_tipos

Id_tipo

Tipos

Se clasifican

contiene

Inicio

Page 32: Proyecto de Base de Datos

Info_personal

Iden

Nombre

seg_nombre

Apellido

seg_apellido

Cedula

Dirección

tel_resid

tel_cel

e_mailInfo_urgencia

iden

Tipo_sangre

Parentezco

acudiente

Tel_acudiente

enfermedades

Info_academica

iden

Facultad

Carrera

Fecha_ingreso

Total_horas

Pueden tener

Tiene

Info_laborsocial

iden

Lugar

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

Realiza

Claves primarias

Claves foráneas

Inicio

Page 33: Proyecto de Base de Datos

Info_lugares

Id_lugar

Nombre

dirección

teléfono

id_tipo

Info_laborsocial

iden

Lugar

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

Info_tipos

Id_tipo

Tipos

Se clasifican

contiene

Claves primarias

Claves foráneas

Inicio

Page 34: Proyecto de Base de Datos

DISEÑO LOGICO

Inicio

Page 35: Proyecto de Base de Datos

MODELO RELACIONAL

Existen tres reglas básicas para convertir un modelo conceptual al modelo relacional, éstas son:1.Todo tipo de entidad se convierte en una relación.

Inicio

Page 36: Proyecto de Base de Datos

Info_personal

IDEN NOMBRE SEG_NOMBRE APELLIDO SEG_APELLIDO CEDULA TEL_RESID TEL_CEL E_MAIL

Inicio

Page 37: Proyecto de Base de Datos

2. Todo tipo de interrelación n:n se transforma en una relación.En este caso, no existen relaciones n:n

Inicio

Page 38: Proyecto de Base de Datos

3. Para todo tipo de interrelación 1:n se realiza lo que se denomina propagación de clave (regla general),o se crea una nueva relación.

Inicio

Page 39: Proyecto de Base de Datos

Info_academica

Info_personal

Tiene

Modelo Relacional

Info_personal (iden)Info_academica (iden)

Inicio

Page 40: Proyecto de Base de Datos

Info_urgencia

Info_personal

Pueden tener

Modelo Relacional

Info_personal (iden)Info_urgencia (iden)

Inicio

Page 41: Proyecto de Base de Datos

Info_laborsocial

Info_personal

Realiza

Modelo Relacional

Info_personal (iden)Info_laborsocial (iden)

Inicio

Page 42: Proyecto de Base de Datos

Info_laborsocial

Info_lugares

contiene

Modelo Relacional

Info_laborsocial (iden, id_lugar)Info_lugares (id_lugar, id_tipo)

Inicio

Page 43: Proyecto de Base de Datos

Info_tipos

Info_lugares

Se clasifican

Modelo Relacional

Info_lugares (id_lugar, id_tipo)Info_tipos (id_tipo)

Inicio

Page 44: Proyecto de Base de Datos

Diseño Lógico: modelo relacional actual

Inicio

Page 45: Proyecto de Base de Datos

DISEÑO FÍSICO: QUERIES

Utilizaremos un SGBD para implementar el diseño lógico y este será el diseño

físico, el mismo ha sido modificado ya que agregamos dos tablas

Inicio

Page 46: Proyecto de Base de Datos

CREATE TABLE `info_lugares` ( `id_lugar` int(11) NOT NULL AUTO_INCREMENT, `nombre` varchar(45) NOT NULL, `dirección` varchar(45) NOT NULL, `teléfono` varchar(45) NOT NULL, `info_tipos_idinfo_tipos` int(11) NOT NULL, PRIMARY KEY (`id_lugar`,`info_tipos_idinfo_tipos`), KEY `fk_info_lugares_info_tipos1` (`info_tipos_idinfo_tipos`), CONSTRAINT `fk_info_lugares_info_tipos1` FOREIGN KEY (`info_tipos_idinfo_tipos`) REFERENCES `info_tipos` (`idinfo_tipos`) ON DELETE NO ACTION ON UPDATE NO ACTION)

CREATE TABLE `info_tipos` ( `idinfo_tipos` int(11) NOT NULL AUTO_INCREMENT, `tipo` varchar(45) NOT NULL, PRIMARY KEY (`idinfo_tipos`))

Inicio

Page 47: Proyecto de Base de Datos

NORMALIZACIÓN

Inicio

Page 48: Proyecto de Base de Datos

Primera forma normal

• Eliminar grupos repetidos en tablas individuales.• Crear una tabla diferente para cada conjunto de datos relacionados.• Identificar cada conjunto de datos relacionados mediante una clave principal. No utilizar varios campos en una única tabla para almacenar datos similares.

Inicio

Page 49: Proyecto de Base de Datos

Crear una tabla diferente para cada conjunto de datos relacionados.

Info_academica

iden

Facultad

Carrera

Fecha_ingreso

Total_horas

1. El atributo total_horas es información relativa a la labor social más no a la información académica. Se elimina

Info_laborsocial

iden

Lugar

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

2. El atributo lugar corresponde a la información de lugares donde se realiza la laborsocial, se elimina ya que se identificara mediante codigo de lugar.

Inicio

Page 50: Proyecto de Base de Datos

Identificar cada conjunto de datos relacionados mediante una clave principal. No utilizar varios campos en una única tabla para

almacenar datos similares.Info_personal

iden

nombre

seg_nombre

apellido

seg_apellido

cedula

dirección

tel_resid

tel_cel

e_mail

3. La tabla info_personal contiene dos códigos como clave, lo cual es innecesario, para esto eliminamos cedula, y el campo iden tendrá este dato, y servirá de clave principal única.

Inicio

Page 51: Proyecto de Base de Datos

Info_academica

iden

Facultad

Carrera

Fecha_ingreso

Info_laborsocial

iden

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

Info_personaliden

nombre

seg_nombre

apellido

seg_apellido

dirección

tel_resid

tel_cel

e_mail

1, 2, 3. así quedan las tablas

Inicio

Page 52: Proyecto de Base de Datos

Segunda forma normal

• Crear tablas independientes para conjuntos de valores que se apliquen a varios registros.• Relacionar dichas tablas mediante una clave externa.Los registros tan sólo deben depender de la clave principal de una tabla (si es necesario, puede ser una clave compuesta).

Inicio

Page 53: Proyecto de Base de Datos

Todos los atributos que no son clave principal deben depender únicamente de la clave principal

Info_laborsocial

iden

Lugar

Horas

Fecha_i

Fecha_f

Id_lugar

Id_tipo

Info_lugares

Id_lugar

Nombre

dirección

teléfono

Id_tipos

Info_tipos

Id_tipo

Tipos

Ejemplo: en la tabla lugares el nombre, dirección y teléfono dependen del código de lugar y de tipo de lugar a la hora de realizar una consulta SQL.

Inicio

Page 54: Proyecto de Base de Datos

Tercera forma normal

• Eliminar los campos que no dependan de la clave. Los valores de un registro que no forman parte de la clave de dicho registro no pertenecen a esa tabla. En general, siempre que el contenido de un grupo de campos se puede aplicar a más de un registro de la tabla, debe tener en cuenta la posibilidad de incluir dichos campos en una tabla independiente.• EXCEPCIÓN: No es práctico siempre cumplir la forma tercera normal teóricamente conveniente. Si tiene una tabla Clientes y desea eliminar todas las posibles dependencias entre campos, debe crear tablas independientes para ciudades, códigos postales, representantes de ventas, clases de clientes y cualquier otro factor que pueda aparecer duplicado en varios registros. En teoría, la normalización merece la pena. Sin embargo, la utilización de un gran número de tablas pequeñas puede perjudicar el rendimiento o superar la capacidad de memoria y de archivos abiertos del sistema.

Inicio

Page 55: Proyecto de Base de Datos

Después de normalizar

Inicio

Page 56: Proyecto de Base de Datos

DOCUMENTACIÓN

Inicio

Page 57: Proyecto de Base de Datos

•El sistema de base de datos de los estudiantes que realizan labor social almacena información personal, académica y relacionada a la labor social particular de cada uno.

•La base de datos cuenta con datos de los estudiantes actualizados que pueden ser consultados mediante sentencias SQL, además pueden aplicársele modificaciones de ser necesario.

•La base de datos realiza todo esto ya que se presenta la necesidad dentro de la Universidad de Panamá de llevar un registro eficiente de toda esta actividad y facilitar el proceso de recolección de requisitos para los estudiantes graduandos

•De esta base de datos de labor social primero se elaboraron los correspondientes modelos E-R y relacional a través del SGBD de MySQL “MySQL Workbench que también nos sirvió para crear posteriormente la base de datos.

Inicio

Page 58: Proyecto de Base de Datos

•Previo a todo lo anterior mencionado se había creado una base de datos similar en la que se manejaron detalles de los estudiantes y su labor social, mas no se tomó en cuenta las instituciones involucradas en la actividad de labor social. Además la base de datos contaba con una aplicación sencilla que permitía ingresar nuevos datos y consultarlos, sin embargo por circunstancias inesperadas actualmente no contamos con ella.•En este momento, contamos con una nueva base de datos que incluye los detalles obviados en el análisis anterior

Inicio

Page 59: Proyecto de Base de Datos

ConclusionesLuego de realizar un trabajo previo sobre base de datos, contando con los conocimientos que se nos brindaron en el curso de base de datos, nos pudimos percatar de que no seguimos las etapas de diseño de una base de datos relacional; no elaboramos un diseño conceptual previo, además nuestro diseño lógico estuvo incompleto, porque solamente elaboramos el modelo relacional obviando las relaciones 1:n y n:n entre las entidades.

Nuestro diseño físico que consta de las consultas necesarias para insertar datos, modificarlos y borrarlos si se realizaron en nuestro proyecto, partiendo del modelo relacional, sin embargo, quedaron muchos vacíos sin llenar porque la normalización requerida no fue aplicada a nuestro primer modelo relacional. Nuestros conocimientos previos sobre normalización de base de datos relacionales aún estaban pobres.

Inicio

Page 60: Proyecto de Base de Datos

Conclusiones

Una vez que lidiamos con otras experiencias como el proyecto de “Facturación” hemos podido afianzar en qué consiste el proceso de normalización, y de esta manera hemos podido avanzar aplicando las 3 primeras formas normales a nuestro nuevo modelo relacional, cuya estructura fue modificada debido a que había información que no había sido considerada para nuestro modelo anterior.

Inicio

Page 61: Proyecto de Base de Datos

Recomendaciones•Se recomienda a todos los estudiantes de cursos como el de base de datos y análisis y diseño de sistemas que a la hora de elaborar proyectos o tareas relacionadas, tomen en cuenta lo siguiente:

•El modelo relacional permite obtener una base de datos libre de redundancias y óptima a través del proceso de normalización.

•Es propicio seguir cada paso en el diseño de datos de una base de datos relacional: diseño conceptual, diseño lógico, diseño físico.

•Una vez efectuados cada uno de los pases de cada diseño, elaborar entonces el modelo Entidad-Relación (E-R) y el modelo relacional, ya sea a mano o con una herramienta que facilite confeccionar estos diagramas

Inicio

Page 62: Proyecto de Base de Datos

Recomendaciones

•Cuando se hayan pasado cada una de estas etapas, entonces realizaremos el proceso de normalización (1FN-FN-3FN) tomando en cuenta conceptos como la dependencia funcional.

•Tomemos en cuenta las características con las que cuenta una base de datos normalizadas, una vez hecho esto, podremos entonces elaborar una interfaz gráfica en alguno de los lenguajes de programación conocidos hasta ahora para conectar nuestra base de datos y consultar datos más rápido de manera eficiente.

Inicio