Title: MODELOS CONCEPTUALES PARA BASES DE DATOS
1MODELOS CONCEPTUALES PARA BASES DE DATOS
CLASE 3
Ingeniería de Requisitos y Modelos
Conceptuales Parte I
- Gloria Lucía Giraldo Gómez
- Universidad Nacional de Colombia
- glgiraldog_at_unalmed.edu.co
- Bloque anexo al M8
- Oficina 313
2INGENIERÍA DE REQUISITOS
- Definición
- Es la rama de la Ingeniería del Software que se
interesa por las metas del mundo real, las
funciones y restricciones de los sistemas de
software - También se interesa por precisar las
especificaciones del comportamiento del software
y su evolución a lo largo del tiempo
3INGENIERÍA DE REQUISITOS
COSTOS DE UN PROYECTO?
Requisitos
Especific.
Planeación
Diseño
Implement.
Integrac.
Mantenim
4INGENIERÍA DE REQUISITOS
Por qué los sobrecostos , retrasos y
cancelaciones en los sistemas de software? En
1994 se evaluaron 175.000 proyectos en EEUU con
un costo total de 250.000 millones de dólares
31 ? cancelados 52.7 ? sobre costos y
retrasos 16.2 ? a tiempo, bajo costo, de acuerdo
a los requisitos
- Participación del usuario
- Apoyo de las directivas
- Clara especificación de requisitos
El estudio fue hecho por la firma Standish
Consulting Group
5INGENIERÍA DE REQUISITOS
- En el proceso de desarrollo de cualquier
aplicación el grupo de desarrollo se ve
enfrentado al problema de la identificación de
los requisitos, los cuales evolucionan con el
funcionamiento del sistema - La definición de las necesidades de un sistema
es un proceso complejo - El proceso de especificación de requisitos
- Captura
- Definición
- Validación
6Captura de requisitos
- Cuáles son los requisitos a obtener?
- Hay que identificar los Actores de la
organización y sus necesidades - Cuales son las técnicas de obtención?
- Tradicionales encuestas, cuestionarios,
entrevistas, documentos. - Técnicas de obtención en grupo
- Prototipos
7QUÉ ES UN MODELO?
- Herramienta para comunicar y plasmar nuestra
representación de algún fenómeno o hecho del
mundo que nos interesa - Y para qué? para comprender mejor los fenómenos
8CONCEPTO DE MODELO
- Será posible capturar TODOS los detalles de la
realidad concreta? - N observadores de un fenómeno tendrán al menos N
percepciones distintas del mismo fenómeno
9MODELO CONCEPTUAL?
10MODELO CONCEPTUAL
- En bases de datos, es una descripción de alto
nivel de la estructura de la base de datos - Independiente del SGBD que se vaya a usar
- El diseño de un modelo conceptual parte de la
especificación de requisitos
11MODELO CONCEPTUAL
- El propósito del modelo conceptual es describir
el contenido de la información de la base de
datos, en vez de las estructuras de
almacenamiento que se requerirán para manejar esa
información - Se expresa mediante un lenguaje de muy alto nivel
- Es un modelo de datos que describe un conjunto de
conceptos de una realidad
12MODELO CONCEPTUAL
- Características
- Expresividad Representación de gran variedad de
restricciones - Simplicidad Fácil de comprender por los usuarios
- Minimalidad Ningún concepto presente se puede
expresar por otros conceptos - Formalidad Conceptos con interpretación única,
precisa y bien definida
13MODELO CONCEPTUAL
- Los modelos conceptuales más usados para bases de
datos son - - Entidad/Asociación ? El más usado y base del
curso - - Diagrama de clases de UML
- - Semántico
14MODELO LÓGICO?
15MODELO LÓGICO
- Un modelo lógico en bases de datos es una
descripción de la estructura de la base de datos
que puede ser procesada por un SGBD - El diseño de un modelo lógico parte de un modelo
conceptual - Sigue siendo un lenguaje de alto nivel
16MODELO LÓGICO
- Los modelos lógicos más usados son
- Relacional
- Objeto Relacional
- Objetual puro
- Anteriores (primitivos)
- Red
- Jerárquico
17MODELO LÓGICO
- La elección del modelo lógico depende de la clase
de modelo soportado por el tipo de SGBD, NO del
SGBD específico (es decir, el diseño del modelo
lógico se efectúa igual para todos los SGBD
relacionales porque todos utilizan el modelo
relacional) - Puede decirse que el modelo lógico está entre el
modelo conceptual y el modelo físico
18MODELO FÍSICO?
19MODELO FÍSICO
- Un modelo físico es una descripción de la
implantación de una base de datos en disco - Describe las estructuras de almacenamiento y las
técnicas de almacenamiento para tener un acceso
efectivo a los datos - El diseño de un modelo físico depende de un SGBD
concreto
20Resumiendo
- El diseño CONCEPTUAL
- parte de las especificaciones de los requisitos
- Es independiente del SGBD
- Es una descripción de alto nivel de la estructura
de la base de datos - El diseño LÓGICO
- Parte del modelo conceptual
- Es dependiente del TIPO de SGBD
- El diseño FISICO
- Parte del modelo lógico
- Describe las estructuras de almacenamiento y
métodos eficientes para tener acceso a los datos - Se expresa en un lenguaje de definición de datos
- Es dependiente del SGBD en concreto
21Resumiendo
veremos en este curso
Requisitos
Diseño Conceptual
Modelo de Clases
Modelo Entidad/Asociación
Modelo Semántico
Modelo objetual
Diseño Lógico
M. objeto-relacional
Modelo Relacional
Modelo en red
Modelo jerárquico
Diseño Físico
22MODELO ENTIDAD-ASOCIACIÓN (E/A)
23Modelo Entidad/Asociación (E/A) Introducción (1)
- Propuesto por Peter Chen en 1976
- Gran aceptación inicial
- Poco formal en sentido matemático
- Intuitivamente funciona muy bien
- Expresividad gráfica Visión global de lo que se
modela - El más usado para el modelamiento conceptual
24Modelo Entidad/Asociación (E/A) Introducción (2)
- Inicialmente tenía unos elementos y se le fueron
adicionando otros ? Modelo (E/A) extendido
Richard Barker libro CASE METHOD Entity
Relationship Modelling
Para qué?
Aumentar la expresividad
25Elementos básicos del modelo E/A
- Entidad es una Clase de objetos relevantes y
distinguibles del mundo, que son los sujetos de
interés para el modelo, para la organización.
Ej. Cliente, Empleado, Proveedor, Sucursal etc. - Asociación conexión, asociación entre 2
entidades (relación binaria) - Atributo propiedad básica o característica de
interés que describe una entidad o asociación
26Notaciones Modelo E/A
- Existen diferentes notaciones para representar el
modelo E/A - Chen
- Pata de Gallo desarrollado por C.W. Bachman. La
utilizaremos en este curso - Rein85
- IDEFIX
OJO En las evaluaciones solo se aceptará la
notación de pata de gallo
En el libro de Peter Rob y Carlos Coronel (ver
bibliografía clase 1) hacen una comparación de
las diferentes notaciones
27Entidades
- Clases de objetos que son importantes en el
dominio de estudio - Nos interesan sus propiedades ? Atributos.
- A veces NO es fácil distinguir entre un atributo
y una entidad Ej Barrio es un atributo de
persona o es una entidad en si misma?
28Entidades
- Representación
- Rectángulo (con bordes redondeados). El tamaño
no importa - Nombre único (cada entidad sólo aparece una vez
en el modelo) en mayúscula y singular
El borde redondeado es opcional. En la
literatura se encuentran con bordes rectos
29Entidades
- Entidades Débiles Aquellas que no pueden existir
sin la existencia de otras entidades. Ej - - Los detalles son débiles con respecto a una
factura - - Las personas a cargo de un empleado son
débiles con respecto al empleado - Normales Aquellas que tienen existencia propia.
- Ej La existencia de un animal no está
condicionada a la existencia de una jaula
30Entidades
- Se pueden identificar a partir de la descripción
de los requisitos así - A partir de los sustantivos de la descripción
- Información relevante de las posibles entidades
candidatas - Cada instancia se puede identificar en forma
única?
31Ejemplos de entidades
- Instituciones Bancos, Empresas, Universidades
- Universitario Estudiantes, Profesores, Cursos
- Aerolínea Piloto, Avión, Ruta, Pasajero
- Unidades organizacionales Departamentos,
Sucursales, Plantas, Líneas - Clasificaciones, agrupaciones y jerarquías
Tipos, Clases, Conceptos, Grupos - Documentos Facturas, Pedidos, Órdenes, Cheques
32ASOCIACIONES
33Asociaciones
- Relación binaria bidireccional, significativa y
nombrable entre 2 entidades (no necesariamente
diferentes) - Establecen una acción o hecho
34Tipos de Asociaciones
CUADRO
PINTOR
pinta
pintado por
Un pintor pinta muchos cuadros
Un cuadro es pintado por un pintor
35Tipos de Asociaciones
Muchos a muchos
HABILIDADES
EMPLEADO
aprende
aprendida por
Un empleado aprende muchas habilidades
Una habilidad es aprendida por muchos empleados
HABILIDADES
Pedro Juan Luis Lola
EMPLEADO
Pintar Cantar Conducir Tejer Bailar
36Tipos de Asociaciones
TIENDA
EMPLEADO
encargado de
administrada por
Pedro Juan Luis Lola
EMPLEADO
TIENDA
Marazzi Bosi Alpie Americanino
37Asociaciones
- Cada dirección de una asociación posee
- Un nombre
- Opcionalidad
- Puede línea punteada
- Debe (obligatoria) línea contínua
- Cardinalidad
- Uno un punto(.)
- Muchos el símbolo ( )
38Próxima clase
- continuaremos con el modelo E/A