Sie sind auf Seite 1von 34

11/1/2017

Un Lenguaje Común

3 ¿Qué es un Modelo de Datos?

Modelo de Datos
3 ¿Qué es un Modelo de Datos?

Estructura abstracta que documenta y


organiza los elementos de información y
estandariza cómo se relacionan entre ellos
y con las propiedades de las entidades del
mundo real.

https://en.wikipedia.org/wiki/Data_model

1
11/1/2017

Modelo de Datos
3 ¿Qué es un Modelo de Datos?

Estructura abstracta que documenta y


organiza los elementos de información y
estandariza cómo se relacionan entre ellos
y con las propiedades de las entidades del
mundo real.

Determina explícitamente la Estructura de


los Datos.

3 ¿Qué es un Modelo de Datos?

Lenguaje de modelado
para la definición
de esquemas

Esquema
Del latín Schema. Figura Geométrica

Representación
Gráfica o Simbólica
de cosas materiales o inmateriales

http://www.rae.es

2
11/1/2017

Ámbitos
¿ Dónde aplican los Modelos de Datos ?

Modelo de Datos Modelo de Datos

Modelo de Datos Negocios Modelo de Datos Contabilidad


Modelo de Datos Modelo de Datos

Modelo de Datos

Modelo de Datos Informática


Modelo de Datos

Modelo de Datos Modelo de Datos

Modelo de Datos Ciencia Modelo de Datos Estadística


Modelo de Datos Modelo de Datos

Informática

Desarrollo de Diseño de
Software Interfaces

Bases de Datos

3
11/1/2017

Informática

Bases de Datos

Clientes

Vendedor

Bases de
Clientes Bases de
Datos Datos

Base de
Datos

Vendedor

4
11/1/2017

Clientes

Vendedor

Clientes

Modelo de Datos

Vendedor

Clientes
Vendedor
Modelo de Datos

Sistema

5
11/1/2017

Clientes
Vendedor
Modelo de Datos

Modelo de Datos

Sistema

Clientes Vendedor Sistema

Modelo de Datos Modelo de Datos

Sistema
void main (){
obj cust = new
obj();
if (cust!=null)
save(cust);
}

void save(cust){
connect();
exec
saveToDB(cust);
disconnect();
}

Código

Clientes Vendedor Sistema

Modelo de Datos Modelo de Datos

Sistema
void main (){
obj cust = new
obj();
if (cust!=null)
save(cust);
}

void save(cust){
connect();
exec
saveToDB(cust);
disconnect();
}

Código Software

6
11/1/2017

Clientes Vendedor Sistema

Modelo de Datos Modelo de Datos

Sistema
void main (){
obj cust = new
obj();
if (cust!=null)
save(cust);
} 1010001110101010110010
1010010101000001111101
void save(cust){ 0101010100010001010100
0100010101010101011000
connect(); 0111100000111100001010
exec 0000100010001001000100
saveToDB(cust); 0100010010101010100001
disconnect();
}

Código Software Almacenamiento

Clientes Vendedor Sistema

Modelo de Datos Modelo de Datos

Sistema

Modelo Modelo 1010001110101010


1100101010010101

de de 0000011111010101
0101000100010101
0001000101010101

Datos Datos 0101100001111000


0011110000101000
0010001000100100
0100010001001010

Código Software Almacenamiento

Clientes Vendedor Sistema

Modelo de Datos Modelo de Datos

Modelo Modelo
de de
Datos Datos

1010001110101010
1100101010010101
0000011111010101
0101000100010101
0001000101010101
0101100001111000
0011110000101000
0010001000100100
0100010001001010

Código Software Almacenamiento

7
11/1/2017

Clientes Vendedor Sistema

Modelo de Datos Modelo de Datos

Sistema

Modelo Modelo 1010001110101010


1100101010010101

de de 0000011111010101
0101000100010101
0001000101010101

Datos Datos 0101100001111000


0011110000101000
0010001000100100
0100010001001010

Código Software Almacenamiento

¿Para qué un
Modelo de Datos?

¿Para qué?

Modelo de Datos

8
11/1/2017

Un Lenguaje común
¿Cómo vamos a hacer para
entendernos?

Modelo de Datos

