Sei sulla pagina 1di 3

Auxiliar 2 de Bases de Datos

Prof. Claudio Gutirrez, Aux. Mauricio Monsalve, Ayu. Diego Daz Temas. Introduccin al modelamiento conceptual usando diagramas Entidad Relacin. Entidades, re laciones, atributos, cardinalidad. Diferentes estilos de diagramas. Del modelo al cdigo. Modelamiento conceptual Cmo agregamos los detalles de cada entidad? Tpicamente los problemas ingenieriles pasan por Usando atributos. Por ejemplo, consideremos que una fase de diseo. Esta fase es anterior a la imple los gatos tienen nombre, raza, peso, edad, etc. mentacin de la solucin, pues en el diseo se estu dia cmo solucionar el problema (y la calidad de la solucin misma). Cuando hay informacin de por medio, el modela miento est orientado a la cosa conceptual. Aqu vemos el tpico ejemplo de los mapas conceptua les, planos que relacionan conceptos diferentes. Pues bien, el modelo de datos usa un tipo de mapa conceptual bien especfico: el modelo entidad rela cin. Modelo Entidad Relacin El modelo Entidad Relacin, en adelante ER, es un modelo que presenta distintos cuerpos de datos (entidades) y cmo se relacionan entre s (relacio nes). Se usa ER para mapear un universo del dis curso real en un nivel abstracto, de informacin. Los gatos comen ratones... Como ejemplo introductorio, modelemos un mun do de gatos y ratones, todos con nombre. Modela remos la informacin sin caer en el detalle de cada gato (Mizif, Fido, Cucho, Pelusa, etc.) y ratn, pero considerando que son detallables.
Una entidad y sus atributos.

El diagrama anterior muestra cmo se presentan las relaciones y sus atributos. Las entidades se de notan como rectngulos. Los atributos, en cambio, como elipses o globos de texto. Los atributos se co nectan a sus entidades mediante lneas. Es costum bre dejar a los atributos cerca de sus entidades. Es importante mencionar aqu que el atributo su brayado, nombre, es una llave. Esto es, identifica plenamente a una instancia de entidad. Cuando hablamos de Mizif, sabemos de quin hablamos: ya sabemos su peso, raza, edad, etc.

Un delicioso ratn... para lamerse los bigotes.

Pensemos en una potencial relacin: los gatos co men ratones. A nivel de informacin, un gato se relaciona con un ratn que se comi. Aqu tenemos dos entidades (gato y ratn) y una relacin (come). Esto se diagrama como sigue:

Todos son gatos. Pero son diferentes.

Gato (ent) come (rel) ratn (ent)

En la notacin ER, las relaciones se representan como rombos rotados 45. Las relaciones se conec En nuestra notacin, denotamos la cardinalidad tan con sus entidades partcipes a travs de lneas como un par (mn, mx) de cotas. Y anotamos la continuas. participacin en la relacin en el lado de cada enti dad. Tratamos de sintetizar algo como: Ahora bien, es posible que las relaciones, en su manera de presentarse, lleven a ciertas ambigeda des. Por ejemplo, del diagrama ER se podra leer ratn come gato en vez de gato come ratn. Para nosotros es claro que los ratones no comen gatos... a menos que sean enormes y violentos huarenes!
Relacin N:1.

Usando n para designar la multiplicidad, las cardi nalidades del ejemplo quedan como:
Ratn come gato.

Para evitar posibles ambigedades, se pueden usar tringulos para indicar a qu direccin apuntan las relaciones, se pueden agregar roles o se pueden in cluir los nombres de las entidades en la relacin.

Un gato puede no comer ratones hasta comer muchos rato nes: (0,n). Por otra parte, un ratn es comido, a lo sumo, por un gato: (0,1).

