190 likes | 331 Views
Maestría en Bioinformática Bases de Datos y Sistemas de Información Calidad de Esquemas Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy. Agenda. Calidad de esquemas Atributos de calidad Completitud Correctitud Minimalidad Expresividad Explicitud. Conceptos Discusión. Agenda.
E N D
Maestría en BioinformáticaBases de Datos y Sistemas de InformaciónCalidad de EsquemasIng. Alfonso Vicente, PMPalfonso.vicente@logos.com.uy
Agenda • Calidad de esquemas • Atributos de calidad • Completitud • Correctitud • Minimalidad • Expresividad • Explicitud Conceptos Discusión
Agenda • Discusión de ejemplos Conceptos Discusión
Agenda • Calidad de esquemas • Atributos de calidad • Completitud • Correctitud • Minimalidad • Expresividad • Explicitud Conceptos Discusión
Conceptos • Calidad de esquemas • Puede haber muchas formas correctas de modelar un mismo problema, en general no existe “la solución correcta”, aunque puede haber soluciones definitivamente mal • Un esquema conceptual debe cumplir • Principio del 100% • Principio de conceptualización • Atributos de calidad
Conceptos • Atributos de calidad • Calidad: grado en el que un conjunto de características inherentes cumple con los requisitos • Quisiéramos que un modelo conceptual fuera: • Completo (no negociable) • Correcto (no negociable) • Mínimo • Expresivo • Explícito
Conceptos • Completitud • Un esquema es completo cuando representa todas las características relevantes del problema (100%) • Se debe: • Controlar que todos los aspectos del problema estén representados en alguna parte del esquema • Controlar que todos los requerimientos sean realizables con el esquema • Leer el resultado y compararlo con la descripción original
Conceptos • Correctitud • La correctitud se puede dividir en dos tipos: sintáctica y semántica. • La correctitud sintáctica implica que el esquema conceptual esté construido respetando el lenguaje utilizado (e.g. en el MER, una agregación se debe construir sobre una relación)
Conceptos • Correctitud • Utilizar una herramienta CASE puede asegurar la correctitud sintáctica, de lo contrario se debe verificar: • La existencia de cardinalidades en cada relación • La existencia de atributos determinantes en cada entidad. Si no existen, entonces verificar que sea entidad débil con respecto a otra. • Existencia de una y sólo una relación y todas las entidades que intervienen en la misma dentro de cada agregación.
Conceptos • Correctitud • Un esquema es correcto semánticamente si cada elemento del problema se representa utilizando estructuras adecuadas. • Para asegurar la correctitud semántica, se debe responder para cada concepto del problema: • ¿Es una entidad, un atributo o una relación? • ¿Hay una sola categoría de entidades o más de una? • ¿Una relación es binaria o múltiple? • ¿Cuál es el mecanismo de determinación del conjunto de entidades? • Las cardinalidades y totalidades, ¿tienen sentido?
Conceptos • Minimalidad • Un esquema es minimal si cada elemento de la realidad está representado una sola vez en el esquema. • Se debería verificar: • ¿Dónde está representado en el esquema cada elemento de la realidad? • ¿A qué elemento de la realidad corresponde cada elemento del esquema? • Atributos derivables
Conceptos • Expresividad • Un esquema es expresivo si representa la realidad en una forma natural que puede ser fácilmente comprensible usando sólo la semántica del modelo. • La expresividad intenta medir la capacidad de comunicación del modelo, a nivel semántico.
Conceptos • Explicitud • Un esquema es explícito si no necesita restricciones no estructurales, es decir, toda la realidad se modela con los elementos gráficos del modelo. • Por ejemplo: “En las carreras de posgrado, un estudiante puede tener uno o dos tutores que lo supervisan, pero si tiene dos tutores, uno debe ser PhD y el otro MSc” • Comparemos dos modelos que pretenden representar la realidad planteada
Conceptos • Explicitud • Modelo 1 Modelo 2 • Explicitud y minimalidad pueden ser objetivos contrapuestos
Agenda • Discusión de ejemplos Conceptos Discusión
Discusión Ejemplo: Dirección de una persona Cada persona tiene una dirección, con calle y número Modelo 1 Modelo 2
Discusión • Ejemplo: Dirección de una persona • ¿Los modelos son completos y correctos? • ¿Son minimales? • ¿Es uno más expresivo/explícito que el otro? • En el segundo: ¿podemos identificar una dirección? • Tenemos una clave natural (calle, número) • Podemos inventar una clave sustituta (surrogatekey)
Discusión • Ejemplo: Dirección de una persona
Discusión • Ejemplo: Dirección de una persona • ¿Las cardinalidades están bien? • Homero Simpson • Siempreviva 742 • Marge Simpson • Los requerimientos cambian: • ¿En qué caso(s) sería más fácil modificar el diseño para soportar múltiples direcciones? • ¿En qué caso sería más fácil agregar número de apartamento?