Identificar Entidades
Modelo de Datos ¿De qué y quiénes estamos
hablando aquí?

Modelo de Datos

Reglas del Negocio


¿Cómo se hace esto?
¿Qué pasa aquí?

9
11/1/2017

Un Lenguaje común

Identificar Entidades
Modelo de Datos

Reglas del Negocio

Un Lenguaje común
Iga numbrite paari (a, b) korral on olemas üks number c, mis võrdub a ja b summaga.
Estonio

Kōna'ō jōṛā saṅkhyā (a, b) ēra jan'ya ēkaṭi ēkaka saṅkhyā c āchē yā samāna ēbaṁ a ēra
samaṣṭi samāna.
Bengalí

Для любой пары чисел (a, b) существует единственное число c, равное сумме a и b.
Ruso

For any pair of numbers (a, b) there exists a single number c that is equal to the sum
of a and b.
Inglés

Per ogni coppia di numeri (a, b) esiste un singolo numero c che corrisponde alla somma
di a e b.
Italiano

Para cualquier par de números (a,b) existe un sólo número c que equivale a la suma
de a y b.
Español

Un Lenguaje común

10
11/1/2017

Un Lenguaje común

c=a+b

Modelo de Datos Identificar Entidades

Reglas del Negocio

Identificar Entidades

11
11/1/2017

Identificar Entidades
Clientes

Vendedor

Identificar Entidades

Clientes

Vendedores

Identificar Entidades

Clientes

Sustantivos

Vendedores

12
11/1/2017

Identificar Entidades

Clientes

Sustantivos
Que tiene existencia real,
independiente, individual.
Vendedores http:///www.rae.es

Identificar Entidades
CxC
Pagos
Clientes
Facturas
Proveedores
Productos
Vendedores
Servicios
Empleados

Identificar Entidades

Clientes Facturas

Vendedores Productos

13
11/1/2017

Identificar Entidades

Clientes Facturas

Sustantivos

Vendedores Productos

Identificar Entidades

Clientes Facturas

Vendedores Productos

Modelo de Datos

Reglas del Negocio

14
11/1/2017

Reglas del Negocio

Reglas del Negocio

Clientes Facturas

Vendedores Productos

Reglas del Negocio

Facturas
Las Facturas
tienen
Productos
Productos

15
11/1/2017

Reglas del Negocio

¿Puede una factura Facturas


no tener ningún
Las Facturas
Producto?
tienen
Productos
Productos

Reglas del Negocio

Facturas
Las Facturas
tienen al menos
un Producto
Productos

Reglas del Negocio

¿Cuántos productos Facturas


puede tener una
Las Facturas
factura?
tienen al menos
un Producto
Productos

16
11/1/2017

Reglas del Negocio


Las Facturas
Facturas tienen al menos
un Producto.


No hay límite en
la cantidad de
Productos productos que
puedan tener.

Reglas del Negocio

Facturas

Productos

Reglas del Negocio

Facturas ∞

Productos

17
11/1/2017

Reglas del Negocio

1 : 1.. n
Facturas ∞

Productos

Reglas del Negocio

1 : 1.. n
Facturas ∞

Cardinalidad
El número de elementos
de un Conjunto

http:///www.rae.es

Productos

Reglas del Negocio

1 : 1.. n
Facturas ∞

Cardinalidad
Cuantos elementos puede tener
el conjunto de Productos

de una Factura

Productos

18
11/1/2017

Reglas del Negocio

1 : 1.. n
Facturas ∞

Cardinalidad
Cuantos elementos puede tener
el conjunto de Productos

de una Factura

Productos [ 1 .. n )

Reglas del Negocio

1 : 1.. n
Facturas ∞

Cardinalidad
Cuantos elementos puede tener
el conjunto de Productos

de una Factura

Productos [ 1 .. n )

Mínimo Máximo

Reglas del Negocio

1 : 1.. n
Facturas ∞

Cardinalidad
Cuantos elementos puede tener
el conjunto de Productos

de una Factura

Productos Cardinalidad Mínima : 1


Cardinalidad Máxima : n

19
11/1/2017

Reglas del Negocio

Facturas

Productos

Reglas del Negocio

