Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Trabajo Práctico: Base de Datos (311) - Universidad Nacional Abierta, Exámenes de Programación de Bases de Datos

311 base de datos modelo respuesta

Tipo: Exámenes

Antes del 2010

Subido el 25/09/2021

guillermo-zavarce
guillermo-zavarce 🇻🇪

5

(5)

3 documentos

1 / 19

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
UNIVERSIDAD NACIONAL ABIERTA
AREA DE INGENIERIA
CARRERA INGENIERIA DE SISTEMAS
TRABAJO PRÁCTICO:
ASIGATURA: BASE DE DATOS
CÓDIGO: 311
FECHA DE ETREGA DE LAS ESPECIFICACIOES AL ESTUDIATE:
Adjunto a la Primera Prueba Parcial
FECHA DE DEVOLUCIÓ DEL IFORME POR EL ESTUDIATE:
Adjunto a la Prueba Integral
CETRO LOCAL: (06) BOLIVAR
CARRERA: 236
ÚMERO DE ORIGIALES:
FIRMA DEL ESTUDIATE:
LAPSO: 2006/1
1 UTILICE ESTA MISMA PÁGIA COMO
1.1 CARÁTULA DE SU TAREA O TRABAJO
RESULTADOS DE LA CORRECCIÓN:
1.1.1.1.1.1.1
OBJ.
°
1 2 3 4 5 6 7 8 9 10 11 12 13
0:L 1:L
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13

Vista previa parcial del texto

¡Descarga Trabajo Práctico: Base de Datos (311) - Universidad Nacional Abierta y más Exámenes en PDF de Programación de Bases de Datos solo en Docsity!

UNIVERSIDAD NACIONAL ABIERTA

AREA DE INGENIERIA

CARRERA INGENIERIA DE SISTEMAS

TRABAJO PRÁCTICO:

ASIGATURA: BASE DE DATOS

CÓDIGO: 311

FECHA DE ETREGA DE LAS ESPECIFICACIOES AL ESTUDIATE:

Adjunto a la Primera Prueba Parcial

FECHA DE DEVOLUCIÓ DEL IFORME POR EL ESTUDIATE:

Adjunto a la Prueba Integral

CETRO LOCAL: (06) BOLIVAR

CARRERA: 236

ÚMERO DE ORIGIALES:

FIRMA DEL ESTUDIATE:

LAPSO: 2006/

1 UTILICE ESTA MISMA PÁGIA COMO

1.1 CARÁTULA DE SU TAREA O TRABAJO

RESULTADOS DE LA CORRECCIÓN:

1.1.1.1.1.1.1 OBJ.

0:L 1:L

INTRODUCCION

Una base de datos relacional es una base de datos basada en un modelo relacional. Estrictamente hablando el término se refiere a una colección específica de datos pero a menudo es usado como sinónimo del software usado para gestionar esa colección de datos. Ese software se conoce como sistema gestor de base de datos relacional o RDBMS (Relational Database Management System).

El proceso de diseño de una base de datos se descompone en cuatro etapas: obtención y análisis de requisitos, diseño conceptual, lógico y físico. La etapa del diseño lógico es independiente de los detalles de implementación y dependiente del tipo de SGBD que se vaya a utilizar. La salida de esta etapa es el esquema lógico global y la documentación que lo describe. Todo ello es la entrada para la etapa que viene a continuación, el diseño físico.

Mientras que en el diseño lógico se especifica qué se guarda, en el diseño físico se especifica cómo se guarda. Para ello, el diseñador debe conocer muy bien toda la funcionalidad del SGBD concreto que se vaya a utilizar y también el sistema informático sobre el que éste va a trabajar. El diseño físico no es una etapa aislada, ya que algunas decisiones que se tomen durante su desarrollo, por ejemplo para mejorar las prestaciones, pueden provocar una reestructuración del esquema lógico.

En general, el objetivo del diseño de una base de datos relacional es generar un conjunto de esquemas de relaciones que permitan almacenar la información con un mínimo de redundancia, pero que a la vez faciliten la recuperación de la información. Una de las técnicas para lograrlo consiste en diseñar esquemas que tengan una forma normal adecuada. Para determinar si un esquema de relaciones tiene una de las formas normales se requiere mayor información sobre la empresa del "mundo real" que se intenta modelar con la base de datos. La información adicional la proporciona una serie de limitantes que se denominan dependencias de los datos.

