sábado, 29 de septiembre de 2012

2.9 La notacion E-R con UML.



El Lenguaje Unificado de Modelado preescribe un conjunto de notaciones y diagramas estándar para modelar sistemas orientados a objetos, y describe la semántica esencial de lo que estos diagramas y símbolos significan. Mientras que ha habido muchas notaciones y métodos usados para el diseño orientado a objetos, ahora los modeladores sólo tienen que aprender una única notación.

UML se puede usar para modelar distintos tipos de sistemas: sistemas de software, sistemas de hardware, y organizaciones del mundo real. UML ofrece nueve diagramas en los cuales modelar sistemas.


• Diagramas de Casos de Uso para modelar los procesos ’business’.
• Diagramas de Secuencia para modelar el paso de mensajes entre objetos.
• Diagramas de Colaboración para modelar interacciones entre objetos.
• Diagramas de Estado para modelar el comportamiento de los objetos en el sistema.
• Diagramas de Actividad para modelar el comportamiento de los Casos de Uso, objetos u operaciones.
• Diagramas de Clases para modelar la estructura estática de las clases en el sistema.
• Diagramas de Objetos para modelar la estructura estática de los objetos en el sistema.
• Diagramas de Componentes para modelar componentes.
• Diagramas de Implementación para modelar la distribución del sistema.


UML es una consolidación de muchas de las notaciones y conceptos más usadas orientados a objetos.
Empezó como una consolidación del trabajo de Grade Booch, James Rumbaugh, e Ivar Jacobson, creadores de tres de las metodologías orientadas a objetos más populares.
En 1996, el Object Management Group (OMG), un pilar estándar para la comunidad del diseño orientado a objetos, publicó una petición con propósito de un meta modelo orientado a objetos de semántica y notación estándares. UML, en su versión 1.0, fue propuesto como una respuesta a esta petición en enero de 1997. Hubo otras cinco propuestas rivales. Durante el transcurso de 1997, los seis promotores de las propuestas, unieron su trabajo y presentaron al OMG un documento revisado de UML, El OMG llama a este documento OMG UML versión 1.1. El OMG está actualmente en proceso de mejorar una
edición técnica de esta especificación, prevista su finalización para el 1 de abril de 1999.


UML ofrece notación y semántica estándar:

UML preescribe una notación estándar y semánticas esenciales para el modelado de un sistema orientado
a objetos. Previamente, un diseño orientado a objetos podría haber sido modelado con cualquiera de la
docena de metodologías populares, causando a los revisores tener que aprender las semáticas y
notaciones de la metodología empleada antes que intentar entender el diseño en sí. Ahora con UML,



UML no es un Método:

Aun así, UML no preescribe un proceso o método estándar para desarrollar un sistema. Hay varias metodologías existentes; entre las más populares se incluyen las siguientes:


• Catalysis: Un método orientado a objetos que fusiona mucho del trabajo reciente en métodos
orientados a objetos, y además ofrece técnicas específicas para modelar componentes distribuidos.
• Objetory: Un método de Caso de Uso guiado para el desarrollo, creado por Ivar Jacobson.
• Shlaer/Mellor: El método para diseñar sistemas de tiempo real, puesto en marcha por Sally Shlaer y
Steven Mellor en dos libros de 1991, Ciclos de vida de Objetos, modelando el Mundo en Estados y
Ciclos de vida de Objetos, Modelando el mundo en Datos (Prentice Hall). Shlaer/Mellor countinúan
actualizando su método continuamente (la actualización más reciente es el OOA96 report), y
recientemente publicaron una guía sobre cómo usar la notación UML con Shlaer/Mellor.
• Fusion: Desarrollado en Hewlett Packard a mediados de los noventa como primer intento de un
método de diseño orientado a objetos estándar. Combina OMT y Booch con tarjetas CRC y métodos
formales. (www.hpl.hp.com/fusion/file/teameps.pdf)
• OMT: La Técnica de Modelado de Objetos fue desarrollada por James Rumbaugh y otros, y publicada
en el libro de gran influencia "Diseño y Modelado Orientado a Objetos" (Prentice Hall, 1991). Un
método que propone análisis y diseño ’iterative’, más centrado en el lado del análisis.
• Booch: Parecido al OMT, y también muy popular, la primera y segunda edición de "Diseño Orientado
a Objetos, con Aplicaciones" (Benjamin Cummings, 1991 y 1994), (Object-Oriented Design, With
Applications), detallan un método ofreciendo también diseño y análisis ’iterative’, centrándoso en el
lado del diseño.