Facturas
Los Productos
aparecen en
Facturas
Productos

Reglas del Negocio


¿Puede un Producto
Facturas no aparecer en
ninguna Factura?
Los Productos
aparecen en
Facturas
Productos

20
11/1/2017

Reglas del Negocio

Facturas
Un Producto
puede no estar
en ninguna
Factura
Productos

Reglas del Negocio


¿En cuántas
Facturas Facturas puede
Un Producto aparecer un
puede no estar Producto?
en ninguna
Factura
Productos

Reglas del Negocio


Un Producto
puede no estar Facturas
en ninguna ∞
Factura.

No hay límite de
en cuántas pueda Productos
aparecer

21
11/1/2017

Reglas del Negocio


0..n : 1

Cardinalidad
Facturas

Cuantos elementos puede tener
el conjunto de Facturas
En las que aparece un Producto

[ 0 .. n )
Productos
Mínimo Máximo

Reglas del Negocio


0..n : 1 1 : 1.. n
∞ ∞

Cardinalidad
Facturas Cardinalidad

Cuantos elementos puede tener Cuantos elementos puede tener
el conjunto de Facturas el conjunto de Productos
En las que aparece un Producto de una Factura

[ 0 .. n ) [ 1 .. n )
Productos
Mínimo Máximo Mínimo Máximo

Reglas del Negocio

Facturas

Productos

22
11/1/2017

Reglas del Negocio

Clientes ∞ Facturas

Vendedores Productos

Entidad

Al menos 1
1 o ninguno
Muchos ∞

Entidad Esquema
Representación Gráfica o Simbólica
de cosas materiales o inmateriales

Al menos 1
1 o ninguno
Muchos ∞

23
11/1/2017

Entidad Esquema
Representación Gráfica o Simbólica
de cosas materiales o inmateriales

Al menos 1
1 o ninguno Modelo de Datos
Muchos ∞ Lenguaje de modelado
para la definición de
esquemas

Clientes ∞ Facturas

Vendedores Productos

Modelo
Conceptual

24
11/1/2017

Modelo
Conceptual

Diferentes
Visiones
de la
Realidad

Modelo
Conceptual

Diferentes
Visiones
de la
Realidad

Modelo Claro
Conceptual No Ambiguo

25
11/1/2017

Diferentes
Visiones
de la
Realidad

Modelo Claro
Conceptual No Ambiguo

Debe significar lo mismo


para las diferentes Visiones
de la Realidad

Modelo
Conceptual

Diferentes
1010001110101010
1100101010010101
0000011111010101
1010001110101010
1100101010010101
0000011111010101
1010001110101010
1100101010010101
0000011111010101
1010001110101010
1100101010010101
0000011111010101
Tipos de
Almacenamiento
0101000100010101 0101000100010101 0101000100010101 0101000100010101
0001000101010101 0001000101010101 0001000101010101 0001000101010101
0101100001110000 0101100001110000 0101100001110000 0101100001110000
0100010001001010 0100010001001010 0100010001001010 0100010001001010

Modelo Independiente
Conceptual

Diferentes
1010001110101010
1100101010010101
0000011111010101
1010001110101010
1100101010010101
0000011111010101
1010001110101010
1100101010010101
0000011111010101
1010001110101010
1100101010010101
0000011111010101
Tipos de
Almacenamiento
0101000100010101 0101000100010101 0101000100010101 0101000100010101
0001000101010101 0001000101010101 0001000101010101 0001000101010101
0101100001110000 0101100001110000 0101100001110000 0101100001110000
0100010001001010 0100010001001010 0100010001001010 0100010001001010

26
11/1/2017

Estable
Modelo Flexible
Conceptual
Reutilizable

1010001110101010 1010001110101010 1010001110101010 1010001110101010


1100101010010101 1100101010010101 1100101010010101 1100101010010101
0000011111010101 0000011111010101 0000011111010101 0000011111010101
0101000100010101 0101000100010101 0101000100010101 0101000100010101
0001000101010101 0001000101010101 0001000101010101 0001000101010101
0101100001110000 0101100001110000 0101100001110000 0101100001110000
0100010001001010 0100010001001010 0100010001001010 0100010001001010

Nivel Externo