MENU

INCLUIR ACTUALIZAR CONSULTAS REPORTES SALIR

El DCAS requiere llevar el control de sus servicios en el menú de opciones de la siguiente manera:

 Registrar un nuevo analista que entrará a formar parte del personal del DCAS.  Incluir un nuevo empleado a la base de datos del sistema, donde se registrarán los datos personales y los datos originados por la empresa.  Ingresar una falla de un equipo, descripción de la misma falla, posible solución de ésta y el nombre del analista que verificó la falla  Ubicar un nuevo usuario o reubicarlo dentro de la empresa INGEGER o el DCAS.  Incluir la ubicación actualizada de los equipos con sus características, asignados a los nuevos usuarios.  Actualizar: a) La ubicación de los analista dentro del sistema. b) Los datos de la ubicación del usuario dentro de la empresa o el DCAS. c) La reubicación de un usuario a otro departamento o en la empresa. d) El registro de la ubicación y característica del equipo asignado a un usuario dentro de la empresa.  Consultar los datos de los empleados con relación a la ubicación actual dentro de la empresa.  Verificar cuales son los equipos asignados y los equipos que han sido desincorporados a los distintos usuarios y la ubicación actualizada de estos equipos.  Verificar por parte de los analistas de sistemas de control de falla, el tipo de falla y la solución dada al problema planteado.  Generar un reporte con la información diaria sobre las actividades que desempeñan los analistas de sistemas dentro de la empresa.  Generar reporte donde se muestre la ocurrencia de un usuario ante la presencia de un problema con su equipo.

1. LA OBTENCION Y ANALISIS DE LOS REQUISITOS.

En esta fase se trata de conocer las expectativas del usuario sobre la base de datos. Para ello, se identifican los grupos de usuarios reales y posibles y las áreas de aplicación, se revisa la documentación existente, se analiza el entorno operativo y los requerimientos de procesado, y se realizan entrevistas y cuestionarios con los usuarios. Para todo ello existen técnicas formalizadas de especificación de requerimientos.

Los diseñadores entrevistan a los futuros usuarios de la base de datos para recoger y documentar sus necesidades de información. En paralelo, conviene definir los requerimientos funcionales que consisten en operaciones (transacciones) que se aplicarán a la base de datos, e incluyen la obtención de datos y la actualización.

Después de varias reuniones de trabajo en grupos se determino lo siguiente:

REQUISITOS DE USUARIOS:

Los usuarios finales indicaron que se requería la facilidad de notificar los equipos con fallas y el conocer el status del equipo en cualquier momento.

Los usuarios expertos (Analistas del DCAS) requieren de la seguridad de que solo ellos pueden incorporar, desincorporar, y registrar soluciones de fallas.

La GERENCIA requiere de la posibilidad de evaluar el rendimiento de los analistas del DCAS, así como conocer el inventario de equipos para su control contable.

REQUISITOS FUNCIONALES :

Los usuarios finales ingresan notificación de equipos con fallas y consultan datos de equipos.

Los usuarios expertos ingresan, consultan, modifican y eliminan datos de equipos, usuarios, y empleados.

Las gerencia solo puede emitir consultas de datos.

DICCIONARIO DE DATOS

ENTIDADES

ATRIBUTOS

TIPO

DOMINIO

RELACIONADO A

CARDINALIDAD

CLAVES

USUARIOS

CI_USUARIO

NUMERICO

0

EMPLEADOS

1:

CI_USUARIO

CLAVE_USUARIO

CARÁCTER

6 DIGITOS

FALLAS_CONTROL

1:M

CLAVE_USUARIO

ANAL_DCAS_USUARIO

CARÁCTER

SI O NO

EMPLEADOS

CEDULA_EMPL

NUMERICO

0

USUARIOS

1:

CEDULA_EMPL

APELLIDO_EMPL

CARÁCTER

NO VACIO

FALLAS_CONTROL

1:M

NOMBRE_EMPL

CARÁCTER

NO VACIO