Además, muchas organizaciones han desarrollado sus propias metodologías 
internas, usando diferentes
diagramas y técnicas con orígenes varios. 



Extensiones UML:


Los mecanismos de de extensibilidad incorporados permiten a UML ser una especie de especificación abierta que puede cubrir aspectos de modelado no especificados en el documento 1.1. Estos mecanismos permiten extender la notación y semática de UML.


Esteroetipos:

Los estereotipos son el mecanismo de extensibilidad incorporado más utilizado dentro de UML. Un estereotipo respresenta una distinción de uso. Puede ser aplicado a cualquier elemento de modelado, incluyendo clases, paquetes, relaciones de herencia, etc. Por ejemplo, una clase con estereotipo ’actor’ es una clase usada como un agente externo en el modelado de negocio. Una clase patrón es modelada como una clase con estereotipo parametrizado, lo que significa que puede contener parámetros.

Extensiones de Modelado de Negocio:

Un documento separado dentro de la especificación UML define clases y estereotipos de asociación específicos que extienden UML hasta cubrir conceptos de modelado de negocio. Esto incluye ’stereotyping’ una clase como un actor, un trabajador (’both internal and case’), o una entidad, y ’stereotyping’ una asociación como una comunicación simple, o una subcripción entre un origen y un objetivo.

Lenguaje restrictivo (constraint) de objetos (OCL):

Una imagen puede describir muchas palabras. De igual modo, un modelo gráfico puede describir una cierta parte del comportamiento, después de la cual es necesario rellenar detalles adicionales con palabras. Describiendo algo con palabras, sin embargo, casi siempre desemboca en ambigüedades. (OCL) está incorporado en UML como un estándar para especificar detalles adicionales, o precisar detalles en la estructura de los modelos.

A  continuación los diagramas que se usaran son:

















2.8 Otros aspectos del diseño se base de datos.


Dominio:
A veces es conveniente añadir información sobre el dominio de un atributo, los dominios se representan mediante hexágonos, con la descripción del dominio en su interior.

Diagrama:
Un diagrama E-R consiste en representar mediante estas figuras un modelo completo del problema, proceso o realidad a describir, de forma que se definan tanto las entidades que lo componen, como las interrelaciones que existen entre ellas.La idea es simple, aparentemente, pero a la hora de construir modelos sobre realidad es concreta cuando surgen los problemas. La realidad es siempre compleja. Las entidades tienen muchos atributos diferentes, de los cuales debemos aprender a elegir sólo los que necesitemos. Lo mismo cabe decir de las interrelaciones. 


Interrelación:
es la asociación o conexión entre conjuntos de entidades.Tengamos los dos conjuntos: de personas y de vehículos. 

Grado:
número de conjuntos de entidades que intervienen en una interrelación.De este modo, en la anterior interrelación intervienen dos entidades, por lo que diremos que es de grado 2 o binaria. También existen interrelaciones de grado  Pero las más frecuentes son las interrelaciones binarias.Podemos establecer una interrelación ternaria (de grado tres). Existen además tres tipos distintos de interrelaciones binarias, dependiendo del número de entidades del primer conjunto de entidades y del segundo. Así hablaremos de interrelaciones 1:1 (uno a uno), 1:N (uno a muchos) y N:M (muchos a muchos). 