Los smbolos que usamos para los lmites son: (0,1), La participacin de las entidades en las relaciones (1,1), (0,n), (1,n) y (n,m). (existe (0,0)?) Tambin es, muchas veces, limitada en nmero. Por ejemplo, es posible usar trminos como (2,5) cuando la si un gato puede no comer ratones as como puede tuacin lo amerite. haberse comido muchos ratones en el pasado. Por otro lado, un ratn puede ser comido por un gato Choque de notaciones (a lo sumo) o est vivo. (Objecin: mam gata que La notacin de cardinalidad usada en el curso es reparte el ratn) Esta caracterizacin de las parti detallada. Desafortunadamente, se suele usar una notacin prctica slo para relaciones binarias y cipaciones es lo que llamamos cardinalidad. que denota las cardinalidades al revs:

Dos maneras de evitar ambigedades.

Un gato come N ratones. Un ratn es comido por 1 gato. No todos los gatos tienen los mismos gustos...

Las desventaja de la notacin anterior aparece en las relaciones ternarias o n-arias en general, con n2 . En cambio, nuestra notacin tiene significa do completo para cualquier nmero de entidades participantes.

nos que se violen conceptualmente las reglas del modelamiento ER.

Del modelo al cdigo El uso de diagramas ER es parte de una tcnica ms grande que consiste en generar cdigo a partir Pensemos, por ejemplo, en la relacin ternaria reu de un diseo. Esto es, en parte, la filosofa de las nin, que representa una reunin de curso. En una metodologas dirigidas por el diseo (model dri reunin de curso, participa el profesor jefe y los ven etc.) y de los procesos unificados (como RUP). apoderados, en una fecha determinada. La idea general es partir de un diseo bien trabajo y convertir automticamente el diseo en cdi go. Esto reduce el riesgo de las etapas intermen dias, y deja todo el peso en la etapa del diseo. Es, en parte, un proceso en cascada. Pero permite alte rar el cdigo cambiando slo el diseo, lo que no es lento. Esto es un proceso iterativo. Si se parte con un diagrama ER, el siguiente paso es convertirlo a relacional. Ah se puede optimizar un poco utilizando procedimientos de normaliza cin. Luego, el modelo relacional [normalizado] se Las tres entidades relacionadas por reunin son: convierte a tablas usando SQL. Hay multitud de profesor (jefe), apoderado y fecha (que bien podra programas que hacen todo este trabajo, salvo por lo de normalizar. Pero pasar de un dibujo al cdigo ser un atributo compuesto). es algo bastante bienvenido! Y reduce el riesgo del desarrollo de software! En otros casos, como en RUP, se utiliza UML. A partir de los casos de uso, se traspasa semi auto mticamente cada caso a un modelo de anlisis usando algn patrn (como View/Control/Model). Junto al modelo del universo del discurso (de cla ses), se genera un diagrama de clases orientado a la aplicacin, y se genera cdigo (esto es similar a ER). Asimismo, es posible detallar el cdigo a tra vs de diagramas de interaccin (secuencia, cola boracin) y mquinas de estado, lo que permite ge nerar cdigo mucho ms terminado. Tcnicas como esta son bienvenidas en ingeniera de software puesto que permiten saltar del diseo a un prototi po de software casi funcional en poco tiempo y con poco riesgo! Claro, las habilidades deben cen trarse en el modelamiento.

Mi hijo es el primero del curso. Y el mo el segundo. (Hasta que un accidente deje a mi hijo como el primero! Muaja, muajaja!, MUAJAJAJAJA!!)

Relacin ternaria reunin

El diagrama anterior representa los hechos que: un profesor jefe siempre asistir, al menos, a una reu nin, pero deber asistir a varias; hay apoderados que jams asisten a las reuniones mientras que otros van muchas veces o siempre; y en una fecha determinada puede no haber reuniones de curso como pueden haber varias (tpico final de mes). La relacin anterior sera cuaternaria si se conside ra la entrega del boletn de notas de un alumno (cuarta y quinta entidades). Este tipo de situacin es completamente inconveniente de modelar con la tcnica usual de notacin de cardinalidades, a me

Potrebbero piacerti anche