DEPTO_UBICACIÓN

1:M

FECHA_INGR_EMPL

FECHA

NO VACIO

CARGO_EMPL

CARÁCTER

NO VACIO

DEPTO_EMPL

CARÁCTER

NO VACIO

EQUIPOS

CODIGO_EQUIPO

CARÁCTER

NO VACIO

EQUIPO_INVENT

1:M

CODIGO_EQUIPO

DESCRIPCION_EQUIPO

CARÁCTER

NO VACIO

FALLAS_CONTROL

M:M

STATUS_EQUIPO

CARÁCTER

A,D,L

DEPTO_EQUIPO

CARÁCTER

NO VACIO

CI_USUARIO_EQUIPO

NUMERICO

0

DEPTO_UBICACION

CODIGO_DEPTO

CARÁCTER

NO VACIO

EMPLEADOS

M:

CODIGO_DEPTO

DESCRIPCION_DEPTO

CARÁCTER

NO VACIO

EMP_INT_DEPTO

CARÁCTER

E,I

EQUIPO_INVENT

COD_EQUIPO_EQUINV

CARÁCTER

NO VACIO

EQUIPOS

M:M

COD_EQUIPO_EQUINV

COD_INVHS_EQUINV

CARÁCTER

NO VACIO

COD_INVHS_EQUINV

CANTIDAD_EQUINV

NUMERICO

= 0

SERIAL_EQUINV

CARÁCTER

NO VACIO

INVENTARIO_HARD_SOFT

CODIGO_INVENTHS

CARÁCTER

NO VACIO

EQUIPO_INVENT

M:M

CODIGO_INVENTHS

DESCRIPCION_INVENTHS

CARÁCTER

NO VACIO

PROVEEDOR_INVENTHS

CARÁCTER

NO VACIO

INDICADOR_INVENTHS

CARÁCTER

H,S

FALLAS

CODIGO_FALLA

CARÁCTER

NO VACIO

FALLAS_CONTROL

1:M

CODIGO_FALLA

DESCRIPCION_FALLA

CARÁCTER

NO VACIO

SOLUCION_FALLA

CARÁCTER

NO VACIO

FALLAS_CONTROL

CI_USUAR_FALLACTRL

NUMERICO

0

USUARIOS

M:

CI_USUAR_FALLACTRL

COD_FALLA_FALLACTRL

CARÁCTER

NO VACIO

EMPLEADOS

M:

COD_FALLA_FALLACTRL

FECHA_NOTIF_FALLACTRL

CARÁCTER

NO VACIO

EQUIPOS

M:

CI_ANAL_FALLACTRL

NUMERICO

0

FALLAS

M:

FECHA_VERIF_FALLACTRL

CARÁCTER

PERMITE VACIO

STATUS_FALLACTRL

CARÁCTER

N,R,I

3. LA ELECCION DE UN SISTEMA DE GESTION DE BASE DE DATOS

RELACIONAL (SGBDR).

Se selecciono el SGBDR: Microsoft SQLServer 2000.

Para efectuar la elección del SGBDR se consideraron los siguientes costos:

- Costo de adquisición de software: La empresa ya cuenta con una licencia de Microsoft SQLServer 2000 por lo tanto no es necesario una nueva adquisición.

  • Costo de mantenimiento: Los service packs son gratis y están disponible a través de Internet. - Costo de Creación y Conversión de la base de datos: Como estamos partiendo de una creación nueva desde cero, estos costos generalmente se subestiman.
  • Costo de Personal: El personal de sistemas que actualmente mantiene y opera los otros sistemas administrativos ya están capacitados en el uso y mantenimiento del SGBDR, y se verifico que ya existe un Administrador de base de datos (ABD).
  • Costo de Entrenamiento: La empresa ya incurrió en estos costos durante la implantación de otros sistemas que están en uso actualmente.

También se evaluaron otros factores, tales como :

- Familiaridad del personal con el sistema: El sistema operativo que esta instalado en todos los equipos de la empresa es Windows, asiendo que sea muy sencillo operar un producto de la misma familia. - Disponibilidad de servicios del proveedor: Se constato que el proveedor tiene varios representantes autorizados en la zona y los cuales están certificados en el SGBDR.

