preparado por: miguel cotaña 1cotana.informatica.edu.bo/downloads/bd-quinto1.pdf · los programas...

92
Preparado por: Miguel Cotaña 1

Upload: others

Post on 21-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 1

Page 2: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 2

BASES DE DATOS

Una BD es una colección de datos

operacionales almacenados sin

redundancia perjudiciales y utiliza-

das para una o mas aplicaciones, de

una empresa en particular

Page 3: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 3

…..empresa y datos

Una compania

manufacturera

Un banco

Un hospital

Una universidad

Una dependencia del

gobierno

Datos de Producto

Datos de cuenta

Datos de paciente

Datos de estudiantes

Datos de planifacion

Page 4: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 4

ARQUITECTURA DE SBD

NIVEL EXTERNO: Describe solo parte de la BD(mundo real)

NIVEL CONCEPTUAL: Describe que datos son almacenados en la BD y las relaciones que existen entre los datos. (mundo de ideas)

NIVEL INTERNO: Describe el almacenamiento fisico de los datos(mundo de datos)

Page 5: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 5

….niveles

El nivel interno es el mas cercano al

almacenamiento fisico, es decir, es el que se ocupa

de la forma como se almacenan fisicamente los

datos.

El nivel externo es el mas cercano a los usuarios,

es decir, es el que se ocupa de la forma como los

usuarios individuales perciben los datos.

El conceptual es el nivel de mediacion

Page 6: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 6

SISTEMA DE BD (SBD)

Un SBD es un siste-

ma cuyo proposito

general es el de

almacenar y recu-

perar informacion

inherente a la

organización donde

opera.

DATOS: Un SBD puede comprender 1 o varias BD´s.

USUARIOS: personas que accesan a las BD.

HARD: Donde recide las BD.

SOFT: Se lo conoce como DBMS.

Page 7: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 7

USUARIOS

USUARIO FINAL: Realiza consultas o

mapeos de subconjuntos de la BD.

PROGRAMADOR DE APLICACIONES:

Escribe los programas.

DBA: Usuario sofisticado, hace las veces de

diseñador y consolidador del sistema

Page 8: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 8

CARACTERISTICAS DE LOS

SBD

Control de la redundancia.

Evitar la inconsistencia

Compartimiento de los datos

Integridad y seguridad de los datos

Estandarizar la informacion en el sistema

Independencia de datos.

Page 9: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 9

TIPOS DE BASE DE DATOS

Base de Datos Jerárquica

Base de Datos Relacional

Base de Datos de Red

Base de Datos Orientada a Objetos

Base de Datos Distribuidas

Base de Datos Objeto Relacional

Base de Datos Declarativas (deductivas y

funcionales)

Page 10: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 10

1.2 MODELADO

El modelado es la etapa en donde identificamos y

“dibujamos” los conjuntos de datos que el usuario

requiere en un SI.

El diseño Logico, es la etapa donde

transformamos ese modelo en un diseño

relacional.

El diseño fisico, es donde se especifica

caracteristicas propias como tipo de datos,

longitud, etc.

Page 11: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 11

MODELO DE OBJETOS

La tecnologia OO, proporciona una forma practica y productiva de desarrollo de Soft.

Se trata de pensar de modo abstracto, acerca del problema empleando conceptos del mundo real y no conceptos de computadoras.

Para lograr un software adecuado para el cliente, existen el AOO, DOO y POO

Page 12: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 12

…….MODELO DE OBJETOS

• La tecnologia orientada a objetos se apoya

en los solidos fundamentos de la ingenieria,

cuyos elementos reciben el nombre global

de modelo de objetos.

• Abarca los principios de abstraccion,

encapsulacion, modularidad, jerarquia,

tipos, concurrencia y persistencia.

Page 13: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 13

1.3 BASE DE DATOS

RELACIONAL

Este es el modelo mas utilizado para

modelar problemas reales y administrar

datos dinamicamente.

