Integridad y seguridad__1er_parcial_bdii
Upcoming SlideShare
Loading in...5
×
 

Integridad y seguridad__1er_parcial_bdii

on

  • 563 views

 

Statistics

Views

Total Views
563
Views on SlideShare
560
Embed Views
3

Actions

Likes
0
Downloads
4
Comments
0

1 Embed 3

http://padilla-zambrana.blogspot.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Integridad y seguridad__1er_parcial_bdii Integridad y seguridad__1er_parcial_bdii Document Transcript

  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALIntegridad y SeguridadIntroducciónLas restricciones de integridad proporcionan un medio de asegurar que las modificacioneshechas a la base de datos por los usuarios autorizados no provoquen la perdida de laconsistencia de los datos. Por tanto, las restricciones de integridad protegen a la base de datoscontra los daños accidentales.Lo habitual en este sentido es limitarse a restricciones de integridad que puedan verificarse conuna sobrecarga minima, para el efecto también se puede aplicar la técnica de disparadores loque ayuda en la validación de la seguridad e integridad. Otro aspecto a ser considerado radicatambién en la protección que se debe considerar frente a los accesos no autorizados para deesta manera reducir o eliminar los posibles daños.Restricciones sobre atributosDefinición de DominioEl asociar un dominio a cada atributo restringe el conjunto de valores que puede tomar eseatributo.Ejemplo:“El tipo de publicación únicamente puede ser Novela, Cuento, Teatro o Poesía”.• Dominios:Dom_tipo : {Novela, Cuento, Teatro, Poesía, ...}• Publicaciones:Publicación(id_lib:dom_id_lib, título:dom_título, tipo:dom_tipo,autor_id:dom_autor_id);Las restricciones de los dominios son la forma más simple de restricción de integridad. Seespecifica para cada atributo un dominio de valores posibles.Una definición adecuada de las restricciones de los dominios no sólo permite verificar losvalores introducidos en la base de datos sino también examinar las consultas para asegurarsede que tengan sentido las comparaciones que hagan.Por ejemplo, normalmente no se considerará que la consulta “Hallar todos los clientes quetengan el nombre de una sucursal” tenga sentido. Por tanto, nombre-cliente y nombre-sucursaldeben tener dominios diferentes.La cláusula check de SQL:1999 permite restringir los dominios de maneras poderosas que nopermiten la mayor parte de los sistemas de tipos de los lenguajes de programación.La cláusula check permite especificar un predicado que debe satisfacer cualquier valorasignado a una variable cuyo tipo sea el dominio. Por ejemplo:Número de cifrasNúmero de decimalescreate domain sueldo-por-hora numeric(4,2)constraint comprobación-valor-sueldo check(value ≥ 6.00)Según [Korth y Silberschatz]Restricciones de dominioLos límites de dominios son la forma más elemental de restricciones de integridad. Son fácilesde probar por el sistema siempre que se introduce un nuevo dato en la base de datos.Es posible que varios atributos tengan el mismo dominio. Por ejemplo, los atributos nombre-cliente y nombre empleado podrían tener el mismo dominio, el conjunto de todos los nombresde personas. Sin embargo los dominios de saldo y nombre-sucursal, por supuesto, deben serdistintos. En el nivel de implementación, los nombres de cliente y los nombres de sucursal son 1
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALcadenas de caracteres. Podemos ver que una definición adecuada de restricciones de dominiono sólo nos permite probar valores insertados en la base de datos sino que también nospermite probar consultas para asegurar que la comparación que se hace tiene sentido.Las restricciones de dominio especifican que el valor de cada atributo A debe ser un valoratómico del dominio dom(A) para ese atributo. Los tipos de datos asociados a los dominios porlo general incluyen los tipos de datos numéricos estándar de los números enteros (comoentero- corto, entero, entero-largo) y reales (flotante y flotante de doble precisión). Tambiéndisponemos de caracteres, cadenas de longitud fija y cadenas de longitud variable, así comotipos de datos de fecha, hora, marca de tiempo y dinero. Otros dominios posibles se puedendescribir mediante un intervalo de valores de un tipo de datos o como un tipo de datosenumerado en el que se listan explícitamente todos los valores posibles.Restricción de Valores NulosPara determinado atributos, los valores nulos pueden ser inapropiados. Considérese una tuplaen la relación cliente la que nombre-cliente es un valor vació. Una tupla de este tipo da unacalle y una ciudad para un cliente anónimo y, por tanto, no contiene información útil. En casoscomo éste, deseamos prohibir los valores nulos, restringiendo el dominio de ciudad-cliente paraque excluya los valores nulos.El SQL estándar permite que la declaración del dominio de un atributo incluya la especificaciónnot null . Esto prohíbe la inserción de un valor nulo para este atributo. Cualquier modificaciónde la base de datos que causara que se insertase un valor nulo en un dominio not null generaun diagnóstico de error.Hay muchas situaciones en las que la prohibición de valores nulos es deseable. Un casoparticular en el que es esencial prohibir los valores nulos es en la clave primaria de unesquema de relaciónRestricciones de existenciaDentro de las restricciones de los dominios, un tipo especial de restricción que se puede aplicara cualquier dominio es la restricción de existencia.Esta restricción evita la aparición de valores nulos en las columnas.Restricción de Valor No NuloLa definición de una restricción de valor no nulo sobre un conjunto de atributos K de larelación R expresa la siguiente propiedad: “no debe haber en R una tupla que tenga el valornulo en algún atributo de K”.Si muchos de los tributos no se aplican a todas las tuplas de la relación, se acabará con ungran número de nulos en esas tuplas. Esto puede originar un considerable desperdicio en elnivel de almacenamiento y posiblemente dificultar el entendimiento del significado de losatributote y la especificación de operaciones de Reunión con en el nivel lógico. Otro problemacon los nulos es cómo manejarlos cuando se aplican funciones agregadas como COUNT oSUM. Además, los nulos pueden tener múltiples interpretaciones, como los siguientes:• El atributo no se aplica a esta tupla• Se desconoce el valor del atributo para esta tupla.• El valor se conoce pero está ausente; esto es, todavía no se ha registrado.Tener la misma representación para todos los nulos puede hacer que se confundan losdiferentes significados que podrían tener. Por tanto, hasta donde sea posible, evite incluir enuna relación base atributos cuyos valores puedan ser nulos. Si no es posible evitar los nulos,asegúrese de que se apliquen sólo en casos excepcionales. 2
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALEjemplo: VNN: { título }“No debe haber en Publicación una tupla que tenga el valor nulo en algún atributo de título”.Formalmente esta restricción se define como:∀t:Publicación ( nulo(t.título))Restricción de aserciónUna Técnica más formal para representar restricciones explícitas es con un lenguaje deespecificación de restricciones , que suele basarse en alguna variación del cálculo relacional.Este enfoque declarativo establece una separación clara entre la base de restricciones (enla que las restricciones se almacenan en una forma codificada apropiada) y el subsistema decontrol de integridad del SGBD (que tiene acceso a la base de restricciones para aplicarestas últimas correctamente a las transacciones afectadas).Cuando se usa esta técnica, las restricciones suelen llamarse aserciones . Se ha sugerido eluso de esta estrategia con SGBD relaciónales. El subsistema de control de integridad compilalas aserciones, que entonces se almacenan en el catalogo del SGBD, donde el subsistema decontrol de integridad puede consultarlas e imponerlas automáticamente. Esta estrategia es muyatractiva desde el punto de vista de los usuarios y programadores por su flexibilidad.Según [Elmasri / Navathe ]Las restricciones de integridad protegen la base de datos contra daños accidentales. Una basede datos almacena información sobre alguna parte del mundo real, a la que denominamos ouniverso de discurso . Ciertas reglas, las restricciones de integridad, gobiernan el minimundo.Cuando diseñamos un esquema para una aplicación de base de datos particular, una actividadimportante consiste en identificar las restricciones de integridad que se deben cumplir en labase de datos.Restricciones de unicidadLa definición de una restricción de unicidad sobre un conjunto de atributos K de la relación Rexpresa la siguiente propiedad: “no debe haber en R dos tuplas que tengan el mismo valor entodos los atributos del conjunto K”.Ejemplo: Uni: {id_lib}“No debe haber en Publicación dos tuplas que tengan el mismo valor en el atributo id_lib”.Formalmente esta restricción se define como: (∃t1:Publicación (∃t2:Publicación (t1≠t2 ∧t1.id_lib = t2.id_lib∧ nulo(t1.id_lib) ∧ nulo( t2.id_lib))))Otro tipo especial de restricción que se puede aplicar a cualquier dominio es la restricción deunicidad.Esta restricción evita la aparición de valores duplicados en las columnas.Por ejemplo:Sólo se admite una sucursal en cada ciudad.CREATE TABLE Sucursales(nombre-sucursal VARCHAR(20),ciudad-sucursal VARCHAR(20) NOT NULL, - Restricción de existenciaPRIMARY KEY(nombre-sucursal)UNIQUE (ciudad-sucursal)) - Restricción de unicidadBases de datos y sistemas de informaciónClave PrimariaLas claves se usan para acceder a las tablas, y existen dos tipos: Claves primarias y Clavesforáneas. Una Clave primaria identifica unívocamente a un registro en una tabla, mientras que 3
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALuna Clave foránea accede a la información de otra tabla relacionada por medio de una Claveprimaria.Claves ForáneasLas claves se usan para acceder a las tablas: Claves primarias y Claves foráneas. Una Claveprimaria identifica únicamente un registro en una tabla, mientras que una Clave foránea accededatos en alguna otra tabla relacionada por su Clave primaria.Las claves foráneas se representan en el UML de Enterprise Architect usando operacionesestereotipadas. Una Clave foránea es una colección de columnas (atributos) que en conjuntotienen algún significado operacional (fuerzan una relación a una Clave primaria en otra tabla).Una clave foránea se modela como una operación estereotipada con el estereotipo FK; losparámetros de la operación pasan a ser las columnas involucradas en la clave.Tenga en Cuenta: Es necesario definir una Clave foránea para acceder otra tabla a través desu Clave primaria. Las Claves primarias son una característica de algunos sistemas deadministración de basededatos, proporcionando "extras" como verificación de integridadreferencial que previene la eliminación de un registro si su valor de clave primaria existe enalguna otra clave foránea de la tabla. La mismas cosas se pueden obtenerprogramáticamente.Para crear una clave foránea, haga clic en el vínculo.También puede tener que definir una plantilla de nombre para las claves foráneas.Integridad ReferencialSegún [Korth y Silberschatz]A menudo queremos asegurar que un valor que aparece en una relación para un conjunto deatributos dado también aparece para un cierto conjunto de atributos en otra relación. Esto sellama integridad referencial.Las restricciones de integridad referencial se representan frecuentemente. Si obtenemos elesquema de base de datos relacional construyendo tablas desde diagramas E-R, entoncestodas las relaciones que surgen de un conjunto de relaciones tienen restricciones de integridadreferencial. Un conjunto de relaciones n-ario R, referente a los conjunto de entidades E1, E2, …,En. Ki representa la clave primaria de Ei. Los atributos del esquema de relaciones para elconjunto de relaciones R incluyen K1 È K2 È … È Kn. Cada Ki del esquema de R es una claveexterior que conduce a una restricción de integridad referencialSegún [Elmasri / Navathe]La restricción de integridad referencial se especifica entre dos relaciones y sirve para mantenerla consistencia entre tuplas de las dos relaciones. En términos informales, la restricción deintegridad referencial establece que una tupla en una relación que haga referencia a otrarelación deberá referirse a una tupla existente en esa relación. Por ejemplo, en la fig. 3.17 elatributo ND de EMPLEADO da el número del departamento para el cual trabaja cadaempleado; por tanto, su valor en cada tupla de EMPLEADO deberá coincidir con el valor deNÚMEROD en alguna tupla de la relación DEPARTAMENTO.EMPLEADONOMBREE NSS FECHAN DIRECCIÓN NDSilva, José B. 123456789 09-ENE-55 Fresnos 731, Higueras, MX 5Vizcarra, Federico 333445555 08-DIC-45 Valle 638, Higueras, MX 5Zapata, Alicia J. 999887777 19-JUL-58 Castillo 3321, Sucre, MX 4 4
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALValdés, Jazmín S. 987654321 20-JUN-31 Bravo 291, Belén, MX 4Nieto, Ramón K 666884444 15-SEP-52 Espiga 957, Heras, MX 5Esparza, Josefa A. 456456456 31-JUL-62 Rosas 5631, Higueras, MX 5Jabbar, Ahmed V. 987987987 29-MAR-59 Dalias 980, Higueras, MX 4Botello, Jaime E. 888665555 10-NOV-27 Sorgo 450, Hogueras, MX 1DEPARTAMENTO NÚMEROD NSSGTEDNOMBREDInvestigación 5 333445555Administración 4 987654321Dirección 1 888665555Figura 3.17. Ejemplos de relaciones EMPLEADO y DEPARTAMENTOResumenA menudo queremos asegurar que un valor que aparece en una relación para un conjunto deatributos dado también aparece para un cierto conjunto de atributos en otra relación. Esto sellama integridad referencial.En términos informales, la restricción de integridad referencial establece que una tupla en unarelación que haga referencia a otra relación deberá referirse a una tupla existente en esarelación. Por ejemplo, en la fig. 3.17 el atributo ND de EMPLEADO da el número deldepartamento para el cual trabaja cada empleado; por tanto, su valor en cada tupla deEMPLEADO deberá coincidir con el valor de NÚMEROD en alguna tupla de la relaciónDEPARTAMENTO.NOMBREE NSS FECHAN DIRECCIÓN NDSilva, José B. 123456789 09-ENE-55 Fresnos 731, Higueras, MX 5Vizcarra, Federico 333445555 08-DIC-45 Valle 638, Higueras, MX 5Zapata, Alicia J. 999887777 19-JUL-58 Castillo 3321, Sucre, MX 4Valdés, Jazmín S. 987654321 20-JUN-31 Bravo 291, Belén, MX 4Nieto, Ramón K 666884444 15-SEP-52 Espiga 957, Heras, MX 5Esparza, Josefa A. 456456456 31-JUL-62 Rosas 5631, Higueras, MX 5Jabbar, Ahmed V. 987987987 29-MAR-59 Dalias 980, Higueras, MX 4Botello, Jaime E. 888665555 10-NOV-27 Sorgo 450, Hogueras, MX 1NOMBRED NÚMEROD NSSGTEDInvestigación 5 333445555Administración 4 987654321Dirección 1 888665555Figura 3.17. Ejemplos de relaciones EMPLEADO y DEPARTAMENTO• Reglas de RelaciónSegún [Elmasri / Navathe]• Orden de las tuplas en una relación: una relación se define como un conjunto de tuplasmatemáticamente, los elementos de un conjunto no están ordenados; por tanto, las tuplas deuna relación no tienen orden específico. 5
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALEl ordenamiento de las tuplas no forma parte de la definición de una relación, porque larelación intenta representar los hechos en un nivel lógico abstracto.• Orden de los valores dentro de una tupla, y definición alternativa de relación: Una tupla esuna lista ordenada de n valores, así que el orden de los valores de una tupla y por tanto de losatributos en la definición de un esquema de relación es importante. No obstante, en un nivellógico, el orden de los atributos y de sus valores en realidad no es importante en tanto semantengas la correspondencia entre atributos y valores.• Valores en las Tuplas: Cada valor en una tupla es un valor atómico; esto es, no es divisibleen componentes en lo que respecta al modelo relacional. Por ello no se permiten valorescompuestos ni multivaluados.Reglas de base de datosSegún [Elmasri / Navathe]• Una base de datos representa algún aspecto del mundo real, en ocasiones llamadominimundo o universo de discurso. Las modificaciones del minimundo se reflejan en la basede datos.• Una base de datos es un conjunto de datos lógicamente coherente, con cierto significadoinherente. Una colección aleatoria de datos no puede considerarse propiamente una base dedatos.• Toda base de datos se diseña, construye y prueba con datos para un propósito específico.Esta dirigida a un grupo de usuarios y tiene ciertas aplicaciones preconcebidas que interesan adichos usuarios.En otras palabras, una base de datos tiene una fuente de la cual se derivan los datos, ciertogrado de interacción con los acontecimientos del mundo real y un público que está activamenteinteresado en el contenido de la base de datos.• Reglas de negociosSegún [Elmasri / Navathe]Una base de datos almacena información sobre alguna parte del mundo real, a la quedenominamos minimundo o universo de discurso. Ciertas reglas, las restricciones deintegridad, gobiernan el minimundo, y suelen recibir el nombre de reglas de negocios. Cuandodiseñamos un esquema para una aplicación de base de datos particular, una actividadimportante consiste en identificar las restricciones de integridad que se deben cumplir en labase de datos.Según [ David M. Kroenke]El último elemento de un esquema de base de datos son las reglas de negocios. Sonrestricciones en las actividades de negocios que necesitan reflejarse en la base de datos y ensus aplicaciones. Los siguientes son ejemplos de reglas de negocios paraHighline Collage: 1. Para pedir prestado cualquier equipo, un capitán debe tener un número de teléfono local. 2. Ningún capitán puede tener prestadas a la vez más de siete pelotas de soccer. 3. Los capitanes deben regresar todo el equipo dentro de los cinco días posteriores al final de cada semestre. 4. Ningún capitán puede pedir prestado más equipo si tiene algún material vencido. 6
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALLas reglas de negocios son una parte importante del esquema porque especifican laslimitaciones sobre los valores de datos permitidos que deben cumplirse, sin importar la formaen la que los cambios en los datos llegan al motor DBMS. Sin tomar en cuenta si una solicitudno válida de un cambio de datos viene del usuario de una forma, de una solicitud deconsulta/actualización o de un programa de aplicación, el DBMS lo debe rechazar.Los actuales productos DBMS sólo ofrecen un cumplimiento limitado de las reglas de negocios,de modo que la mayor parte de las reglas deben cumplirse mediante programas de aplicación yprocedimientos llevados a cabo por el usuario. La situación está cambiando y se estándesarrollando productos DBMS para cumplir las reglas de negocios.ResumenLas reglas de negocios son restricciones en las actividades de negocios que necesitanreflejarse en la base de datos y en sus aplicaciones. Los siguientes son ejemplos de reglas denegocios paraHighline Collage: 1. Para pedir prestado cualquier equipo, un capitán debe tener un número de teléfono local. 2. Ningún capitán puede tener prestadas a la vez más de siete pelotas de soccer. 3. Los capitanes deben regresar todo el equipo dentro de los cinco días posteriores al final de cada semestre. 4. Ningún capitán puede pedir prestado más equipo si tiene algún material vencido.Las reglas de negocios son una parte importante del esquema porque especifican laslimitaciones sobre los valores de datos permitidos que deben cumplirse, sin importar la formaen la que los cambios en los datos llegan al motor DBMS. Sin tomar en cuenta si una solicitudno válida de un cambio de datos viene del usuario de una forma, de una solicitud deconsulta/actualización o de un programa de aplicación, el DBMS lo debe rechazar.Restauración de la Integridad referencialLa regla de integridad referencial se enmarca en términos de estados de la base de datos: nosdice lo qué es un estado ilegal ¡¡pero no nos dice cómo podemos evitarlo!!¿Qué hacer si estando en un estado legal, llega una operación que conduce a un estadoilegal? Existen dos opciones:• Rechazar la operación.• Aceptar la operación y realizar operaciones adicionales compensatorias que conduzcan a unestado legal.Es tarea del diseñador de la base de datos indicar qué operaciones sedeben rechazar y cualesrequieren operaciones adicionales, u operaciones de compensación. 7
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALRegla de los nulos: ¿Tiene sentido que la clave ajena acepte nulos?Regla de borrado: ¿Qué hacer si se intenta borrar la tupla a la que hace referencia una claveajena?• Restringir• Propagar• AnularRegla de modificación: ¿Qué hacer si se intenta modificar el valor dela clave primaria de la tupla a la que hace referencia una clave ajena?• Restringir• Propagar• AnularDiccionario de bases de datosEl diccionario de datos guarda y organiza los detalles del Diagrama de Flujo de Datos (DFD).Es el segundo componente del análisis estructurado. También se conoce como "DataRepository". Incluye el contenido de los data flow (flujos de datos), los "data store", lasentidades externas y los procesos.3.6.1 ConceptoSegún [David M. Kroenke]Un diccionario de datos es una herramienta de importancia para el administrador de la base dedatos, es un catalogo accesible para el usuario de datos relacionados. Con la base de datos.Según [Elmasri/Navathe]Con el termino de diccionario de datos suele designarse una utilería de software más generalque un catalogo. Los sistemas de diccionario de datos sirven para mantener informaciónrelativa al hardware y software, la documentación y los usuarios del sistema, así como otrainformación pertinente para la administración del sistema.ResumenLos sistemas de diccionario de datos sirven para mantener información relativa al hardware ysoftware, la documentación y los usuarios del sistema, así como otra información pertinentepara la administración del sistema. Es un catalogo accesible para el usuario de datosrelacionados Con la base de datos. 8
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONAL3.6.2 Contenido y funciónSegún [Korth y Silberschatz]El diccionario de datos almacena información acerca de la estructura de la base de datos, y lainformación de autorización, y datos acerca de las relaciones.Tipos de información que el sistema debe almacenar están:• Los nombres de las relaciones.• Los nombres de los atributos de cada relación.• Los dominios de los atributos.• Los nombres de las vistas definidas en la base de datos y la definición de esas vistas.• Las restricciones de integridad de cada relación (por ejemplo, las restricciones e clave).Además de esto, muchos sistemas conservan los datos siguientes de los usuarios del sistema:• Nombres de los usuarios autorizados.• Información contable acerca de los usuarios.En los sistemas que utilizan estructuras altamente sofisticadas para almacenar relaciones,pueden conservarse datos estadísticos y descriptivos acerca de las relaciones:• Número de tuplas en cada relación.• Método de almacenamiento utilizado para cada relación (por ejemplo, agrupado o sinagrupar).TiposSegún [Elmasri/Navathe]Diccionario de datos Activo: Es un diccionario cuyas entradas son modificadas en formaautomática por el software, siempre que ocurran modificaciones en la escritura de la base dedatos.Diccionario de datos Pasivo: necesitan ser actualizados en forma separada, para hacermodificaciones en la base de datos, de lo contrario no reflejarán con exactitud el estado de labase de datos.Los diccionarios de datos Activos cuestan más, pero aseguran se actualicen; no estándisponibles con todos los productos DBMS.Los diccionarios de datos pasivos son menos costosos que los activos, pero se requiere demayor esfuerzo para mantenerlos actualizados. Cualquiera de ellos es una gran ayuda al DBApara registrar y rastrear nombres, formatos, relaciones y referencias cruzadas de los datos.Estructura de un Diccionario de datos (Data Dictionary)Data elements (elementos de datos) Es la parte más pequeña de los datos que tiene significado en el sistema deinformación. Se combinan varios elementos de datos para hacer los records o "data structures".Ejemplo: nombre, dirección, seguro social.Data Structure (Estructura de datos) También se conocen como record. Es la combinación de elementos de datosrelacionados que se incluye en un flujo de datos o se retiene en un "data store".Documentación:Data elements - Las características que se describen en el diccionario de datos son:1. Name - Es el nombre del elemento de datos; debe ser significativo.2. Alias - Cualquier otro nombre que se pueda usar para referirse al elemento de datos. Por ejemplo, el nombre de un elemento de datos puede ser Balance actual, y el alias puede ser Deuda. Solo se incluye el alias si realmente es necesario utilizarlo. 9
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONAL3. Type y Size - Type o tipo se refiere a si el elemento de datos contiene valor numérico, caracteres o alfabético. Size o tamaño se refiere al máximo de caracteres o de dígitos que puede tener el elemento de datos.4. Output format or edit mask - Indica cómo se presenta el dato al mostrarse en pantalla o al imprimirse en un reporte. Por ejemplo, el número de teléfono del cliente se puede guardar en el disco usando solo números 7878889999, pero presentarse editado en la pantalla o en el reporte (787) 888-9999.5. Default value - Es el valor que el elemento de datos tiene si no se cambia entrando otro valor.6. Prompt, column header or field caption - Es el nombre que se presenta en la pantalla o el título del dato en el reporte.7. Source - De dónde se origina el valor del elemento de datos. Puede ser una forma, un departamento, otro sistema, etc.8. Security - Identifica los individuos o departamentos que pueden modificar el elemento de datos. Por ejemplo, la línea de crédito puede ser cambiada por el gerente de crédito.9. Responsible user(s) - Identifica el (los) usuarios responsables de entrar o cambiar los valores del elemento de datos.10. Acceptable Data and Data validation - Se especifica el dominio o valores permitidos. Pueden ser valores específicos, una lista de valores, los valores que se encuentren en otro archivo, etc. El valor puede tener reglas de validación; por ejemplo, el salario debe estar entre lo permitido para la posición que el empleado ocupa.11. Derivation formula - Si el valor es el resultado de un cálculo, se muestra la fórmula que se utiliza.12. Description or comments - Para proveer información adicional, notas o descripciones.Data flows (Flujo de datos) - Las características que se describen en el flujo de datos son:1. Name – El nombre del flujo de datos tal y como aparece en el DFD.2. Alias – Otro nombre con que se conozca el flujo de datos.3. Abbreviation or ID – Código que provee acceso rápido al flujo de datos en un diccionario de datos automatizado.4. Description – Describe el flujo de datos y su propósito.5. Origin – De donde sale (la fuente) el flujo de datos. Puede ser un proceso, un “data store” o una entidad.6. Destination – El punto final del flujo de datos en el DFD. Puede ser un proceso, un “data store” o una entidad.7. Record – Cada flujo de datos representa un grupo de elementos de datos relacionados, o un record. Los records y los flujos de datos se definen por separado para que más de un flujo de datos o “data store” pueda hacer referencia al mismo record.8. Volume and frequency – Describe el número esperado de ocurrencias para el flujo de datos por unidad de tiempo.“Data store” – Las características que se describen en el “data store” son:1. Name – El nombre del “data store” según aparece en el DFD.2. Alias – Otro nombre con el que se pueda llamar al “data store”.3. Abbreviation or ID – Código que provee un acceso rápido al “data store” en un diccionario de datos automatizado.4. Description – Describe el “data store” y su propósito.5. Input data flows – Los nombres de los flujos de datos que entran al “data store”.6. Output data flows – Los nombres de los flujos de datos que salen del “data store”.7. Record – El nombre del record en el diccionario de datos para el “data store”.8. Volume and Frequency – El número estimado de records guardados en el “data store”, al igual que el aumento o cambio esperado. 10
  • “Escuela Militar de Ingeniería” Mcal. Antonio José de SucreBase de Datos IIAnálisis de Sistemas Ing. Osamu Yokosaki INTEGRIDAD DE UNA BASE DE DATOS RELACIONALProceso – Se documenta cada función primitiva. Se incluye:1. Process name or label – El nombre del proceso como aparece en el DFD.2. Purpose or description – Un resumen del propósito general del proceso. Los detalles se documentan en el Process Description.3. Process number – Número de referencia que identifica el proceso y su relación con los niveles del sistema.4. Input data flows – Los nombres de los flujos de datos que entran al proceso.5. Output data flows – Los nombres de los flujos de datos que salen del proceso.6. Process Description – Se explican los detalles del proceso.Entidades Externas – Las características que se describen son:1. Name2. Alias3. Description – Describe a la entidad y su propósito.4. Input data flow5. Output data flowRecord – Se describe lo siguiente:1. Record name2. Alias3. Description4. Record content or composition – Una lista de todos los elementos de datos incluidos en el record. Se identifica cualquier “key” primario, o sea un elemento de datos en el record que identifica en forma única al record. 11