base datos

Post on 11-Jan-2016

212 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Programacion II

TRANSCRIPT

Base de datos

• Conjunto unificado de información, que será compartida por diferentes usuarios de la organización

• La función básica de una base de datos es permitir el almacenamiento y la recuperación de la información necesaria, para que las personas de la organización puedan tomar decisiones.

Arquitectura de un SIEsquemaExterno

EsquemaExterno

EsquemaExterno

EsquemaConceptual

EsquemaInterno

Diccionariode Datos

Lista de eventosCursograma

Diagrama de Flujo de Datos

Modelo Relacional

TransformadorConceptual / Interno

Transformador Externo /Conceptual

TransformadorInterno / Almacenado

Operativo

Planeamiento

EstratégicoSistemaEjecutivo

SistemaApoyo a lasDecisiones

SistemasTransacciones

BasedeDatos

Sistema deGestión de Base de Datos (SGBD o DBMS)

• Son programas de software para la administración de las Bases de Datos; que permiten:almacenar, manipular y recuperar datos en una computadora.

• El SGBD también se encargará de la comunicación entre el usuario y la base de datos, proporcionándole al usuario, los medios para: obtener información, introducir nuevos datos y actualizar los ya existentes.

Estructura de una Base de Datos

Legajo Apellido Edad Nación

1 Rimoli 33 Chile2 Lemos 44 Perú3 Salgado 55 Brasil4 Ponce 66 Argentina

Llave primaria

Atributos

ChilePerú Dominio

RegistrosEntidad

Estructura de una BD

Estructura de una BD

Tipos de archivos• Archivo Maestro:

– Guarda información sobre entidades y eventos esenciales para la organización (proveedores, ventas históricas)

• Archivo de Transacciones– acumular datos de eventos en el momento que ocurran (ventas,

ordenes de compra, pagos, cobranzas)

• Archivo de Control– Permiten el análisis de desempeño - Maestro + Transacciones -

(Volumen de ventas por: producto, vendedor, cliente )

• Archivo de Planeamiento– contienen datos referentes a los niveles esperados de los datos

existentes en los archivos maestros y de transacciones (programa de : ventas, compras, producción, ppto. Financiero)

Métodos para el desarrollo de Sistemas de Información

Llave Primaria e índices de acceso

Herramientas para el desarrollo de Sistemas

• Lista de Eventos

• Diagrama de Flujo de Datos

• Diccionario de Datos

• Modelo Relacional de Datos

• Tablas de Decisión

Modelo conceptual• Un modelo es una descripción capaz de ser

comunicada y que busca:– Comunicar un cierto aspecto (visión)– De una parte de la realidad (sistema)– Con cierto grado de detalle (abstracción)– Conforme perseguido por alguien (autor del

modelo)– Con el objetivo de servir a los propósitos del

usuario.

Modelo conceptual

• El conocimiento sobre alguna cosa es la habilidad de formar un modelo mental que represente esta cosa como así también las acciones que ella puede realizar o se puede realizar sobre ella. Cuando el individuo verifica acciones sobre este modelo él puede predecir las implicaciones que estas acciones tendrán sobre el mundo real.

• Al relacionar las cosas entre sí y al pensar en ellas nos lleva a un pensamiento estructurado y poder así, describir el funcionamiento de un sistema, y esto debería ser el propósito de todo modelo.

Modelo conceptual

• Los modelos pueden tener diferentes clases de estructuras; y las más comunes son la del– lenguaje natural,– la clase simbólica y– la clase matemática.

Lista de eventos

• Elegir el nivel apropiado de abstracción para los términos.

• Evitar el uso de casos en lugar de conceptos generales.

• Evitar las expresiones vagas o indirectas.• Elegir un estilo estandarizado de enunciado.• Verificar los sinónimos y los homónimos.• Hacer explícitas las referencias entre términos.• Hacer un Diccionario de Datos.

EL DIAGRAMA DE FLUJO DE DATOS - OBJETIVOS -• Describir el contexto del sistema, determinando lo

que ocurrirá en cada una de las áreas de la empresa, denominadas Entidades externas, que participen de este sistema;

• Detallar los procesos a ser realizados;

• Enumerar los archivos de datos necesarios, en cada proceso;

• Definir los flujos de datos, que participen en el procedimiento.

TÉCNICA DE DISEÑO DEL DFD

Diagrama de Flujo de Datos

El diccionario de datos