Clave:
es un conjunto de atributos que identifican de forma unívoca una entidad. Es muy importante poder identificar claramente cada entidad y cada interrelación. Esto es necesario para poder referirnos a cada elemento de un conjunto de entidades o interrelaciones, ya sea para consultarlo, modificarlo o borrarlo. No deben existir ambigüedades en ese sentido.


Claves candidatas:
Una característica que debemos buscar siempre en las claves es que contengan el númeromínimo de atributos, siempre que mantengan su función. Diremos que una clave es mínimacuando si se elimina cualquiera de los atributos que la componen, deja de ser clave. Si enuna entidad existe más de una de estas claves mínimas, cada una de ellas es una
clavecandidata


Claves de interrelaciones:
Para identificar interrelaciones el proceso es similar, aunque más simple. Tengamos en cuenta que para definir una interrelación usaremos las claves primarias de las entidades interrelacionadas. De este modo, el identificador de una interrelación es el conjunto de las claves primarias de cada una de las entidades interrelacionadas.

Superclave:
Es un subconjunto de atributos que permite distinguir unívocamente cada una de las entidades de un conjunto de entidades. Si se añade un atributo al anterior subconjunto, el resultado seguirá siendo una super clave.


Clave primaria (Llave Primaria)
Es la clave candidata escogida por el diseñador. Atributo o conjunto de atributos que permiten identificar en forma única una tupla en la tabla (una entidad en un conjunto de entidades) y ningún subconjunto de ella posee esta propiedad.

Llave foránea: 
Es un atributo que es llave primaria en otra entidad con la cual se relaciona. Las llaves foráneas son en últimas las que permiten relacionar las tablas en las bases de datos.

Las llaves primarias se subrayan en el diagrama E-R.
Claves (Llaves): Atributos que identifican una entidad dentro de un conjunto de entidades.








http://es.scribd.com/doc/54024402/Diseno-Base-de-datos-relacional-Diagrama-entidad-relacion
http://www.virtual.unal.edu.co/cursos/sedes/manizales/4060029/lecciones/cap2-2.html




2.7 MODELO E-R EXTENDIDO.

El Modelo Entidad-Relación Extendido incluye todos los conceptos del Entidad-Relación e incorpora los conceptos de Subclase y superclase con los conceptos asociados de Especialización y Generalización.

 Subclases, Superclases y Especialización:

En el modelo Entidad-Relación, una entidad agrupa un conjunto de ocurrencias de entidad del mismo tipo. En muchos casos, estas ocurrencias se pueden agrupar a su vez en otros subconjuntos que tienen un significado propio para los propósitos de la Base de Datos y, por tanto, deberían representarse de forma explícita.

Una generalización se define como una entidad llamada superclase la cual contiene los aspectos más generales de una aplicación y pueden existir tantas superclases como se requiera. Si esas existen se les conoce también con el nombre de entidades fuertes.

La especialización se define como el conjunto de entidades que tienen características más particulares de la aplicación y para estas existan deberá de ocurrir una instancia de la superclase pero no necesariamente ocurrirá ocurrencias de las subclases (entidades débiles).

En el modelo entidad-relación extendido, una entidad agrupa un conjunto de ocurrencias de entidad del mismo tipo, en muchos casos esas ocurrencias tienen un significado propio para la base de datos y se deberán de representar de otra manera. Por ejemplo, la entidad empleado puede a su vez subdividirse en docente y no docente y cada una de estas subdivisiones se le llamaran subclase.

Las subclases deberán de pertenecer a una superclase y podremos tener las relaciones clase/subclase que en el ejemplo anterior las relacionemos con empleado/docente y empleado/no docente.

Debido a que una subclase es a su vez parte de una superclase, la superclase tendrá sus atributos específicos así como los atributos correspondientes a la superclase a la cual pertenece. Si esto existe en un diagrama se dice entonces que existe una herencia. De la misma manera en que se heredan los atributos, las subclases heredarán las relaciones que contenga la superclase.  

El proceso por el cual se definen las diferentes subclases de una superclase se le conoce con el nombre de especialización, y la forma de denotar será la siguiente: se pondrá un circulo y dentro del circulo la letra "d", y el circulo deberá de estar entre la superclase y la subclase. Este circulo podrá unir a mas de dos subclases y la letra "d" significa desunión.

