Está en la página 1de 11

República Bolivariana de Venezuela

Universidad Nacional Experimental Politécnica de la Fuerza Armada

Núcleo Anzoátegui-Sede San Tome

Diseño de archivo y de base de datos

Profesora Bachiller

José Gregorio Juan Duran 21.176.791


Introducción

El diseño de archivos y bases de datos incluye decisiones con respecto a la


naturaleza y contenido del propio archivo, como si se fuera a emplear para
guardar detalles de las transacciones, datos históricos, o información de
referencia. Entre las decisiones que se toman durante el diseño de archivos No
todos los sistemas requieren del diseño de todos los archivos, ya que pueden
existir archivos de un sistema anterior que pueden ser utilizados para el nuevo
sistema y probablemente solo tenga que enlazarse el nuevo sistema al archivo
maestro donde se encuentran los registros. La mayoría de los sistemas de
información ya se han implantado en sistemas de cómputos grandes o pequeños,
por lo que utilizan una base de datos que puede abarcar varias aplicaciones, por
esta razón estos sistemas utilizan un administrador de base de datos. En este
caso el diseñador no construye la base de datos sino que consulta a su
administrador para ponerse de acuerdo en el uso de esta base de datos en el
sistema.
Distribuido

Un sistema distribuido se define como una colección de computadoras separadas


físicamente y conectadas entre sí por una red de comunicaciones; cada máquina
posee sus componentes de hardware y software que el programador percibe como
un solo sistema. El programador accede a los componentes de software (objetos)
remotos, de la misma manera en que accedería a componentes locales, en un
grupo de computadoras que usan un middleware entre los que destacan (RPC) y
SOAP para conseguir un objetivo. Los sistemas distribuidos se implementan en
diversas plataformas de hardware, desde unas pocas estaciones de trabajo
conectadas por una red de área local, hasta Internet, la cual se puede definir como
una colección de redes de área local y de área extensa interconectados, que
enlazan millones de computadores. Las aplicaciones de los sistemas distribuidos
se caracterizan por proveer un alto nivel de fiabilidad, seguridad contra
interferencias externas y privacidad de la información que el sistema mantiene.

Características de los sistemas distribuidos

Compartir recursos

Es mediante el cual se comparte componentes del hardware, como el disco duro


e impresoras, hasta elementos del software, como el archivo, base de datos y
otros objetos de datos, los recursos de una computadora multiusuario se
comparten de manera natural entre todos sus usuarios. Por el contrario, los
usuarios de estaciones de trabajo monousuario o computadoras personales dentro
de un sistema distribuido no obtienen automáticamente los beneficios de compartir
recursos, un sistema distribuido están físicamente encapsulados en una de las
computadoras y sólo pueden ser accedidos por otras computadoras mediante las
comunicaciones.

Gestor de recursos

Es un módulo de software que maneja un conjunto de recursos de un tipo en


particular. Éstos incluyen la provisión de un esquema de nombres para cada clase
de recurso, permitir que los recursos individuales sean accedidos desde cualquier
localización; Un sistema distribuido puede verse de manera abstracta como un
conjunto de gestores de recursos y un conjunto de programas que usan los
recursos Los usuarios de los recursos se comunican con los gestores de los
recursos para acceder a los recursos compartidos del sistema
Apertura opennesss

Un sistema puede ser abierto o cerrado respecto a extensiones hardware, añadir


periféricos, memoria o interfaces de comunicación, o respecto a las extensiones
software, añadir características al sistema operativo, protocolos de comunicación y
servicios de compartir recursos, se pueden añadir sin perjudicar ni duplicar a los
ya existentes. Básicamente los sistemas distribuidos cumplen una serie de
características:

 Los interfaces software clave del sistema están claramente especificados y


se ponen a disposición de los desarrolladores. En una palabra, los
interfaces se hacen públicos.

 Los sistemas distribuidos abiertos se basan en la provisión de un


mecanismo uniforme de comunicación entre procesos e interfaces
publicados para acceder a recursos compartidos.

 Los sistemas distribuidos abiertos pueden construirse a partir de hardware y