Es un listado organizado de todos los elementos de datos pertinentes al sistema, con definiciones precisas y rigurosas para que el usuario y el analista de sistemas puedan conocer todas las entradas, salidas, componentes de depósitos y cálculos intermediarios

• Describiendo :– el significado de los flujos y los depósitos– la composición de paquetes agregados de datos

que se mueven por los flujos– la composición de los paquetes de datos de los

depósitos

• Especificando los valores relevantes y unidades de inf. de los flujos de datos y depósitos de datos

El DD define los elementos de datos

La necesidad de la anotación de un DD

Anotación del DD• = COMPUESTO DE

• + Y

• ( ) OPCIONAL

• { } INTERACCIÓN

• [ ] ELECCIÓN DE UNA DE LAS OPCIONES• * * COMENTARIO• @ IDENTIFICADOR (CAMPO LLAVE DE UN DEPÓSITO )

• | SEPARACIONES ALTERNATIVAS EN SEPARADORES [ ]

EJEMPLO

• nombre = titulo+primer_nombre+(nombre_intermedio)+último_ nombre

• título = [Sr | Sra | Sras | Srta | Dr. | Profesor ]• primer_nombre = { caracter_válido }• nombre_intermedio = { caracter_valido }• último_nombre = { caracter_valido }• caracter_válido = { A_Z | a_z | 0_9 | }

Definiciones

• A = B + C

• PESO = *Peso del paciente al llegar al hospital *

* unidades:kilogramos; intervalo: 1-200 *

• ALTURA = *Altura del paciente al llegar al hospital*

*unidades:centímetros;intervalo:20-200*

Elementos de datos elementalesNO EXISTE DESCOMPOSICIÓN SIGNIFICATIVA EN EL

CONTEXTO DEL AMBIENTE DEL USUARIO

• altura_actual = **

* unidades:libras;intervalo:1-400*

• peso_actual = **

*unidades:pulgadas;intervalo:1-96*

• sexo = **

*valores: [ M | F ] *

Elementos de datos opcionales

• dirección_cliente = (dirección_envío)+(dirección_cobro)

• dirección_cliente=

[dirección_envío|dirección_cobro|dirección_embarque | dirección de cobro ]

• dirección_cliente = dirección_envío+(dirección_cobro)

Interacción, Selección y Sinónimos

• Interacciónpedido =nombre_cliente+dirección_envío+1{ítem}10

• Selección

sexo = { masculino|femenino }

tipo_cliente = { gobierno|industria|otros }

• Sinónimos

cliente = *parroquiano*

CONTENIDO DEL DICCIONARIO DE DATOS

Nombre

Tipo de elemento

Definición

Estructura

Estructura de un elemento

Estructura en Excel

Estructura en Access

LA MODELIZACIÓN DE DATOS ALMACENADOS

EL MODELO RELACIONAL DE DATOS (RDM).

Componentes de un RDM

• Entidades o Tipos de objetos

• Relaciones

MATERIALESNúmero de artículoDescripción del materialCosto unitarioExistencia

PEDIDO DE MATERIALESNúmero de pedidoNúmero de artículoCantidad pedida

TIPOS DE RELACIONES

• Relación uno a varios– La relación uno a varios es el tipo de relación más común. En este

tipo de relación, un registro de la Tabla A puede tener muchos registros coincidentes en la Tabla B, pero un registro de la Tabla B sólo tiene un registro coincidente en la Tabla A.

• Relación varios a varios– En una relación varios a varios, un registro de la Tabla A puede

tener muchos registros coincidentes en la Tabla B y viceversa.

• Relación uno a uno– En una relación uno a uno, cada registro de la Tabla A sólo puede

tener un registro coincidente en la Tabla B y viceversa.

BENEFICIOS DEL RDM

• Da una visión de alto nivel de los archivos

• Ayuda a descubrir los elementos no detectadas en el DFD

• Simplifica la estructuración de los datos

• Facilita la definición y el análisis de las Llaves primarias y foráneas

• Facilita la definición de las relaciones.

RDM - Datos llave

• Llave Primaria (PK) Conjunto de atributos que distingue cada ocurrencia de

una entidad de forma inequívoca a las demás.

Está subrayada en el RDM.

• Llave Foránea (FK)Conjunto de atributos común a dos entidades que sirve como relación entre las dos entidades.

No es un atributo de la entidad relacionada, pero es la

llave-primaria de la entidad con la cual ésta se relaciona Es marcada como FK en el RDM.