Este SGBDR cuenta con herramientas de diseño graficas, capacidades para ser empleado en aplicaciones Web, herramientas de monitoreo de transacciones, adicionalmente también cuenta con utilidades para respaldo y recuperación de la base de datos.

4. EL DISEÑO LOGICO DE LA BASE DE DATOS.

El resultado de esta fase debe consistir en sentencias DDL escritas en el lenguaje del SGBDR elegido que especifiquen los esquemas en el nivel conceptual externo del sistema de base de datos.

SENTENCIAS DDL:

CREATE TABLE [DEPTO_UBICACION] ( [CODI _DEPTO] [char] (10) , [DESCRIPCION_DEPTO] [char] (10) , [EMP_INT_DEPTO] [char] (1) )

CREATE TABLE [EMPLEADOS] ( [CEDULA_EMPL] [int] , [APELLIDO_EMPL] [char] (30) , [NOMBRE_EMPL] [char] (30) , [FECHA_EMPL] [char] (10) , [CAR _EMPL] [char] (30) , [DEPTO_EMPL] [char] (6) )

CREATE TABLE [EQUIPO_INVENT] (

[COD_EQUIPO_INVHS] [char] (10) , [COD_INVENT_INVHS] [char] (10) , [CANTIDAD_INVHS] [int] , [SERIAL_INVHS] [char] (10) )

CREATE TABLE [EQUIPOS] (

[CODI _EQUIPO] [char] (10) , [DESCRIPCION_EQUIPO] [char] (40) , [STATUS_EQUIPO] [char] (1) , [DEPTO_EQUIPO] [char] (6) , [CI_USUARIO_EQUIPO] [int] )

CREATE TABLE [FALLAS] (

[CODI _FALLA] [char] (10) , [DESCRIPCION_FALLA] [char] (50) , [SOLUCION_FALLA] [char] (50) )

CREATE TABLE [FALLAS_CONTROL] (

[CI_USUAR_FALLACTRL] [int] , [COD_FALLA_FALLACTRL] [char] (10) ,

5. EL DISEÑO FISICO DE LA BASE DE DATOS.

Para el diseño físico de la base datos se siguió la siguiente metodología:

  1. Traducir el esquema lógico global para el SGBD específico.
    • Diseñar las relaciones base para el SGBD específico.
    • Diseñar las reglas de negocio para el SGBD específico.
  2. Diseñar la representación física.
    • Analizar las transacciones.
    • Escoger las organizaciones de archivo.
    • Escoger los índices secundarios.
    • Considerar la introducción de redundancias controladas.
    • Estimar la necesidad de espacio en disco.
  3. Diseñar los mecanismos de seguridad.
    • Diseñar las vistas de los usuarios.
    • Diseñar las reglas de acceso.

Al aplicar esta metodología se creo el Esquema implementado en MS- SQLSERVER2000 siguiente:

SENTENCIAS DDL DEFINITIVAS:

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_EMPLEADOS_DEPTO_UBICACION]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[EMPLEADOS] DROP CONSTRAINT FK_EMPLEADOS_DEPTO_UBICACION GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_FALLAS_CONTROL_EMPLEADOS]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[FALLAS_CONTROL] DROP CONSTRAINT FK_FALLAS_CONTROL_EMPLEADOS GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_EQUIPO_INVENT_EQUIPOS]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[EQUIPO_INVENT] DROP CONSTRAINT FK_EQUIPO_INVENT_EQUIPOS GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_FALLAS_CONTROL_EQUIPOS]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[FALLAS_CONTROL] DROP CONSTRAINT FK_FALLAS_CONTROL_EQUIPOS GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_FALLAS_CONTROL_FALLAS]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[FALLAS_CONTROL] DROP CONSTRAINT FK_FALLAS_CONTROL_FALLAS GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_EQUIPO_INVENT_INVENTARIO_HARD_SOFT]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1) ALTER TABLE [dbo].[EQUIPO_INVENT] DROP CONSTRAINT FK_EQUIPO_INVENT_INVENTARIO_HARD_SOFT GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_EMPLEADOS_USUARIOS]') and OBJECTPROPERTY(id,