La desunión significa que cada subclase es completamente independiente de las otras y que una instancia de la superclase podrá tener solamente una ocurrencia de una subclase.

Generalización:
 Se da cuando se tienen varias entidades con características comunes y pueden crearse una entidad superior que tenga la información general de la aplicación. En otras palabras la generalización es el proceso inverso de la especialización.

Restricción de desunión:
 Las restricciones de desunión especifica que las subclases de las especialización deben de estar separadas. Esto significa que una ocurrencia de la subclase puede ser miembro de como máximo una de las subclases de la especialización si esta ocurre se denota la desunión con una letra "d", si la desunión esta desunida por el usuario, entonces el predicado deberá estar entre el circulo y la entidad.

Si las subclases no son desunidas, entonces se dice que cada superclase puede pertenecer a mas de una subclase y si esto existe se representa mediante la Letra "o" en el circulo y se llamara restricción de totalidad la cual puede ser parcial y total.


Existen a su vez cuatro tipos de especializaciones que son las siguientes:

  • Desunión total o especialización total: que significa que cada superclase debe de pertenecer a una sola subclase. Si eso existe se denota con línea doble antes del circulo.

  • Desunión parcial o especialización parcial: Significa que una superclase no pertenece a una subclase. Si esto existe se denota con línea sencilla antes del circulo.

  • Unión o solapamiento total:  Significa que las superclases pertenecen a todas las subclases y se denota con doble línea antes del circulo.

  • Solapamiento parcial:  Significa que la superclase no va a pertenecer a todas las subclases en un momento dado y se denota con una línea antes del circulo.


Reglas de inserción y borrado para la generalización y especialización:


  • Borrar una dupla de la superclase, implica el borrado automatico en todos las subclases a las que pertenezcan.
  • Insertar una dupla en la superclase, implica que tiene que ser obligatoriamente insertada en todas las subclases definidas por predicado si este existe.
  • Insertar una dupla en la superclase, implica la insercción obligatoria en al menos una de las subclases siempre y cuando exista una especialización total.


Red de especializacion: Significa cuando una subclase puede tener mas de una superclase.

Cardinalidad:
Se define como la forma en la cual se van a poder relacionar las entidades, existiendo cuatros tipos que son los siguientes:

  • De 1 a 1:  Significa que la entidad A va a estar relacionada únicamente con una entidad B.

  • 1 a muchos (N):  Significa que cada instancia en la entidad en A puede tener mas de una correspondencia en la entidad B.

  • N a 1:  Significa que cada instancia de A va a tener una instancia en B.

  • M a N:  Significa que una instancia en A puede tener varias instancias en B y varias ocurrencias en B pueden tener varias ocurrencias en A.






Fuentes:





viernes, 28 de septiembre de 2012

2.6 Conjunto de Entidades Débiles.


ENTIDADES DÉBILES.

Un conjunto de entidades débiles es aquel que no tiene suficientes atributos para formar una clave primaria. Un conjunto que sí tiene una clave primaria se denomina conjunto de entidades fuertes.

Cada conjunto de entidades débiles debe estar asociada con un conjunto de entidades llamado conjunto de entidades identificadoras o propietarias.
 Así, el conjunto de entidades débiles depende existencialmente del conjunto de entidades identificadoras. La relación que asocia el conjunto de entidades débiles con el conjunto de entidades identificadoras se denomina relación identificadora. La relación identificadora es varios a uno del conjunto de entidades débiles al conjunto de entidades identificadoras y la participación del conjunto de entidades débiles en la relación es total.

Aunque un conjunto de entidades débiles no tiene clave primaria, deben hacerse distinguir todas aquellas entidades del conjunto de entidades que dependen de una entidad fuerte particular. El discriminante de un conjunto de entidades débiles es un conjunto de atributos que permiten esta distinción.