ANSI / SPARC Modelo Nivel Conceptual


(ANSI / X3)
1975 Conceptual

Nivel Físico
1010001110101010 1010001110101010 1010001110101010 1010001110101010
1100101010010101 1100101010010101 1100101010010101 1100101010010101
0000011111010101 0000011111010101 0000011111010101 0000011111010101
0101000100010101 0101000100010101 0101000100010101 0101000100010101
0001000101010101 0001000101010101 0001000101010101 0001000101010101
0101100001110000 0101100001110000 0101100001110000 0101100001110000
0100010001001010 0100010001001010 0100010001001010 0100010001001010

Nivel Externo

Modelo Nivel Conceptual


Conceptual

Nivel Físico
1010001110101010 1010001110101010 1010001110101010 1010001110101010
1100101010010101 1100101010010101 1100101010010101 1100101010010101
0000011111010101 0000011111010101 0000011111010101 0000011111010101
0101000100010101 0101000100010101 0101000100010101 0101000100010101
0001000101010101 0001000101010101 0001000101010101 0001000101010101
0101100001110000 0101100001110000 0101100001110000 0101100001110000
0100010001001010 0100010001001010 0100010001001010 0100010001001010

27
11/1/2017

3 ¿Qué es un Modelo de Datos?

3 ¿Qué es un Modelo de Datos?

3 ¿Qué es un Modelo de Datos?

28
11/1/2017

3 ¿Qué es un Modelo de Datos?

3 ¿Qué es un Modelo de Datos?

Recapitulando…

3 ¿Qué es un Modelo de Datos?

• Estructura abstracta.

29
11/1/2017

3 ¿Qué es un Modelo de Datos?

• Documenta, Organiza y Estandariza la información.

3 ¿Qué es un Modelo de Datos?

• Define un Lenguaje común para entendernos.

3 ¿Qué es un Modelo de Datos?

• Identifica las Entidades.

30
11/1/2017

3 ¿Qué es un Modelo de Datos?

• Describe las Reglas del Negocio (Relaciones).

3 ¿Qué es un Modelo de Datos?

• Estructura abstracta.

• Documenta, Organiza y Estandariza la información.

• Define un Lenguaje común para entendernos.

• Identifica las Entidades.

• Describe las Reglas del Negocio (Relaciones).

3 ¿Qué es un Modelo de Datos?

Un Modelo de Datos debe ser:

• Claro – No Ambiguo

31
11/1/2017

3 ¿Qué es un Modelo de Datos?

Un Modelo de Datos debe ser:

• Independiente de los Dispositivos

3 ¿Qué es un Modelo de Datos?

Un Modelo de Datos debe ser:

• Estable, Flexible, Reutilizable

3 ¿Qué es un Modelo de Datos?

Un Modelo de Datos debe ser:

• Claro – No Ambiguo

• Independiente de los Dispositivos

• Estable, Flexible, Reutilizable

32
11/1/2017

3 ¿Qué es un Modelo de Datos?

ANSI define una Arquitectura de 3 niveles:

• Nivel Externo

• Nivel Conceptual

• Nivel Físico

3 ¿Qué es un Modelo de Datos?

ANSI define una Arquitectura de 3 niveles:

• Nivel Externo

• Nivel Conceptual

• Nivel Físico

No es la única forma de verlo

Antes de terminar…

33
11/1/2017

“Los Modelos de Datos sirven de soporte a los Sistemas de


Cómputo, proveyendo la Definición y el Formato de los Datos.

Si esto se hace de forma consistente a través de los Sistemas


entonces se logra la Compatibilidad de los Datos. Si se utilizan las
mismas Estructuras para almacenarlos y accesarlos, entonces
diferentes aplicaciones pueden compartir los Datos. […]

Sin embargo, a menudo el desarrollo, operación y mantenimiento


de los Sistemas y las Interfaces, cuesta más de lo que debería.
Pudieran incluso restringir el negocio en vez de soportarlo. La
principal razón es que los Modelos de Datos implementados en
los Sistemas e Interfaces es de una calidad muy pobre.”

West y Fowler. “Developing High Quality Data Models” EPISTLE (1996)

34

Das könnte Ihnen auch gefallen