object_id(N'[dbo].[INVENTARIO_HARD_SOFT]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[INVENTARIO_HARD_SOFT] GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[USUARIOS]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[USUARIOS] GO

CREATE TABLE [dbo].[DEPTO_UBICACION] ( [CODIGO_DEPTO] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [DESCRIPCION_DEPTO] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [EMP_INT_DEPTO] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[EMPLEADOS] ( [CEDULA_EMPL] [int] NOT NULL , [APELLIDO_EMPL] [char] (30) COLLATE Modern_Spanish_CI_AS NOT NULL , [NOMBRE_EMPL] [char] (30) COLLATE Modern_Spanish_CI_AS NOT NULL , [FECHA_EMPL] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [CARGO_EMPL] [char] (30) COLLATE Modern_Spanish_CI_AS NOT NULL , [DEPTO_EMPL] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[EQUIPOS] ( [CODIGO_EQUIPO] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [DESCRIPCION_EQUIPO] [char] (40) COLLATE Modern_Spanish_CI_AS NOT NULL , [STATUS_EQUIPO] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL , [DEPTO_EQUIPO] [char] (6) COLLATE Modern_Spanish_CI_AS NOT NULL , [CI_USUARIO_EQUIPO] [int] NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[EQUIPO_INVENT] ( [COD_EQUIPO_INVHS] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [COD_INVENT_INVHS] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [CANTIDAD_INVHS] [int] NOT NULL , [SERIAL_INVHS] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[FALLAS] ( [CODIGO_FALLA] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [DESCRIPCION_FALLA] [char] (50) COLLATE Modern_Spanish_CI_AS NOT NULL , [SOLUCION_FALLA] [char] (50) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[FALLAS_CONTROL] ( [CI_USUAR_FALLACTRL] [int] NOT NULL , [COD_EQUIP_FALLACTRL] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [COD_FALLA_FALLACTRL] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [FECHA_NOTIF_FALLACTRL] [datetime] NOT NULL , [CI_ANAL_FALLACTRL] [int] NOT NULL , [FECHA_VERIF_FALLACTRL] [datetime] NULL , [STATUS_FALLACTRL] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY] GO

CREATE TABLE [dbo].[INVENTARIO_HARD_SOFT] ( [CODIGO_INVHS] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [DESCRIPCION_INVHS] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [PROVVEDOR_INVHS] [char] (10) COLLATE Modern_Spanish_CI_AS NOT NULL , [INDICADOR_INHS] [char] (1) COLLATE Modern_Spanish_CI_AS NOT NULL ) ON [PRIMARY]

dbo.USUARIOS.CI_USUARIO = dbo.EMPLEADOS.CEDULA_EMPL INNER JOIN dbo.FALLAS ON dbo.FALLAS_CONTROL.COD_FALLA_FALLACTRL = dbo.FALLAS.CODIGO_FALLA

GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[RENDIMIENTO]') and OBJECTPROPERTY(id, N'IsView') = 1) drop view [dbo].[RENDIMIENTO] GO

SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO

CREATE VIEW dbo.RENDIMIENTO AS SELECT dbo.USUARIOS.CI_USUARIO, dbo.USUARIOS.ANAL_DCAS_USUARIO, dbo.EMPLEADOS.APELLIDO_EMPL, dbo.EMPLEADOS.NOMBRE_EMPL, dbo.FALLAS_CONTROL.CI_USUAR_FALLACTRL, dbo.FALLAS_CONTROL.COD_EQUIP_FALLACTRL, dbo.FALLAS_CONTROL.COD_FALLA_FALLACTRL, dbo.FALLAS_CONTROL.FECHA_NOTIF_FALLACTRL, dbo.FALLAS_CONTROL.FECHA_VERIF_FALLACTRL, dbo.FALLAS_CONTROL.STATUS_FALLACTRL FROM dbo.FALLAS_CONTROL INNER JOIN dbo.USUARIOS ON dbo.FALLAS_CONTROL.CI_USUAR_FALLACTRL = dbo.USUARIOS.CI_USUARIO LEFT OUTER JOIN dbo.EMPLEADOS ON dbo.USUARIOS.CI_USUARIO = dbo.EMPLEADOS.CEDULA_EMPL

GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO