Professional Documents
Culture Documents
El diccionario de datos es una herramienta fundamental en el modelado de sistemas. Las herramientas grficas, como los diagramas de flujo de datos, los diagramas de estructura, los diagramas de transicin de estados, etc., son de mucha importancia al modelar la estructura de los sistemas (estructuras funcionales, estructuras de mdulos, estructuras de comportamiento, etc.) y permiten una interpretacin general de las ideas modeladas pero, no son completos. Para contar con una especificacin completa es preciso tener una descripcin textual de los detalles que no pueden ser especificados en el diagrama. El diccionario de datos es una lista organizada de todos los elementos de datos que le son pertinentes al sistema (todos los nombres de las componentes de los diagramas), con definiciones precisas y rigurosas para que el usuario y el analista de sistemas puedan conocer todas las entradas, salidas, componentes de depsitos y estructuras intermedias existentes en el sistema. El diccionario de datos describe: x El significado de los flujos y depsitos presentes en los DFDs. x La composicin de los paquetes agregados de datos (paquetes compuestos o tems compuestos) que son transportados por los flujos de datos y que pueden ser divididos en tems ms elementales. x La composicin de las estructuras de datos en los depsitos. x Los valores y unidades relevantes de los tems elementales de informacin de los flujos de datos y depsitos de datos. x Los detalles de las relaciones entre los depsitos de datos.
Notacin
Existen muchas propuestas para la notacin a ser utilizada en el diccionario de datos. La que se presenta a continuacin es una de las ms comunes, que utiliza un conjunto reducido y simple de smbolos: Smbolo Se lee Ejemplo de la Interpretacin Sintaxis Se define por o El tem I est definido por la expresin Y := I := Y + () {} i{}s [|]
Se compone de Junto con o Y Opcional Repeticiones de o Iteraciones de o Secuencia de
I := A + B I := A + ( B ) I := { A } I := 1 { A } 10 I := [ A | B | C ]
El tem I est compuesto de A y B (la concatenacin de A con B) El tem I est compuesto de A y B , o de A slo (B es opcional) El tem I est compuesto de una secuencia de As (iteracin) El tem I est compuesto de una secuencia de As (mnimo 1 y mximo 10). El tem I est compuesto de A o B o C. Slo uno de ellos. (o exclusivo)
Uno O
entre"
20
** @
* Texto * @A
El Texto entre asteriscos es un comentario El elemento A es uno de los campos clave de un depsito de datos.
Ejemplos
CLIENTE cliente nro_cliente crdito := { cliente } * el archivo de Clientes * := @nro_cliente + nombre_cliente + direccin_para_remito + crdito := * identificador interno de un cliente, campo clave del depsito CLIENTES * * [ 1 ... 999 ] * * un nmero entre 1 y 999 * := [Positivo | Negativo] := [ Sr. | Srta. | Sra. | Dr. | Prof. | Don | Doa] := 1{ caracter_vlido }30 := 1{ carcter_vlido }30 := [ letra | dgito | ' | - | ] := [0 | 1 | 2 | 3 | 4| 5| 6| 7| 8| 9] := [letra_en_mayscula | letra_en_minscula] * [A ... Z | a ... z] *
nombre_cliente := ttulo_de_cortesa + primer_nombre + (nombre-intermedio) + apellido ttulo_de_cortesa primer_nombre apellido carcter_vlido dgito letra
direccin_para_remito := calle + nmero_dir + (departamento) + (localidad) *si la localidad no se detalla, la direccin es de Tandil* calle nmero_dir localidad pedido item_pedido := {carcter_valido} := {dgito} := [Tandil | Villa Cacique | Barker | Jurez | Lobera | Posadas] * localidades en las que se entregan pedidos * := nro_cliente + nombre_cliente + direccin_para_remito + 1 {item_pedido} 10 * un pedido puede contener hasta 10 items * := cdigo_artculo + nombre_artculo + cantidad
21
x x x
El modelo entidad relacin permite describir la informacin involucrada en un sistema como un conjunto de entidades y las relaciones existentes entre ellas.
Nombre Sexo Fecha de Nacimento Salario Empleado N Trabaja en 1 Departamento
Fig. 9: Ejemplo simple de diagrama de Entidad Relacin
La figura 9 presenta un ejemplo de diagrama entidad relacin. En esta figura se pueden distinguir tres tipos de componentes diferentes: x Entidades: Tambin llamado Tipo de Objetos o Clase de Objetos. Es diseada como una caja y representa un conjunto de objetos, llamados instancias, que tienen caractersticas comunes. Por ejemplo, en la figura 9 la entidad Empleado representa el conjunto de todos los empleados que trabajan en una organizacin.
22
x x
Atributos: Los valos vinculados a una entidad son llamados atributos. Representan caractersticas comunes a todas las instancias de una entidad. Relaciones: Son diseadas como un rombo y representan la relacin entre algunas instancias de una entidad con instancias de otra. Por ejemplo, en la figura 9 la relacin Trabaja en indica que un empleado (instancia de una entidad Empleado) trabaja en un Departamento. La notacin 1 del lado del Departamento y N del lado del Empleado indica que la relacin es uno a muchos, 1:N, y es interpretado como: varios empleados trabajan en un departamento, o en un departamento trabajan varios empleados.
Entidades y Atributos
Una entidad representa la informacin que es necesario almacenar, pudiendo esa necesidad de informacin abarcar personas o cosas tangibles como un empleado, un cliente o materiales. Puede ser intangible como el ttulo de una funcin, una asociacin, un prstamo, una compra o un pedido de seguro. Una entidad tiene varios atributos que describen la informacin que se desea mantener: tamao, valor, cdigo, fecha de nacimiento, direccin. Generalmente, en el procesamiento de datos se almacena una coleccin de objetos semejantes tales como los empleados y se registra la misma informacin para cada uno de ellos. Comnmente, el programador mantiene un registro sobre cada instancia de una entidad, y un tem de dato relacionado a cada atributo en cada uno de los registros. Los registros similares son agrupados en archivos y pueden presentarse como una tabla de dos dimensiones como la siguiente.
Estructura del Registro (Atributos de la Entidad) Nmero de Empleado Nombre Sexo Fecha de Nacimiento Depto Cdigo de Funcin Ttulo Salario
Ocurrencia de un registro
(Instancia de una entidad) Archivo lgico o relacin (Entidad) 044 172 044 090 172 ... 73 43 02 11 07 ... Contado Abogado Escribano Consulto Ingeniero ... 2.000 1.800 1.100 5.000 2.500 ...
M M F M F ...
Valores atributo
En el cuadro hay un conjunto de tems de datos y es mostrado el valor de cada uno. Cada lnea contiene los valores de los atributos de una instancia en particular de la entidad. Cada
23
columna contiene un tipo especfico de tem de datos, relativo a un tipo de atributo dado. La columna de la izquierda contiene los tems de datos que identifican a la entidad. En este ejemplo, la entidad es un empleado y el atributo designado como identificador de las instancias es el nmero de empleado. En un modelo de entidad relacin bien definido, las entidades y las relaciones deben estar en tercera formal normal [Chen 76], sin embargo, frecuentemente las entidades no estn bien definidas e incluyen caractersticas de otras entidades.
Relaciones
Una relacin representa un conjunto de vnculos lgicos entre instancias de dos o ms entidades. Cada una de las relaciones en un diagrama entidad relacin tiene una semntica propia que es definida por el tipo de vnculo existente en el dominio del problema modelado. Desde un punto de vista matemtico puede ser definido como: Una relacin entre entidades simples es una lista ordenada de entidades y una entidad dada puede aparecer una o ms veces en la lista [Ullman 82]. Si en un diagrama entidad relacin hay una relacin R entre las entidades E1, E2, ..., En, representa un conjunto compuesto por las listas (e1, e2, ..., en), (e1',e2', ..., en') ...; donde las componentes ei, ei', ... son instancias diferentes de la entidad Ei. La cantidad de entidades que participan en una relacin es arbitraria, sin embargo, se recomienda la utilizacin de relaciones entre dos entidades, es decir, relaciones binarias. Una entidad dada puede participar en ms de una relacin. Se pueden clasificar las relaciones binarias en diferentes tipos como base en la cantidad de participantes de cada una de las entidades. En las siguientes secciones se definen los diferentes tipos de relaciones. Existen diferentes convenciones para la notacin grfica de las relaciones. En las secciones siguientes se utilizan las ms usadas: la notacin original de Chen [Chen 76] y la notacin utilizada por James Martin [Martin 81], denominada tambin diagrama de Bachmann. Relacin Uno-a-Uno Una lnea uniendo las entidades A y B representa una relacin uno-a-uno. La barra corta, ms interna, cruzando la lnea de la relacin (notacin de Martin) indica la obligatoriedad de la relacin, es decir, una ocurrencia de la entidad tiene que existir para que la relacin tenga sentido.
24
Notacin de Martin
R
Obligatoriedad
Notacin de Chen 1
La figura representa grficamente la siguiente regla: x x Cada ocurrencia de la entidad A esta relacionada a una y solo una ocurrencia de la entidad B. Cada ocurrencia de la entidad B esta relacionada a una y solo una ocurrencia de la entidad A.
Por lo tanto, una ocurrencia, ni ms ni menos, de la entidad A puede existir con una, ni ms ni menos, ocurrencia de la entidad B. Esta relacin es denominada relacin uno-a-uno obligatoria. Las ocurrencias de las entidades A o B no pueden existir independientemente, una depende de la otra para existir. Chen, no considera la interpretacin de la obligatoriedad en las relaciones. La notacin en la parte superior de la relacin es interpretada como la cantidad permitida de B depende de la existencia de la entidad A, se disea una flecha apuntando a la entidad B.
Notacin de Chen 1
Opcionalidad Un crculo sobre la lnea de la relacin de lado de la entidad B indica una relacin de opcionalidad. Mientras que la relacin de B a A es obligatoria, la relacin de A para B es opcional.
Notacin de Martin
Opcionalidad
Notacin de Chen 1
0,1
Esto es interpretado de la siguiente manera: x x Cada ocurrencia de la entidad A esta relacionada con cero o una ocurrencia de la entidad B. Cada ocurrencia de la entidad B (si existe) esta relacionada a una y solamente una ocurrencia de la entidad A.
Una entidad A puede existir sin la presencia de una entidad B. Mientras que si la entidad B existe, no puede haber mas que una ocurrencia de la entidad A relacionada. La entidad B no
25