Su idea fundamental es el uso de

“relaciones”. Durante su diseño, una BD

relacional pasa por el proceso de

normalizacion.

Page 14: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 14

DISEÑO CONCEPTUAL

MODELO E-R

El modelo de datos entidad-relacion (E-R)

se basa en una percepcion del mundo real

que consiste en un conjunto de objetos

basicos llamados entidades y relaciones

entre estos objetos.

Page 15: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 15

…..modelo E-R

Entidad: un objeto, distinguible de otros

objetos. Cosas que se pueden identificar

claramente. Ej. Ximena Mendez y C.I.

Conjunto de entidades: Conjunto de

entidades del mismo tipo. Ej.Funcionario

Atributo: Propiedad de una entidad.

Ej.Funcionario(nombre,edad,direccion)

Page 16: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 16

Entendiendo los conceptos de: Entidad, Conjunto de Entidades y Atributo.

Dominio de un atributo: Conjunto de valores

válidos para el atributo. Ej:

Dominio del nombre: texto o strings

Dominio de edad: enteros positivos

RELACIONAMIENTO:Asociación entre 2

entidades. Ej:

Patty trabaja en el proyecto Nro.2

Page 17: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 17

….conceptos y grafica

Conjunto de relaciones: Conjunto de relacionamientos

del mismo tipo.

Ej:Funcionario TRABAJA en el Proyecto

FUNCIONARIO PROYECTOTRABAJA

en

DIRECCION

EDAD

NOMBRECODIGO

NOMBRE

DEPTO

Page 18: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 18

DISEÑO DE BD

METODOLOGIA DE

DISEÑO:

Consiste en un

conjunto de tecnicas

que se aplican de

acuerdo a una

secuencia de pasos.

Page 19: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 19

DISEÑO LOGICO

Transformación del diagrama E-R extendido para elementos de un modelo logico.

Los modelos logicos son:

Jerárquico

Relacional

De red

Orientado a Objetos

Page 20: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 20

TABLA RELACIONAL

CODIGO NOMBRE SEXO EDAD

A1 Ximena F 21

A2 Marcos M 26

A3 Zulma F 28

FUNCIONARIOATRIBUTOS

T

U

P

L

A

S

REPRESENTACION LOGICA:

FUNCIONARIO(codigo,nombre,sexo,edad)

Page 21: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 21

….modelo relacional

Modelo formal por naturaleza, estructuras

de datos simples y uniformes.

Este modelo se basa en la teoria matematica

de conjuntos, donde los datos son

representados por medio de una colección

de relaciones o tablas.

Es el modelo mas utilizado comercialmente

Page 22: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 22

OBJETIVOS DEL M.R.

Proveer esquemas de facil utilizacion

Mejorar la independencia lógica y fisica de datos

Proveer a los usuarios de lenguajes de manipulación de BD de alto nivel, permitiendo el acceso a usuarios sin experiencia.

Optimizar el acceso a BD

Mejorar la integridad y seguridad de los datos

Proveer un enfoque metodológico para el diseño de esquemas

Page 23: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 23

CARACTERISTICAS DE BASES DE

DATOS RELACIONAL

Una BD, puede ser organizada en relaciones

Se caracteriza por utilizar una tabla

bidimensional, para la organización de los

datos (filas y columnas)

Cada fila contiene la informacion a una

entrada en la BD.

Cada columna define un item de la BD.

Page 24: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 24

LENGUAJES DE BD

Lenguaje de definicion de datos(LDD)

Usualmente el LDD incorpora la definicion de constraints y la definicion de vistas.

Lenguaje de manipulacion de datos(LMD)

- Alto nivel: orientada a conjuntos

- Bajo nivel: orientada a registros

Lenguaje huesped

Lenguaje de programacion en el cual comandos del LMD son embutidos.

Page 25: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 25

REPRESENTACION DE E-R

VENDEDOR PRODUCTOS

PROVEEDOR

VENDE

