Definicion_Base_Datos - ds-unsa

Anuncio
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Versión: 2.0
Página 1 de 13
Desarrollo de un Sistema de Personal
para la Cooperativa ASA
Definición de la Base de Datos
Documento de definición de base de datos (DDBD)
Página 1 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Definición de Base de Datos
Versión: 1.0
Versión
Hecha por
1.0
Roxana Evelyn
Limachi Calatayud
1.0
Roxana Evelyn
Limachi Calatayud
1.0
2.0
2.0
CONTROL DE VERSIONES
Revisada por
Aprobada por
Ruth Zoraida
Condori
Choqueluque
Roxana Evelyn
Limachi Calatayud
Ruth Zoraida
Condori
Choqueluque
Roxana Evelyn
Limachi Calatayud
Ruth Zoraida
Condori
Choqueluque
Roxana Evelyn
Limachi Calatayud
Documento de definición de base de datos (DDBD)
Fecha
20 de
Noviembre
del 2011
26 de
Noviembre
del 2011
02 de
Diciembre
del 2011
19 de
Diciembre
del 2011
20 de
Diciembre
del 2011
Motivo
Requisitos con datos
persistentes
Justificación de la
Elección del SGBD
Normalización(1FN, 2FN,
3FN)
Diagrama Entidad
Relación Diccionario de
Datos
Diccionario de Datos
Página 2 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Definición de Base de Datos
Versión: 1.0
Contenido
1
INTRODUCCIÓN………………………………………………………………………………..4
2
OBJETIVOS………………………………………………………………………………………4
3
ALCANCE………………………………………………………………………………………...5
4
ANÁLISIS DE REQUISITOS…………………………………………………………………...6
5
DISEÑO CONCEPTUAL: DIAGRAMA ENTIDAD RELACIÓN…………………………..7
6
JUSTIFICACIÓN DEL SISTEMA GESTOR DE BASE DE DATOS……………………….8
7
MODELO FÍSICO: DICCIONARIO DE DATOS…………………………………………...12
Documento de definición de base de datos (DDBD)
Página 3 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Definición de Base de Datos
Versión: 1.0
1 INTRODUCCIÓN
Una base de datos es una colección de información organizada de forma que un programa de ordenador pueda
seleccionar rápidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos
electrónico.
Las bases de datos tradicionales se organizan por campos, registros y archivos. Un campo es una pieza única de
información; un registro es un sistema completo de campos; y un archivo es una colección de registros. Los
procedimientos de actualización y recuperación comunes y bien determinadas habrán de conservar la
integridad, confidencialidad y confiabilidad del conjunto de datos.
Por ejemplo, una guía de teléfono es análoga a un archivo. Contiene una lista de registros, cada uno de los
cuales consiste en tres campos: nombre, dirección, y número de teléfono.
SGBD: Software encargado de gestionar los datos de la BD. Su misión es proporcionar mecanismos de acceso a
los datos para almacenar, definir, recuperar información de forma eficiente.
2 OBJETIVOS
La Base de datos está desarrollado con el propósito de obtener todas las ventajas que esta tecnología nos
ofrece, además de ser una de las principales capas del sistema de personal para la cooperativa ASA.
Este sistema va manejar la asistencia del personal, y también las planillas de la cooperativa, entre los
principales objetivos tenemos.

Control centralizado de la información

Disminuir la redundancia y evitar inconsistencia

Posibilidad de compartición de datos

Mantenimiento de la integridad

Disponer de un acceso seguro

Proporcionar independencia de datos

Coherencia de resultados

Mejor disponibilidad de datos

Mayor valor informativo

Documentación Normalizada

Mayor eficiencia en el manejo de datos

Reducción del espacio del almacenamiento