La clave primaria de un conjunto de entidades débiles se forma con la clave primaria del conjunto de entidades identificadoras, más el discriminante del conjunto de entidades débiles. 

  El Discriminante: Es un conjunto de atributos que permite que esta distincion se haga. Por ejemplo; el discriminante del conjunto de entidades débiles pago es el atributo número-pago, ya que, para cada préstamo, un número de pago identifica de forma única cada pago para ese préstamo. El discriminante de un conjunto de entidades débiles se denomina la clave parcial del conjunto de entidades.  
La clave primaria de un conjunto de entidades débiles se forma con la clave primaria del conjunto de entidades identificadoras, más el discriminante del conjunto de entidades débiles. Un conjunto de entidades débiles puede participar en relaciones distintas de relaciones identificadoras. 

En algunos casos, el diseñador de la base de datos puede elegir expresar un conjunto de entidades débiles como un atributo compuesto multivalorado del conjunto de entidades propietarias. Un conjunto de entidades débiles se puede modelar más adecuadamente como un atributo si sólo participa en la relación identificadora y si tiene pocos atributos.  

En pocas palabras podemos decir que:      
CONJUNTO DE ENTIDADES DÉBILES: Es aquel conjunto de entidades que no tiene atributos que puedan identificar una entidad en forma única, o sea que no poseen atributos para conformar la llave primaria; por lo tanto dependen de una entidad fuerte.  
Un conjunto de entidades débiles se indica en los diagramas E-R mediante un rectángulo dibujado con una línea doble y la correspondiente relación de identificación mediante un rombo dibujado con línea doble.
Gráficamente se representa así:


CONJUNTO DE ENTIDADES FUERTES: Conjunto de entidades que posee una clave primaria.    



Fuentes: 

jueves, 27 de septiembre de 2012

2.5 Diseño de diagramas E-R.


Diagrama Entidad - Relación.

Es la representación gráfica del Modelo Entidad-Relación y permite ilustrar la estructura de la base de datos del negocio modelado. 
Escribe Johnson "los diagramas ER constituyen una notación para documentar un diseño tentativo de bases de datos. Los analistas los utilizan para facilitar el proceso de diseño".



Componentes y Diagrama E-R

Entidad Fuerte:  Una Entidad fuerte (también conocida como entidad regular) es aquella que sí puede ser identificada unívoca-mente. En los casos en que se requiera, se puede dar que una entidad fuerte "preste" algunos de sus Atributos a una entidad débil para que, esta última, se pueda identificar.


Entidad débil: Es aquella que no puede existir sin participar en la relación, es decir, aquella que no puede ser unívocamente identificada solamente por sus atributos como Clave.


Conjunto de entidades Débiles. Es aquel conjunto de entidades que no tiene atributos que puedan identificar una entidad en forma única, o sea que no poseen atributos para conformar la llave primaria; por lo tanto dependen de una entidad fuerte. 

Conjunto de entidades Fuerte. Conjunto de entidades que posee una clave primaria.



Relaciones: Una entidad se relaciona con otra entidad. Toda relación debe de llevar una cardinalidad. Una relación entre dos entidades siempre se va a dar por medio de un rombo. Cada entidad deberá tener sus elementos.


Atributos: Características o propiedades asociadas al conjunto de entidades o relaciones y que toman valor en una entidad en particular. 
Los posibles valores puede tomar un atributo para un conjunto de entidades se denomina dominio.

Los atributos se pueden clasificar en:


  • - Simples o atómicos: Son aquellos que no contienen otros atributos
  • - Compuestos: Son los que incluyen otros atributos simples.. Ejemplo: dirección (Se puede dividir en calle, número, ciudad). 
  • - Monovalorados o Univalorados: Atributo que toma un solo valor, para una entidad en particular.
  • - Multivalorados: Atributo que para una misma entidad puede tomar muchos valores. 
  • - Derivados o calculados: Son aquellos atributos cuyos valores se pueden conseguir con operaciones sobre valores de otros atributos.
  • - Nulos: Son aquellos atributos para los cuales en algún momento no existe o no se conoce su valor.