Las relaciones y sus llaves

• Relación uno-a-uno y sus llaves:

Las relaciones y sus Llaves

• Relaciones uno-a-uno y sus llaves:

– ¿La relación será siempre 1:1?

– ¿En que archivos se deberá incluir la Llave-Foránea?

Las relaciones y sus Llaves

• Relación uno-a-varios y sus llaves:

Las relaciones y sus Llaves

• Relación uno-a-varios y sus llaves:

Las relaciones y sus Llaves

• Relación varios-a-varios y sus llaves:

Las relaciones y sus Llaves

• Relación varios-a-varios resuelta (entidad asociativa):

Variación en el Tiempo

• Se debe evaluar si los atributos de una entidad (datos) variarán en el tiempo.

• En cada caso, se debe verificar la necesidad de almacenar los valores históricos que asumirán.

• Cada vez que se almacenen los datos históricos se crea una entidad dependiente con una relación uno-a-varios (inicio del datawarehouse).

Modelado de Datos

• Define el contenido exacto de cada archivo de datos.

• Son detalladas las características de todos los datos que serán almacenados en cada tabla definida en el RDM.

• Debe ser realizado un relevamiento detallado para definir cada dato.

Modelado de Datos

• Obtener el menor número posible de datos en cada tabla.

• Esos datos deben ser suficientes para capturar todas las entradas.

• También deben ser suficientes para derivar todas las salidas (informaciones necesarias).

Modelado de Datos

• Se debe visitar el lugar en donde las entidades y sus datos son “utilizados”.

• El usuario debe participar y debe comprometerse con estas definiciones.

• Se Debe definir el dominio y la regla de validación para cada dato.

Modelado de Datos

• Para cada dato de cada archivo se debe definir:

– Nombre del dato

– Descripción del dato

– Tipo de dato

– Calificador del tipo de dato (Ej.: extensión)

– Formato del dato

– Dominio

– Reglas de validación

– Origen del dato

– Responsabilidad por el dato

Modelado de Datos

• En cada tabla se debe definir:– Llave-primaria– Llaves-foráneas– Llaves-secundarias

Modelado de Dados

• Para el RDM como un todo se debe analizar:– Nombres lógicos– Nombres físicos (nombres código)– Sinónimos– Homónimos– Estructuras de datos embutidas– Llaves múltiplas– Reglas de Validación (a nivel de datos, tablas y

relaciones)

Normalización• El proceso de normalización consiste en la

aplicación de reglas para definir adecuadamente los datos que compondrán las tablas, observando:

– Minimizar redundancias

– Eliminar anomalías de actualización

– Proveer mejor acceso a cualquier dato

– Asegurar resistencia al mantenimiento en el modelo de datos

Normalización

• Las tres primeras reglas de normalización son suficientes para resolver la gran mayoría de los casos:

– 1- Eliminar datos repetitivos

– 2- Eliminar datos redundantes

– 3- Eliminar datos no dependientes

Primera Forma Normal - 1FN

• Asegurar que todas las entidades son identificadas de forma única por una combinación de atributos y/o relaciones.

• Se refiere a cualquier archivo que posea un valor por campo; la relación entre la llave primaria de un archivo y cada uno de los otros campos debe ser de uno a uno.

Primera Forma Normal - 1FN

Modelado de las Reglas del Negocio

• Definición de las reglas del negocio que deben ser utilizadas en los procesos.

• Modeladas a través de:

• Lógica Estructurada

• Tablas de Decisión

• Árboles de Decisión

• Diagramas de Transición de Estado

• Tablas de Transición de Estado

Lógica Estructurada

• Modelar la lógica de las reglas del negocio utilizando construcciones de la programación estructurada:

• SI...ENTONCES

• CASO1...CASO2...CASO3...O ENTONCES

• ENCUANTO...

• HASTA QUE...

• DE 1 A N

– Modela y describe la ejecución de acciones y define procedimientos de cálculo y de decisión.

TABLAS DE DECISIÓN

• SON TÉCNICAS DE APLICACIÓN EN EL ANÁLISIS DE SISTEMAS, EN EL DISEÑO DE PROCEDIMIENTOS Y EN LA DOCUMENTACIÓN DE LOS MISMOS

• SON UN MEDIO DE COMUNICACIÓN Y UN INSTRUMENTO DE PROGRAMACIÓN

CONCEPTOS BÁSICOS SOBRE TABLAS DE DECISIÓN

• SON UN MEDIO DE COMUNICACIÓN ENTRE – LOS USUARIOS DE SISTEMAS– ANALISTAS Y– PROGRAMADORES

ESTRUCTURA Y COMPONENTES DE LAS TABLAS DE DECISIÓN

• DESCRIPCIÓN DE CONDICIONES– SON SITUACIONES VARIABLES QUE PUEDEN

OCURRIR

• DESCRIPCIÓN DE ACCIONES– SON LOS DISTINTOS COMPORTAMIENTOS O

CONDUCTAS QUE SE ASUMIRÁN EN FUNCIÓN DE LOS VALORES QUE TOMEN LAS CONDICIONES

• VALORES DE CONDICIONES

• VALORES DE ACCIONES

METODOLOGÍA PARA LA CONFECCIÓN DE TABLAS DE DECISIÓN

• DEFINIR E INTERPRETAR EL PROBLEMA• ELIMINAR LA INFORMACIÓN NO RELEVANTE

• DISTINGUIR LAS CONDICIONES Y LAS ACCIONES

• VERIFICAR LAS ALTERNATIVAS

• REGISTRAR LOS VALORES DE LAS CONDICIONES Y DE LAS ACCIONES.

• ANALIZAR EL RESULTADO OBTENIDO (REDUNDANCIAS Y CONTRADICCIONES)

Tablas de Decisión

REGLAS

DESCRIPCIÓN DECONDICIONES

VALORES DECONDICIONES

DESCRIPCIÓN DEACCIONES

VALORES DEACCIONES

Árboles de DecisiónSimplificadas (sin considerar probabilidades)

Permiten una mejor comunicación que tablas de decisión

1

2Acción B

Acción C

Acción D

Acción A

SI

NO

=1

=2

=3

Reconstruccióndel BPM y del RDM

• Reconstrucción del BPMNuevos archivos, flujos y procesos y reglas

pueden aparecer en el desarrollo del proyecto, como resultado de estas etapas posteriores.

• Reconstrucción del RDMNuevas tablas, datos, relaciones y reglas pueden

aparecer en el desarrollo del proyecto, como resultado de etapas posteriores.

Desempeño del Sistema

• Utilización de índices de acceso

• Creación de tablas auxiliares o temporarias

• Desnormalización.

Definición de los Módulos delSistema

• Un módulo siempre es invocado como una unidad.

• Constituye un procedimiento completo que el sistema debe ejecutar.

• Debe ser una operación que pueda ser vista por los usuarios del sistema como una unidad.

Definición de los Módulos delSistema

• La división de un sistema en módulos debe ser natural.

• Determinados procedimientos que guarden entre sí una misma relación de contexto o función deben ser agrupados en un módulo.

• Procesos del BPM y entidades del RDM pueden ser agrupados o categorizados para definir los módulos.

Diagrama Jerárquico delSistema

• Diagrama semejante a un organigrama.• Identifica cada uno de los módulos y la jerarquía

existente entre ellos.• Normalmente, determina la estructura de menús

de operación del sistema.

N Ó M IN A S C O M P R A S V E N TA S IN F O R M E S

M E N Ú

Especificación de los Módulos del Sistema

• Varía de acuerdo con el tipo de implementación:

Una persona

Varias personas

• Varía de acuerdo con la tecnología utilizada:Arquitectura tradicional

Arquitectura Cliente/Servidor

Orientada para Objetos

Especificación de los Módulos del Sistema

• Nombre

• Descripción

• Características temporales y geográficas del procesamiento

• Parte (explotada) del BPM

• Parte del RDM

• Tablas utilizadas (matriz CRUD)

Especificación de los Módulos del Sistema

• Presentación de los dados:– Formato de pantallas (formularios)– Formato de informes

• Detalles del Procesamiento:– Eventos– Transacciones/Reglas– Diálogo Sistema x Usuario

• Toda información superflua debe ser eliminada

Implementación

• Prototipo

– Descubierta

– Refinamiento

• Desarrollo Espiral

• Desarrollo Incremental

• Desarrollo Paralelo

• Versionamiento

• Tecnología

– Programación Visual

– Cliente/Servidor

– Orientada a objetos

– Web

Convergen a los sistemas modernos

FinFinBibliografía básica:

Modern Systems Analysis and Design

Hoffer, George & Valacich

Benjamin/Cummings Publishing, 1996

top related