software heterogéneo, posiblemente proveniente de vendedores diferentes,
la conformidad de cada componente con el estándar publicado debe ser
cuidadosamente comprobada y certificada si se quiere evitar tener
problemas de integración.

Concurrencia

La concurrencia tiene lugar entrelazando la ejecución de los distintos procesos. Si


la computadora tiene N procesadores, entonces se pueden estar ejecutando,
estrictamente a la vez hasta N procesos. En los sistemas distribuidos hay muchas
maquinas, cada una con uno o más procesadores centrales. Es decir, si hay M
computadores en un sistema distribuido con un procesador central cada una
entonces hasta M procesos se estarán ejecutándose en paralelo

Escalabilidad:

Los sistemas distribuidos operan de manera efectiva y eficiente a muchas escalas


diferentes, La escala más pequeña consiste en dos estaciones de trabajo y un
servidor de archivos, mientras que un sistema distribuido construido alrededor de
una red de área local simple podría contener varios cientos de estaciones de
trabajo, varios servidores de archivos, servidores de impresión y otros servidores
de propósito específico. Estas podrían contener muchos miles de computadores
que forman un único sistema distribuido, permitiendo que los recursos sean
compartidos entre todos ellos. La necesidad de escalabilidad no es solo un
problema de prestaciones de red o de hardware, sino que está íntimamente ligada
con todos los aspectos del diseño de los sistemas distribuidos. En este caso el
sistema deberá estar diseñado de manera que permita trabajar con archivos
replicados en distintos servidores, con las consideraciones de consistencias que
ello conlleva.

Tolerancia a fallo

Los sistemas informáticos a veces fallan, cuando se producen fallos en el software


o en el hardware, los programas podrían producir resultados incorrectos o podrían
pararse antes de terminar la computación que estaban realizando. La
recuperación del software tiene relación con el diseño de software que sea capaz
de recuperar (roll-back) el estado de los datos permanentes antes de que se
produjera el fallo. La disponibilidad de un sistema es una medida de la proporción
de tiempo que está disponible para su uso. Un fallo simple en una maquina
multiusuario resulta en la no disponibilidad del sistema para todos los usuarios.
Cuando uno de los componentes de un sistema distribuidos falla, solo se ve
afectado el trabajo que estaba realizando el componente averiado. Un usuario
podría desplazarse a otra estación de trabajo; un proceso servidor podría
ejecutarse en otra máquina.

Transparencia

Se define como la ocultación al usuario y al programador de aplicaciones de la


separación de los componentes de un sistema distribuido, de manera que el
sistema se percibe como un todo, en vez de una colección de componentes
independientes, la transparencia ejerce una gran influencia en el diseño del
software de sistema. Estas proveen un resumen útil de la motivación y metas de
los sistemas distribuidos. Las transparencias definidas son:

 Transparencia de Acceso: Permite el acceso a los objetos de información


remotos de la misma forma que a los objetos de información locales.
 Transparencia de Localización: Permite el acceso a los objetos de información
sin conocimiento de su localización
 Transparencia de Concurrencia: Permite que varios procesos operen
concurrentemente utilizando objetos de información compartidos y de forma
que no exista interferencia entre ellos.
 Transparencia de Fallos: Permite a los usuarios y programas de aplicación
completar sus tareas a pesar de la ocurrencia de fallos en el hardware o en
el software.
 Transparencia de Migración: Permite el movimiento de objetos de
información dentro de un sistema sin afectar a los usuarios o a los
programas de aplicación.
 Transparencia de Prestaciones Permite que el sistema sea reconfigurado
para mejorar las prestaciones mientras la carga varia.
 Transparencia de Escalado: Permite la expansión del sistema y de las
aplicaciones sin cambiar la estructura del sistema o los algoritmos de la
aplicación.

Proceso cooperativo

El modelo totalmente distribuido, no ha sido todavía completamente conseguido.


La situación actual es que existen en el mercado informático numerosas
plataformas de hardware y software que, mediante las correspondientes normas y
estándares emitidos por las asociaciones y organizaciones encargadas de ello,
pueden, y son de hecho, ser conectados entre sí para comunicarse, intercambiar
datos y servicios, etc. de forma que se obtenga un sistema informático adecuado a
cada organización, Por tanto, el proceso cooperativo es aquél en que dos o más
elementos lógicos diferentes interactúan entre sí en la realización de una tarea
común. Es decir, el proceso cooperativo consiste en un conjunto de computadores
que ejecutan una misma aplicación (normalmente un host y varios
microcomputadores que comparten la ejecución de un proceso global).

Diseño de archivos y bases de datos

Técnicas

Los sistemas de información en las empresas están orientados hacia el uso de


archivos y bases de datos. Los datos se acumulan en archivos que son
procesados o mantenidos por el sistema. Las bases de datos acumulan los datos
de las transacciones y otros tipos de archivos, y están diseñadas para compartir
los datos para distintas aplicaciones. Es importante determinar su contenido y
elegir un método para organizar los datos. Al mismo tiempo, si las aplicaciones
propuestas utilizaran los recursos de la base de datos, el analista debe desarrollar
los medios para interactuar con la misma.

Diseño de sistemas de archivos

Consiste en la definición de la estructura de datos que se debe seleccionar, se


incluyen decisiones respecto a la naturaleza y contenido del propio archivo, entre
las decisiones que se toman durante el diseño de archivos, se encuentran las
siguientes:
 Los datos deben incluirse en el formato de los registros contenidos en el
archivo.
 La longitud de cada registro, con base en las características de los datos
que contiene.
 La secuencia a disposición de los registros dentro del archivo (la estructura
de almacenamiento que puede ser secuencial, indexada o relativa).

Diseño de interacciones con la base de datos

Consiste en la evaluación que realiza el analista de sistema en conjunto con el


administrador de la base de datos, con el objetivo de determinar cuáles datos son
necesarios para el sistema y las acciones del sistema sobre la base de datos.

 Evaluar la conveniencia de la solicitud del analista.


 Describir los métodos para interactuar con la base de datos.
 Asegurar que la aplicación no dañe la base de datos o que la afecte de
 manera adversa a las necesidades de otras aplicaciones.

Metodología de diseño de base de datos

Abarca decisiones a muy distintos niveles, la complejidad se controla mejor si se


descompone el problema en subproblemas y se resuelve cada uno de estos
subproblemas independientemente, utilizando técnicas específicas.

Diseño conceptual

Un esquema conceptual es una descripción de alto nivel de la estructura de la


base de datos, independientemente del sistema de gestión de base de datos que
se vaya a utilizar para manipularla. El modelo conceptual es un lenguaje que se
utiliza para describir esquemas conceptuales. El objetivo del diseño conceptual es
describir el contenido de información de la base de datos y no las estructuras de
almacenamiento que se necesitarán para manejar esta información.

Diseño lógico

Parte del esquema conceptual y da como resultado un esquema lógico. Un


esquema lógico es una descripción de la estructura de la base de datos en
términos de las estructuras de datos que puede procesar un tipo de sistema
manejador de base de datos. Un modelo lógico es un lenguaje usado para
especificar esquemas lógicos (modelo relacional, modelo de red, etc.). El diseño
lógico depende del tipo de sistema de gestión de base de datos que se vaya a
utilizar, no depende del producto concreto
Diseño físico

Parte del esquema lógico y da como resultado un esquema físico. Un esquema


físico es una descripción de la implementación de una base de datos en memoria
secundaria: las estructuras de almacenamiento y los métodos utilizados para tener
un acceso eficiente a los datos. Por ello, el diseño físico depende del sistema de
gestión de base de datos concreto y el esquema físico se expresa mediante su
lenguaje de definición de dato. En esta se junta una serie de fases 5 para ser
exacto.

Análisis de requerimiento

Se utiliza para recabar información sobre el uso que se piensa dar a la base de
datos. Para ello se debe realizar las siguientes actividades:

 Determinación de los requisitos del sistema


 Identificación de las principales áreas de la aplicación y grupos de usuarios
 Estudio y análisis de la documentación existente relativa a las aplicaciones.
 Estudio del entorno de operación actual.
 Estudio del uso de la información (transacciones, frecuencias y flujos de
datos)

Entregable o resultados

Se debe generar un documento con la especificación de requerimientos. En él se


incluye:

 Descripción del sistema en lenguaje natural


 Lista de requerimientos organizados de forma jerárquica
 Diagramas de flujo de datos (DFD)
 Casos de uso

Diseño conceptual

Producir un esquema conceptual de la base de datos independiente del SGBD, los


objetivos son:

 Comprensión de la estructura, semántica, relaciones y restricciones de la


Base de Datos.
 Descripción estable del contenido de la base de datos.
 Comunicación entre usuarios, analistas y diseñadores.
Enfoque centralizado: Los requisitos de distintas aplicaciones y grupos de
usuarios se combinan en un único conjunto de requisitos antes de comenzar el
diseño del esquema.

Enfoque de integración de vistas: Se diseña un esquema (o vista) para cada


tipo de usuarios o aplicaciones basado únicamente en sus requisitos. Durante
la etapa de integración de vistas, dichos esquemas se combinan o integran
para formar un esquema conceptual global (del cual cada vista individual
puede considerarse un esquema externo)

Elecciones del sistema gestor de bases de datos

1. Elección del modelo de datos (tipo de Sistema Gestor de Bases de Datos


DBMS). Por ejemplo: DBMS relacional, objeto-relacional, orientado a
objetos, multidimensional
2. 2. Elección del sistema gestor de bases de datos. Por ejemplo: Oracle 9i2,
IBM DB2 UDB, Microsoft SQL Server, Interbase, etc

Sistemas gestores de base de datos

Es un software con capacidad para definir, mantener y utilizar una base de datos.
Un sistema de gestión de bases de datos debe permitir definir estructuras de
almacenamiento, acceder a los datos de forma eficiente y segura, etc.

Diseño físico

El diseño físico de la base de datos consiste en elegir estructuras de


almacenamiento (Por ejemplo: tablas, partición de tablas, creación de índices…)
para que el rendimiento de la base de datos sea adecuado para las distintas
aplicaciones a las que ha de dar servicio (tiempo de respuesta, aprovechamiento
del espacio de almacenamiento, productividad de las transacciones).

Ingeniería inversa de base de datos

El objetivo de la ingeniería inversa es obtener información a partir de un producto


accesible al público, con el fin de determinar de qué está hecho, qué lo hace
funcionar y cómo fue fabricado. La idea general de emplear la Ingeniería Inversa
es:

- Conocer a fondo la aplicación y generar un mejor código.

- Migrar la aplicación a un nuevo sistema operativo.

- Hacer o completar la documentación.


- Verificar que el código en estudio cumple las especificaciones de diseño
estándar

El método pasa por dos fases. En la 1ª fase se realiza la extracción de estructuras


y en la 2ª la conceptualización de las mismas:

Fase I

 Extracción de estructuras
 Considerar cada archivo una posible tabla.
 Considerar cada campo del archivo como un posible campo de la tabla.
 Identificar las claves primarias.
 Identificar claves ajenas.
 “Filtrar” las tablas (por ejemplo, despreciar aquellos archivos sin clave
principal).
 Detección de campos obligatorios.
 Detección de asociaciones entre tablas

Fase II

Sustitución de constructores propios del sistema real por

Constructores independientes (ej: una tabla que es un elemento físicoes sustituida


por el concepto de entidad que es un elemento lógico).

Detección y eliminación de los constructores no semánticos del esquema lógico,


paso inverso a la optimización del esquema (ej: deshacer la normalización de un
Sistema de gestión de base de datos relacional). o Normalización conceptual para
obtener estructuras de alto nivel.
Conclusión

Siempre que una persona escucha hablar de bases de datos y de toda la terminología que las
acompaña piensa que es un tema excesivamente complicado, y no es así, todo tiene un porque y
lógica, es cosa de familiarizarse un poco con ellas. Cuando se ven en realidad todas las ventajas
que tienen, es más sencillo el proceso de aprendizaje, ya que siente que el aprender a manejarlas
se verá recompensado. Además de los sencillas que son, es muy fácil acceder a información,
manuales y cursos relacionados a ellas, todo está a la mano, con la facilidad de poner este tema en
un buscador de la red y aparecerán infinidad de temas, unos más complejos que otros, pero
siempre uno que se adecue a las capacidades de aprendizaje de cada persona.

También podría gustarte