Los diagramas son simples y claros, cualidades que pueden ser responsables del amplio uso del modelo E-R. Tal diagrama consta de los siguientes componentes principales:

  • Ectangulos: Representan conjuntos de entidades.
  • Elipses: Representan atributos.
  • Robos: Representan relaciones.
  • Lineas:Unen atributos a conjuntos de entidades y conjuntos de relaciones-
  • Ekipses Dobles:Representan atributos multivalorados.
  • Elipses Discontinuas: Denotan atributos derivados
  • Rectangulos Dobles: Representan conjuntos de etindades debiles.


SimboloMER



2.4 Diagramas E-R.



 Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de un Esquema gráfico empleando los terminología de Entidades, que son objetos que existen y son los elementos principales que se identifican en el problema a resolver con el diagramado y se distinguen de otros por sus características particulares denominadas Atributos, el enlace que rige la unión de las entidades esta representada por la relación del modelo.
En un DER, cada entidad se representa mediante un rectángulo, cada relación mediante un rombo y cada dominio (conjunto donde toma valores el atributo) mediante un círculo. Mediante líneas se conectan las entidades con las relaciones, igual que las entidades con los dominios, representando a los atributos. Los Atributos Llaves se representan subrayando el correspondiente conjunto de valores.
En ocasiones, una entidad no puede ser identificada únicamente por el valor de sus propios atributos. En estos casos, se utilizan conjuntamente las relaciones con los atributos para lograr la requerida identificación unívoca. Estas entidades reciben el nombre de entidades débiles y se representan en el DER con un doble rectángulo. El MER restringe las relaciones a usar para identificar las entidades débiles a relaciones binarias del tipo 1: N. Así, por ejemplo, una ocurrencia de "trabajador" puede tener N ocurrencias "persona-dependiente" asociadas, donde además, la existencia de las ocurrencias en la segunda entidad depende de la existencia de una ocurrencia que le corresponda en la primera entidad. Por ejemplo, en el modelo habrá personas dependientes de un trabajador sólo si ese trabajador existe. Para indicar esa dependencia en la existencia se usa una saeta en el DER. La llave de una entidad débil se forma combinando la llave de la entidad regular que la determina con algún otro atributo que defina unívocamente cada entidad débil asociada a una entidad regular dada. (Una entidad se denomina regular si no es débil).
En una relación, la llave es la combinación de las llaves de todas las entidades asociadas. Para cada relación se determina su tipo (simple o complejo) y en el DER se escribe el tipo de correspondencia. Por ejemplo, una empresa puede tener varios (n) trabajadores asociados y un trabajador pertenece a una sola empresa (1). En la relación Trabajador-Máquina-Pieza, un trabajador puede trabajar en n máquinas, produciendo p piezas, o una pieza puede ser producida por m trabajadores en n máquinas. Aquí, m, n y p no identifican un número específico, sino solamente el tipo de correspondencia que se establece en la relación.

Para su creación....:
1. Se elabora el diagrama (o diagramas) entidad-relación.
2. Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama.
Dado lo rudimentario de esta técnica se necesita cierto entrenamiento y experiencia para lograr buenos modelos de datos.
El modelado de datos no acaba con el uso de esta técnica. Son necesarias otras técnicas para lograr un modelo directamente implementable en una base de datos. Brevemente:
Transformación de relaciones múltiples en binarias.
Normalización de una base de datos de relaciones (algunas relaciones pueden transformarse en atributos y viceversa).
Conversión en tablas (en caso de utilizar una base de datos relacional).

2.3 RESTRICCIONES.



Restricciones de dominio

Las restricciones de dominio especifican que el valor de cada atributo A debe ser un valor atómico del dominio dom(A) para ese atributo. Los tipos de datos asociados a los dominios por lo general incluyen los tipos de datos numéricos estándar de los números enteros (como entero- corto, entero, entero-largo) y reales (flotante y flotante de doble precisión). También disponemos de caracteres, cadenas de longitud fija y cadenas de longitud variable, así como tipos de datos de fecha, hora, marca de tiempo y dinero. Otros dominios posibles se pueden describir mediante un intervalo de valores de un tipo de datos o como un tipo de datos enumerado en el que se listan explícitamente todos los valores posibles.