PROVEE

CODVEN NOMBRE SUELDO

CANTIDAD

CANTIDADPRE_UNITCODPROD

CLIENTE

FECHA-VEN

COD_CLI

NOMBRE FONO

NOMBRE DIRECCIONFONO

COD_PROV

Page 26: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 26

TECNICAS UTILIZADAS

Tecnica de analisis de datos para tratar la semántica

de datos desde el punto de vista del usuario.

Tecnica para el mapeamiento(definen

correspondencias entre los esquemas de los varios

niveles) realizado a partir de los resultados del

analisis de los datos a una implementación de BD

Diseño Conceptual modelo E-R

Diseño Logico modelo relacional

Diseño Fisico modelo relacional

Page 27: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 27

RESTRICCIONES DE

ASIGNACION

(Mapping)

Page 28: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 28

RESTRICCIONES DE ASIGNACIÓN

Una planificación E-R de una empresa pueden

definir ciertas restricciones: CARDINALIDAD,

que expresan el número de entidades con las que

puede asociarse otra entidad mediante un conjunto

de entidades.

Para un conjunto binario de relaciones R entre los

conjuntos de entidades A y B, la cardinalidad de

asignación debe ser una de las siguientes:

Page 29: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 29

……restricciones de asig.

Una a una. Una entidad en A esta asociada

a lo sumo con una entidad en B, y una

entidad en B esta asociada a lo sumo con

una entidad en A.

Una a muchas. Una entidad en A esta

asociada con numero cualquiera de

entidades en B. Una entidad en B puede

asociarse a lo sumo con una entidad en A

Page 30: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 30

……restricciones de asig.

Muchas a una. Una entidad en A esta asociada a

lo sumo con una entidad en B, sin embargo, puede

estar asociada con un numero cualquiera de

entidades en A.

Muchas a muchas. Una entidad en A esta

asociada con numero cualquiera de entidades en

B, y una entidad en B esta asociada con un

numero cualquiera de entidades en A

Page 31: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 31

CARDINALIDAD: grado de asociación

PROVEEDOR EMPRESA

MUJER

Provee para

Casado con

1:1

N:M

HOMBRE

N:1

PADREHIJO Descend.

1 1

1N

N M

Page 32: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 32

TIPOS DE

RELACIONAMIENTO

PROVEEDOR PIEZA

FUNCIONARIO

provee

FUNC_JEFE

CANTIDAD

UNARIO

BINARIO

Page 33: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 33

….tipos de rel….

PROVEEDOR PIEZA

FUNCIONARIO

Provee

para

TERNARIO

Page 34: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 34

Ejemplo

Un cliente tiene la opción de que se cargue su cuenta automaticamente en el momento de la compra (combustible, mantenimiento, o estacionamiento) o de que se le envie mensualmente una factura en papel. En cualquier caso, los clientes pueden pagar con dinero en efectivo, tarjeta de credito o cheque personal. En la estación de servicio “amigos” el combustible se vende por galon a un precio que depende de que el combustible sea gasolina, normal o especial. Los servicios estan cotizados de acuerdo con el costo de los insumos y de la labor realizada. El estacionamiento se vende segun tarifas que pueden ser diarias, semanales o mensuales. Los precios del combustible, servicios de mantenimiento, partes y estacionamiento pueden variar; solamente el gerente de la estacion puede ingresar o cambiar un precio. A su criterio, el gerente puede dar un descuento en sus compras a un cliente en particular; este descuento puede variar de un cliente a otro. Un 2,5% de impuesto local sobre ventas se aplica a todas las operaciones

Page 35: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 35

1.4 BASE DE DATOS O.O.

Para todas las cosas orientadas a objetos, el marco de referencia conceptual es el modelo de objetos. Se menciono 4 elementos en este modelo:

- Abstracción- Encapsulamiento- Modularidad- Jerarquia

Page 36: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 36

a) ABSTRACCION

Una abstraccion denota las

caracteristicas esenciales de un objeto

que lo distinguen de todos los demas

tipos de objeto y proporciona asi

fronteras conceptuales nitidiamente

definidas respecto a la perpectiva del

observador.

Page 37: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 37

Page 38: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 38

b) ENCAPSULAMIENTO

Es el proceso de almacenar en un mismo

compartimiento los elementos de una

abstraccion que constituyen su

estructura y su comportamiento

Page 39: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 39

Page 40: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 40

c) MODULARIDAD

La modularidad es la propiedad que tiene

un sistema que ha sido descompuesto

en un conjunto de modulos cohesivos y

debilmente acoplados.

Page 41: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 41

Page 42: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 42

d) JERARQUIA

La jerarquia es una clasificacion u ordenacion

de abstracciones.

Page 43: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 43

Page 44: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 44

POO, DOO, AOO

POO: Es un método de implementación en el que los programas se organizan como colecciones cooperativas de objetos.

DOO: Es un método de diseño que abarca el proceso de descomposición y una notación para describir los modelos lógico y fisico.

AOO: Es un método de analisis que examina los requisitos desde la perpectiva de las clases y objetos que se encuentran en el vocabulario del dominio del problema.

Page 45: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 45

PARADIGMA O.O.

La Orientacion a Objetos (OO), es una tecnica para el modelado de sistemas como un conjunto de objetos relacionados que interactuan entre si. La OO es similar a la forma en que las personas observan su entorno.

La OO es un enfoque de desarrollo de software que organiza tanto el problema como su solucion.

Page 46: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 46

OBJETOS

OBJETO. Es la representacion abstraida de las cosas

Desde la perspectiva de la cognición humana un

objeto es:

- Una cosa tangible y/o visible.

- Algo que puede comprenderse.

- Algo hacia lo que se dirige una acción o

pensamiento.

Todo lo que hay en el mundo seran objetos?

Page 47: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 47

OBJETOS

Los objetos tienen atributos y operaciones.

Los atributos son sus caracteristicas y sus

operaciones (servicios, metodos) son las acciones

que el objeto puede realizar

La definicion de objetos implica la descripcion de

atributos, comportamientos, operaciones y

mensajes

Page 48: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 48

EJEMPLO

TOYOTA: CORONA

- Placa

- Modelo

- Color

- Nro-motor

- Frenar()

- Cambiar-caja()

OBJETO

ATRIBUTOS

OPERACIONES

Comportamiento del objeto

Page 49: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 49

Para verificar un objeto previamente identificado se pueden utilizar los siguientes criterios:

- Relevancia para el dominio del problema.

- Existencia independiente- Atributos y Operaciones

Page 50: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 50

CLASE

Clase es una agrupacion de objetos con los mismos tipos de caracteristicas

Los objetos son instancias de las clases.

Las clases definen atributos y operaciones para sus objetos, no para ellas mismas.

Page 51: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 51

……….CLASES Y OBJETOSCLASE. Es un conjunto de objetos que comparten una

estructura comun y un comportamiento común.

Page 52: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 52

TIPOS DE RELACION

ENTRE CLASES

asociacion

agregacion (tiene)

composicion (incluye)(parte de)

dependencia

navegacion (es un)

Page 53: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 53

VENDEDOR

ITEM_SOLICITADO CLIENTE

ORDEN_COMPRA

recibe

incluye tiene

Page 54: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 54

GENERALIZACION

Es el proceso (durante las etapas de analisis y diseno de sistemas) de identificar y definir los atributos y operaciones comunes en una coleccion de objetos.

• Permite identificar nuevas clases• Reduce la redundancia• Promueve la reutilizacion de codigo

Page 55: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 55

HERENCIA

Es el mecanismo para definir una clase

en terminos de una clase ya existente.

Una subclase hereda los miembros de

una superclase

Page 56: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 56

VEHICULO

precio

Veloc_max

Frenar()

AUTO

descapotable

turbo

subir()

CAMION

capacidad

traccion

cargar()

Page 57: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 57

ESPECIALIZACION Y

GENERALIZACION

Mientras la generalizacion se concentra en las

clases mayores del sistema y ayuda a

encontrar nuevas clases, la especializacion

se concentra en crear clases mas especificas.

La especializacion es herencia con la adicion

o modificacion de operaciones para resolver

un problema especifico.

Page 58: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 58

ESPECIALIZACION Y

GENERALIZACION

especializacion

Generalizacion

Page 59: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 59

CLASIFICACIÓNIdentificar clases y objetos es fundamental en el

DOO. Implica descubrimiento e invención.

Page 60: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 60

ABSTRACCIONES CLAVEEs una clase u objeto que forma parte del vocabulario

del dominio del problema.

Page 61: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 61

SISTEMAS DE GESTION

DE

BASES DE DATOS

Page 62: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 62

SISTEMA DE BD

SGBD BD

Procesador de consulta Metadatos(DD)

+

Archivos de datos

Page 63: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 63

OBJETIVOS de SGBD

Proveer un ambiente que sea adecuado y

eficiente para recuperar y almacenar

información de la Base de Datos.

Gestionar grandes volumenes de

información.

Proveer seguridad a la informacion

almacenada en las Bases de Datos.

Page 64: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 64

CARACTERÍSTICAS PARA

USAR UN SGBD

REDUNDANCIA

Sin SGBD: La misma

información es almace-

nada en diversos archivos

privados.

Con SGBD: Redundancia

es reducida al mínimo,

inconsistencias son evita-

das por la integración de

datos.

INTEGRIDAD

Sin SGBD: Ej: Una consulta que revele que un empleado trabajó 400 horas/semana. Las reglas a ser obedecidas estan en cada una de las aplicaciones.

Con SGBD: Asegura que la información de la BD es correcta. Una vez que sean definidas las reglas para el SGBD, estas reglas valen para todas las aplicaciones automáticamente.

Page 65: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 65

…….usar un SGBD

TOMA DE DECISIONES

Sin SGBD:La información

necesaria estan esparcidas

en archivos pertenecientes a

sistemas distintos.

Con SGBD: La integración

de los datos facilita la

obtención rapida de las

informaciones(ayuda en la

toma de decisiones)

ACCESO A

INFORMACION

Sin SGBD: Los formatos

de archivos dependen del

lenguaje o del producto

usado para generarlos

Con SGBD: Los formatos

de archivos son accedidos

por el SGBD, no por

programas de aplicación

Page 66: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 66

…….usar un SGBD

INDEPENDENCIA DE LOS DATOS

Sin SGBD: Los programas de aplicación dependen de los formatos del archivo.

Con SGBD: Los farmatos de registros se almacenan en la misma BD(junto con los datos) y son accedidos por el SGBD, no por el programa de aplicación.

SEGURIDAD Y

PROTECCION

Sin SGBD: Formas

estandares de seguridad

utilizando codigos y señas

Con SGBD: Hay esquema

adicional de proteccion: el

usuario ve la BD por

medio de “ventanas”

Page 67: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 67

…….usar un SGBD

USO CONCURRENTE DE LOS DATOS

Sin SGBD: Los archivos son utilizados por varios usuarios simultaneamente. Alquien tiene que sincronizar los eventos.

Ej: dos clientes del banco, que depositan en la misma cuenta, al mismo tiempo:

Estado inicial de la cuenta Bs.500

Cli_A deposita 200

Cli_B deposita 300

Page 68: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 68

…….usar un SGBD

CASO1:

Cli_A: lee 500

Cli_A: 500 + 200

total : 700

Cli_B: lee 700

Cli_B: 700 + 300

total: 1000

OK

CASO2:

Cli_A: lee 500

Cli_B: lee 500

Cli_A: 500+200=700

Cli_B: 500+300=800

….problema

Con SGBD: Control de concurrencia de transacciones

con actualizaciones atomicas (una por cada vez)

Page 69: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 69

FUNCIONES DEL ABD

Identifica información relevante.

Definiciones de esquema (LDD)

Definición de la estructura de almacenamiento y del método de acceso.

Modificación del esquema y de la organización fisica.

Definición de aspectos de seguridad(usuarios, entornos, infraestructura)

Especificación de las restricciones de integridad

Reorganización

Administracion del uso de la BD

Estadisticas

Auditoria

Backup y recuperacion

Page 70: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 70

1.5 BASES DE DATOS

DISTRIBUIDAS Es una colección de múltiples y

lógicamente relacionadas BD sobre una red de ordenadores.

Es una BD almacenada en varios ordenadores que se comunican mediante una red de comunicaciones.

Una de las cosas que debe ser distribuido es el procesamiento logico.

Page 71: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 71

SISTEMAS DISTRIBUIDOS

Un SGBDD, es el software que administra

los mecanismos de acceso, de forma

transparente para los usuarios.

Los datos son localizados en diferentes

maquinas.

Datos son compartidos por los usuarios

Page 72: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 72

DISEÑO DE BDD

Las dos decisiones principales que se deben

realizar en el diseño de BDD son: Dividir

las bases en partes y saber donde almacenar

cada una.

Los terminos para estas actividades son:

- Fragmentación

- Asignación

Page 73: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 73

FRAGMENTACION

HORIZONTAL: particiona una relación en

sus tuplas. Asi cada fragmento tiene un

subconjunto de las tuplas de la relacion.

VERTICAL: produce fragmentos R1,R2….,

cada cual contiene un subconjunto de

atributos de R tambien como la llave

primaria de R.

Page 74: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 74

APLICACIONES

Fabricas, especialmente empresas con

multiples plantas industriales

Sistemas de apoyo a decisiones corporativos

Empresas aéreas.

Cadenas de hoteles

Cualquier institución que tenga una estruc-

tura de organización descentralizada

Page 75: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 75

VENTAJAS

Gestión transparente de la localización de datos.

Aumento de confiabilidad y disponibilidad a traves de transacciones distribuidas.

Expansion mas facil y simple

Economica: es mejor invertir en un conjunto de maquinas de pequeño porte que en una única maquina de gran capacidad.

Page 76: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 76

DESVENTAJAS

Poca experiencia de profesionales

Complejidad del sistema

Seguridad

Consistencia de la BD.

Page 77: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 77

1.6 NORMALIZACION

Page 78: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 78

DEPENDENCIA

Dependencia funcional: Sea el esquema

R(A,DF), y sean X, Y dos subconjuntos de A, a

los que llamamos descriptores. Se dice que Y

“DF” de X o que X implica o determina a Y, y se

denota como X Y si, y solo si, a cada valor x

del atributo X, le corresponde un unico valor y del

atributo Y.

Ej: Codigo de estudiante determina el nombre

del mismo

Page 79: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 79

DEPENDENCIA

Dependencia funcional completa: Se dice

que Y tiene dependencia funcional completa

o plena de X, si depende funcionalmente de

X, pero no depende de ningun subconjunto

de este. Se representa por X => Y, por tanto

X=>Y Sii no existe un X’ subconjunto X |

X’ Y

Page 80: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 80

DEPENDENCIA

Dependencia funcional trivial: Una dependencia

funcional X Y se dice que es trivial si Y es un

subconjunto propio de X.

Dependencia funcional elemental: Decimos que

una dependencia funcional X Y es elemental si Y

es un atributo unico no incluido en X, y no existe X’

incluido en X tal que X’ Y, es decir, la DFE es

una DFC, no trivial y en la que el implicado es un

atributo unico.

Page 81: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 81

DEPENDENCIA

Dependencia funcional transitiva: Dado el esquema de relacion R(X,Y,Z) en las que existen las siguientes DF:

X Y Y Z

Se dice que Z tiene una dependencia transitiva respecto a X a traves de Y, lo que se representa por:

X - -> Z

Page 82: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 82

CLAVES

Clave candidata: Una clave cadidata de una

relacion es un conjunto no vacio de atributos

que identifican univocamente y minimamente

cada tupla de una relacion.

En toda relacion siempre hay, al menos, una

clave candidata, ya que el conjunto de

atributos que constituye la relacion gozara de

la propiedad de unicidad.

Page 83: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 83

CLAVES

Una relacion puede tener mas de una clave candidata:

Clave primaria: Los atributos que forman parte de la clave primaria no pueden tomar valores nulos.

Clave alternativa: Son aquellas claves candidatas que no han sido elegidas como claves primarias de la relacion.

Page 84: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 84

CLAVES

Clave ajena: Una clave ajena (externa o

foranea) de una relacion R2 es un conjunto no

vacio de atributos cuyos valores han de

coincidir con los valores de la clave primaria

de una relacion R1. Se dice que R2 es la

relacion que “referencia”, mientras que R1 es

la relacion “referenciada”.

Page 85: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 85

FORMAS NORMALES

Cuando se disena una BD mediante el MR,

al igual que ocurre con otros modelos,

obtenemos diferentes esquemas relacionales

y no todos ellos son equivalentes, ya que

unos van a representar la realidad mejor que

otros.

Con la teoria de la normalizacion, se

consigue una formalizacion en el diseno

logico de BDR.

Page 86: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 86

1ra. FORMA NORMAL

Para que una tabla pueda ser considerada una

relacion no debe admitir grupos repetitivos,

esto es, debe estar en primera forma normal

Se dice que una relacion esta en 1FN cuando

cada atributo solo toma un valor del dominio

simple subyacente.

Page 87: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 87

2da. FORMA NORMAL

Esta basada en el concepto de dependencia

plena y en las interrelaciones existentes entre

los atributos principales de una relacion.

Se dice que una relacion esta en 2FN si: Esta en

1FN y cada atributo no principal tiene DFC

respecto de cada una de las claves.

Page 88: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 88

3ra. FORMA NORMAL

Esta basada en el concepto de DFT

Un esquema de relacion R esta en 3FN Sii.

Esta en 2FN y no existe ningun atributo no

principal que dependa transitivamente de

alguna clave R

Page 89: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 89

FORMA NORMAL Boyce-Codd

Para ciertos problemas fueron insuficientes las

tres primeras formas normales, en relaciones

que presentaban varias claves candidatas

compuestas que se solapaban.

Se dice que una relacion se encuentra en FNBC

si, y solo si, todo determinante es una clave

candidata.

Page 90: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 90

SQL

(Structured Query Languaje) La mayoria de los SGBD relacionales

proveen un lenguaje de alto nivel, en el que el usuario solo especifica lo que desea como resultado, dejando las decisiones de como ejecutar la consulta para el sistema.

El SQL es lenguaje standard de BD.

Incorpora el algebra relacional y el calculo relacional

Page 91: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 91

OPERACIONES

FUNDAMENTALES

Seleccion ( ): p(R) R’

p – predicado de la seleccion

(condicion a ser satisfecha)

Proyeccion ( ): LA(R) R’

LA – Lista de atributos deseados

Producto cartesiano (x): R1xR2 R’

Page 92: Preparado por: Miguel Cotaña 1cotana.informatica.edu.bo/downloads/bd-QUINTO1.pdf · los programas se organizan como colecciones cooperativas de objetos. DOO: Es un método de diseño

Preparado por: Miguel Cotaña 92

…..operaciones fund..

Union (U):R1 U R2

a) R1 y R2 necesitan ser del mismo orden.

Igual numero de atributos

b) El dominio del i-esimo atributo en R1 es

igual al i-esimo atributo en R2

Diferencia (-): R1 – R2 R’

mismas observaciones de la union