Privacidad y seguridad de los Datos
El esquema de base de datos es una herramienta para hacer una abstracción del mundo real, un
formalismo, el método el cual define la representación lógica de los datos de la empresa, en este caso el
sistema de personal para la cooperativa ASA, consta de una notación para describir los datos,
estructuras de datos (información) y de un conjunto de operaciones validas que se pueden utilizar para
manipular estos datos o símbolos que los representan.
Documento de definición de base de datos (DDBD)
Página 4 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Definición de Base de Datos
Versión: 1.0
3 ALCANCE
Se consideraran principalmente las fases de análisis y diseño; dentro del análisis se obtendrán un
conjunto de datos con los cuales se procederá en la fase de diseño a desarrollar el esquema conceptual
y lógico del sistema de personal para la cooperativa ASA
Una vez mencionado el alcance del proyecto, definamos las tareas y sub tareas de nuestro rol en el
proyecto.

Tarea I: Análisis de requerimientos

Tarea II: Diseño conceptual

Tarea III: Elección del SGBD

Tarea IV: Modelo Físico
En la fase de Análisis de Requerimientos extraeremos las principales entidades y un análisis de
documentos proporcionados por la cooperativa ASA. Entre nuestras sub tareas tenemos:

Identificación de las principales entidades.

Estudio y análisis de la documentación existente de la cooperativa ASA.
En el diseño conceptual haremos una descripción del esquema de la base de datos utilizando un modelo
de datos conceptual. Produciremos un esquema conceptual de la base de datos (independiente del
sistema gestor de bases de datos que luego vayamos a utilizar). Entre nuestras sub tareas tenemos:

Comprensión de la estructura, semántica, relaciones y restricciones asociadas a los datos que
deben almacenarse en la base de datos.

Modelado de los datos del sistema (obtención de una descripción estable de lo que será el
contenido de la base de datos).

Comunicación entre analistas y diseñadores para comprobar la validez del modelo obtenido.
En la fase de Elección del SGBD procederemos a elegir el sistema gestor de bases de datos que vayamos
a utilizar. Tenemos a la sub tarea:

Elección del SGBD (marca y versión), estudio de factores técnicos y no técnicos.
En el Modelo físico haremos una descripción de la base de datos a nivel interno, de acuerdo con las
características del sistema gestor de bases de datos que decidamos utilizar. Entre nuestras sub tareas
tenemos:

Estimar adecuadamente los diferentes parámetros físicos de la data y meta data de la BD.
Documento de definición de base de datos (DDBD)
Página 5 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Definición de Base de Datos
Versión: 1.0
4 ANÁLISIS DE REQUISITOS
Nos fijaremos especialmente en todos los requerimientos asociados a los datos con los que ha de
trabajar el sistema Desarrollo de un Sistema de Personal para la Cooperativa ASA, a continuación
verificaremos cada requisito si será representado en la base de datos:
CU – 001- Ingresar al Sistema (login)
El nombre de usuario y su contraseña son extraídos por el sistema para su verificación.
CU – 002- Realizar planillas
Creación de una nueva planilla, que pude ser de tipo gratificación, de vacaciones o de
remuneraciones.
CU – 003 – Buscar planilla
La búsqueda de cualquier tipo de planilla.
CU – 004- Editar planilla
Permitir hacer cambios en los campos de la planilla.
CU – 005- Imprimir planilla
Imprimir la planilla, que requiera el usuario.
CU – 006- Ver reportes de Planilla
Seleccionar que campos queremos ver de la planilla.
CU – 007- Realizar Documentos individuales del empleado
CU – 008- Ver reportes
Realizar reportes.
CU – 009- Buscar empleado
Búsqueda en la base de datos de algún empleado, utilizando su código.
CU – 010- Buscar documento individual
Búsqueda de los documentos que puede tener el empleado.
CU – 011- Editar documento individual
Editar algún documento del empleado.
CU – 012- Imprimir documento
Imprimir el documento del empleado.
CU – 013- Ver reportes de documentos
Ver diferentes reportes de los empleados.
Faltan requerimientos….estos son los requerimientos de planillas falta unir con los requerimientos de
asistencia
Documento de definición de base de datos (DDBD)
Página 6 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Definición de Base de Datos
Versión: 1.0
5 DISEÑO CONCEPTUAL: DIAGRAMA ENTIDAD RELACIÓN
Se va crear un solo diagrama entidad relación, para lo cual se tienes q analizar todos los
documentos de planillas y asistencia y verificar con el diagrama de clases
Documento de definición de base de datos (DDBD)
Página 7 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Versión: 2.0
Página 8 de 13
6 JUSTIFICACIÓN DEL SISTEMA GESTOR DE BASE DE DATOS
Se han elaborado una serie de propuestas, entre las que destacaron SQlServer en su versión 2008 y
MySql en su versión 5.2 ambos gestores estables en sus respectivas versiones, de ahí se seleccionó
MySql por ser libre y por otras razones que se mencionaran a continuación:
1. Escalabilidad y flexibilidad
El servidor de bases de datos MySQL ofrece lo último en escalabilidad, siendo capaz de manejar
bases de datos empotradas ocupando sólo 1MB, y hacer funcionar data warehouses que contengan
terabytes de información. La flexibilidad de plataforma es una característica clásica de MySQL,
soportando distintas versiones de Linux, UNIX y Windows, por supuesto, la naturaleza open source
de MySQL permite una personalización completa para aquellos que deseen añadir características al
servidor.
2. Alto rendimiento
Una arquitectura única de motores de bases de datos permite a los profesionales configurar el
servidor MySQL para aplicaciones específicas, dando como resultado un rendimiento espectacular.
MySQL puede cumplir con las expectaciones de rendimiento de cualquier sistema, ya sea un
sistema de procesamiento transaccional de alta velocidad, o un sitio web de gran volumen sirviendo
un billón de consultas diarias MySQL ofrece la munición adecuada para sistemas críticos mediante
herramientas de carga de alta velocidad, índices full-text y otros mecanismos de mejora del
rendimiento
3. Alta disponibilidad
Solidez y disponibilidad constante son características distintivas de MySQL, con clientes confiando
en ellas para garantizar el uptime en todo momento, MySQL ofrece una amplia variedad de
soluciones de alta disponibilidad, desde replicación a servidores de clúster especializados, u ofertas
de terceros
4. Robusto soporte transaccional
MySQL ofrece uno de los motores de bases de datos transaccionales más potentes del mercado. Las
características incluyen un soporte completo de ACID (atómica, consistente, aislada, duradera),
bloqueo a nivel de filas, posibilidad de transacciones distribuidas, y soporte de transacciones con
múltiples versiones donde los lectores no bloquean a los escritores y viceversa También se asegura
una integridad completa de los datos mediante integridad referencial, niveles de aislamiento de
transacciones especializados, y detección de deadlocks.
5. Fortalezas en Web y Data Warehouse
MySQL es el estándar de-facto para sitios web de gran tráfico por su motor de consultas de alto
rendimiento, su posibilidad de insertar datos a gran velocidad, y un buen soporte para funciones
web especializadas como las búsquedas fulltext. Estas mismas fortalezas también se aplican a
entornos de data warehousing, donde MySQL escala hasta el rango de los terabytes tanto para un
solo servidor, como para varios. Otras características como las tablas en memoria, índices B-tree y
hash, y tablas comprimidas hasta un 80% hacen de MySQL una buena opción para aplicaciones web
y de business intelligence
6. Fuerte protección de datos
Porque proteger los datos es el trabajo principal de los profesionales de bases de datos, MySQL
ofrece características de seguridad que aseguran una protección absoluta de los datos En cuanto a
autenticación, MySQL ofrece potentes mecanismos para asegurar que sólo los usuarios autorizados
tienen acceso al servidor. También se ofrece soporte SSH y SSL para asegurar conexiones seguras.
Existe una estructura de privilegios que permite que los usuarios sólo puedan acceder a los datos
que se les permite, así como potentes funciones de cifrado y descifrado para asegurarse de que los
datos están protegidos Finalmente, se ofrecen utilidades de backup y recuperación por parte de
Documento de definición de base de datos (DDBD)
Página 8 de 13
Automatización De Certificados De Estudios
Definición de Base de Datos
Versión: 2.0
Página 9 de 13
MySQL y terceros, que permiten copias completas, tanto lógicas como físicas, así como
recuperación point-in-time.
7. Desarrollo de aplicaciones completo
Uno de los motivos por los que MySQL es la base de datos open source más popular es que ofrece
un soporte completo para cualquier necesidad de desarrollo. En la base de datos se puede
encontrar soporte para procedimientos almacenados, triggers, funciones, vistas, cursores, SQL
estándar, y mucho más. Existen librerías para dar soporte a MySQL en aplicaciones empotradas.
También se ofrecen drivers (ODBC, JDCBC) que permiten que distintos tipos de aplicaciones puedan
usar MySQL como gestor de bases de datos. No importa si es PHP, Perl, Java, Visual Basic, o .NET,
MySQL ofrece a los desarrolladores todo lo que necesitan para conseguir el éxito en el desarrollo de
sistemas de información basados en bases de datos.
8. Facilidades de gestión
MySQL ofrece posibilidades de instalación excepcionales, con un tiempo medio desde la descarga
hasta completar la instalación de menos de quince minutos. Esto es cierto sin importar que la
plataforma sea Windows, Linux, Macintosh, o UNIX Una vez instalado, características de gestión
automáticas como expansión automática del espacio, o los cambios dinámicos de configuración
descargan parte del trabajo de los atareados administradores. MySQL también ofrece una completa
colección de herramientas gráficas de gestión que permiten al DBA gestionar, controlar y resolver
problemas en varios servidores desde una misma estación de trabajo. Además, hay multitud de
herramientas de terceros que gestionan tareas como el diseño de datos y ETL, administración,
gestión de tareas y monitorización.
9. Open Source y soporte 24 / 7
Muchas empresas no se atreven a adoptar software open source porque creen que no podrán
encontrar el tipo de soporte o servicios profesionales en los que confían con su software
propietario actual. Las preguntas sobre indemnizaciones también aparecen. Estas preocupaciones
pueden desaparecer con el completo servicio de soporte e indemnización disponibles. MySQL no es
un proyecto típico Open Source ya que todo el software es propiedad de MySQL AB, lo que permite
un modelo de coste y soporte que ofrece una combinación única entre la libertad del open source y
la confianza de un software con soporte.
10. Coste Total de Propiedad menor
Al migrar aplicaciones actuales a MySQL, o usar MySQL para nuevos desarrollos, las empresas están
ahorrando costes que muchas veces llegan a las siete cifras. Las empresas están descubriendo que,
gracias al servidor MySQL y las arquitecturas scale-out que utilizan hardware económico, pueden
alcanzar niveles sorprendentes de escalabilidad y rendimiento, y todo a un coste bastante menor
que el de los sistemas propietarios. Además, la robustez y facilidad de mantenimiento de MySQL
implican que los administradores no pierden el tiempo con problemas de rendimiento o
disponibilidad, sino que pueden concentrarse en tareas de mayor impacto en el negocio.
Ventajas






MySQL software es Open Source
Velocidad al realizar las operaciones, lo que le hace uno de los gestores con mejor
rendimiento.
Bajo costo en requerimientos para la elaboración de bases de datos, ya que debido a su
bajo consumo puede ser ejecutado en una máquina con escasos recursos sin ningún
problema.
Facilidad de configuración e instalación.
Soporta gran variedad de Sistemas Operativos
Baja probabilidad de corromper datos, incluso si los errores no se producen en el propio
gestor, sino en el sistema en el que está.
Documento de Definición de Base de Datos (DDBD)
Página 9 de 13
Automatización De Certificados De Estudios
Definición de Base de Datos
Versión: 2.0
Página 10 de 13


Su conectividad, velocidad, y seguridad hacen de MySQL Server altamente apropiado para
acceder bases de datos en Internet
El software MySQL usa la licencia GPL
Arquitectura del motor de almacenamiento de MySql
11. Características Específicas
 Un amplio subconjunto de ANSI SQL 99, y varias extensiones.
 Soporte a multiplataforma
 Procedimientos almacenados
 Disparadores (triggers)
 Cursores
 Vistas actualizables
 Soporte a VARCHAR
 INFORMATION_SCHEMA
 Modo Strict
 Soporte X/Open XA de transacciones distribuidas; transacción en dos fases como parte de
esto, utilizando el motor InnoDB de Oracle
 Motores de almacenamiento independientes (MyISAM para lecturas rápidas, InnoDB para
transacciones e integridad referencial)
Documento de Definición de Base de Datos (DDBD)
Página 10 de 13
Automatización De Certificados De Estudios
Definición de Base de Datos
Versión: 2.0
Página 11 de 13
 Transacciones con los motores de almacenamiento InnoDB, BDB Y Cluster; puntos de
recuperación (savepoints) con InnoDB
 Soporte para SSL
 Query caching
 Sub-SELECTs (o SELECTs anidados)
 Réplica con un maestro por esclavo, varios esclavos por maestro, sin soporte automático para
múltiples maestros por esclavo.
 indexing y buscando campos de texto completos usando el motor de almacenamiento
MyISAM
 Embedded database library
 Soporte completo para Unicode
 Conforme a las reglas ACID usando los motores InnoDB, BDB y Cluster
 Shared-nothing clustering through MySQL Cluster













Usa GNU Automake, Autoconf, y Libtool para portabilidad
Uso de multihilos mediante hilos del kernel.
Usa tablas en disco b-tree para búsquedas rápidas con compresión de índice
Tablas hash en memoria temporales
El código MySQL se prueba con Purify (un detector de memoria perdida comercial) así como
con Valgrind, una herramienta GPL
Completo soporte para operadores y funciones en cláusulas select y where.
Completo soporte para cláusulas group by y order by, soporte de funciones de agrupación
Seguridad: ofrece un sistema de contraseñas y privilegios seguro mediante verificación
basada en el host y el tráfico de contraseñas está cifrado al conectarse a un servidor.
Soporta gran cantidad de datos. MySQL Server tiene bases de datos de hasta 50 millones de
registros.
Se permiten hasta 64 índices por tabla (32 antes de MySQL 4.1.2). Cada índice puede consistir
desde 1 hasta 16 columnas o partes de columnas. El máximo ancho de límite son 1000 bytes
(500 antes de MySQL 4.1.2).
Los clientes se conectan al servidor MySQL usando sockets TCP/IP en cualquier plataforma. En
sistemas Windows se pueden conectar usando named pipes y en sistemas Unix usando
ficheros socket Unix.
En MySQL 5.0, los clientes y servidores Windows se pueden conectar usando memoria
compartida.
MySQL contiene su propio paquete de pruebas de rendimiento proporcionado con el código
fuente de la distribución de MySQL.
Documento de Definición de Base de Datos (DDBD)
Página 11 de 13
Automatización De Certificados De Estudios
Definición de Base de Datos
Versión: 2.0
Página 12 de 13
7 MODELO FÍSICO: DICCIONARIO DE DATOS
El diccionario de datos es una lista organizada destinada a mantener descripciones de los elementos
utilizados por el sistema. Es el elemento informativo por excelencia, tanto para los usuarios como para
los diseñadores y para el administrador, ayuda a:
 Especificación precisa del significado de cada dato para evitar duplicaciones y malentendidos.
 Descripción de los procedimientos de manejo y validación de los datos.
 Localización de todos los lugares (entidades), donde se está utilizando cada dato.
 Establecimiento de relaciones entre los datos que reflejen el modelo conceptual de los datos
obtenidos durante el diseño.
Razones por las que se ha desarrollado:
 Manejo de los detalles en el sistema.
 Comunicar el significado común para todos los elementos del sistema.
 Documentar las características del sistema.
 Facilitar el análisis de los detalles con la finalidad de evaluar las características y determinar
donde efectuar cambios en el sistema.
 Localizar errores y omisiones en el sistema.
UNA VEZ REALIDADO EL DIAGRAMA ENTIDAD RELACION FINAL, PODREMOS GENERAR EL DICCIONARIO DE
DATOS RESPECTIVO
Documento de Definición de Base de Datos (DDBD)
Página 12 de 13
Cooperativa de Ahorro y Crédito
Alto Selva Alegre
Versión: 2.0
Página 13 de 13
Documento de definición de base de datos (DDBD)
Página 13 de 13
Descargar