Restricción de Valores Nulos

Para determinado atributos, los valores nulos pueden ser inapropiados. Considérese una tupla en la relación cliente la que nombre-cliente es un valor vació. Una tupla de este tipo da una calle y una ciudad para un cliente anónimo y, por tanto, no contiene información útil. En casos como éste, deseamos prohibir los valores nulos, restringiendo el dominio de ciudad-cliente para que excluya los valores nulos. 

El SQL estándar permite que la declaración del dominio de un atributo incluya la especificación not null . Esto prohíbe la inserción de un valor nulo para este atributo. Cualquier modificación de la base de datos que causara que se insertase un valor nulo en un dominio not null genera un diagnóstico de error.

Hay muchas situaciones en las que la prohibición de valores nulos es deseable. Un caso particular en el que es esencial prohibir los valores nulos es en la clave primaria de un esquema de relación


Restricción de clave

Es una de las restricciones estándar que con frecuencia aparecen en las aplicaciones de bases de datos. Estas restricciones se manejan de formas ligeramente distintas en los diversos modelos de datos. En el modelo E-R, una clave es un atributo de un tipo de entidades que debe tener un valor único para cada entidad que pertenezca a dicho tipo en cualquier momento específico. Así el valor del atributo clave puede servir para identificar de manera única cada entidad. Los atributos claves deben ser monovaluados, pero pueden ser simples o compuestos. 

Un tipo de entidades normal puede tener una o más claves; un tipo de entidades débil no tiene clave, pero casi siempre tiene una clave parcial cuyos valores identifican de manera única las entidades débiles que están relacionadas a la misma entidad propietario a través de un vínculo identificador. 

En general, un esquema de relación pude tener más de una clave. En tal caso, cada una de ellas se denominan clave candidata. Por ejemplo en una relación COCHE tiene dos claves candidatas: NumMatrícula y NumSerieMotor. Es común designar a una de las claves candidata como clave primaria de la relación. Ésta es la clave candidata cuyos valores sirven para identificar las tuplas en la relación.


Restricción de aserción 

Una Técnica más formal para representar restricciones explícitas es con un lenguaje de especificació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 (en la que las restricciones se almacenan en una forma codificada apropiada) y el subsistema de control de integridad del SGBD (que tiene acceso a la base de restricciones para aplicar estas últimas correctamente a las transacciones afectadas). 

Cuando se usa esta técnica, las restricciones suelen llamarse aserciones . Se ha sugerido el uso de esta estrategia con SGBD relaciónales. El subsistema de control de integridad compila las aserciones, que entonces se almacenan en el catalogo del SGBD, donde el subsistema de control de integridad puede consultarlas e imponerlas automáticamente. Esta estrategia es muy atractiva desde el punto de vista de los usuarios y programadores por su flexibilidad.     


Restricción de Integridad: 

Una fuente de restricciones de integridad son los conjuntos de entidades débiles. El esquema de relaciones para un conjunto de entidades débil debe incluir la clave esquema de relaciones de entidades de la cual depende. Así, pues, el esquema de relaciones para cada conjunto de entidades débil incluye una clave exterior que conduce a una restricción de integridad referencial.


Según [Elmasri / Navathe ] 

La restricción de integridad de entidades establece que ningún valor de clave primaria puede ser nulo. Esto porque el valor de la clave primaria sirve para identificar las tuplas individuales en una relación; el que la clave primaria tenga valores nulos implica que no podemos identificar algunas tuplas. Por ejemplo, si dos o más tuplas tuvieran nulo en su clave primaria, tal vez no podríamos distinguirlas





FUENTES: 
http://labredes.itcolima.edu.mx/fundamentosbd/sd_u3_3.htm