metodologia de base de datos

61
Departamento de Lenguajes y Sistemas Informáticos Gestión de la Gestión de la Información Información Patricio Martínez Barco [email protected]

description

base de datos

Transcript of metodologia de base de datos

  • TEMA 2 (PARTE I)METODOLOGA DE DISEO DE BASES DE DATOSGestin de la Informacin*

  • Tema 2. Metodologa de diseo de bases de datosObjetivos IntroduccinCiclo de vida del sistema de base de datosProceso de diseo de BDsDiseo conceptualDiseo lgicoDiseo fsico*

  • OBJETIVOSTema 2. Metodologa de diseo de BDs*

  • ObjetivosEnmarcar el contexto de la asignatura en el marco del desarrollo de un sistema de informacinPresentar una metodologa de diseoEstandarizar los proyectos de diseoSeparar y distinguir las tres fasesConceptualLgicoFsicoSaber hacervalidar el esquema conceptual contra los requisitos de la organizacindocumentar el diseo conceptualintegrar a los usuarios finales en el proceso*

  • INTRODUCCINTema 2. Metodologa de diseo de BDs*

  • IntroduccinQu es una metodologa de diseo?Mtodo planificado/estructuradoProcedimientosTcnicasHerramientasDocumentacinAyuda al diseador en el desarrollo del proyectoSeleccionarPlanificarGestionarControlarEvaluar

    *

  • IntroduccinFactores crticos de xito para una metodologa

    *

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinCiclo de vida desarrollo sistemas de informacin*

  • IntroduccinAlternativas metodolgicas del ciclo de vidaDefinen la forma de abordar cada una de las fasesModelo en cascada o clsicotermina por completo cada fase antes de empezar la siguiente*PlanificacinAnlisisDiseoImplementacinPruebasInstalacinMantenimiento

  • IntroduccinAlternativas metodolgicas del ciclo de vidaModelo en cascada o clsicoModelo en VFlujo desarrollo + flujo validacinModelo en espiralFlujo se reinicia n veces para mejorar hasta dar por vlidoModelo iterativoComo anterior, y crea versiones entregables en cada iteracinModelos gilesBasados en prototiposConclusinMuchas alternativas pero todas basadas en el ciclo de vida expuesto*

  • IntroduccinAsignatura Gestin de la Informacin*MBITO:Bases de datosTransacciones

  • CICLO DE VIDA DE UNA BASE DE DATOSTema 2. Metodologa de diseo de BDs*

  • Ciclo de vida de una base de datos*PRCTICAS DE GESTIN DE INFORMACINCURSO 2013-2014

  • PROCESO DE DISEO DE BDS(UNA ALTERNATIVA METODOLGICA)Tema 2. Metodologa de diseo de BDs*

  • Proceso de diseo de una BDObjetivoAtender las necesidades de informacin de la organizacinMtodoBasado en la arquitectura por niveles del modelo ANSI/SPARCHitosDiseo de estructura y contenido de la BDDiseo de las transacciones que atacan a la BD

    *

  • Proceso de diseo de una BDArquitectura de diseo: modelo ANSI/SPARC*

  • Alternativa metodolgica del ciclo de vida de la BDsEn cascada: versin particular para las BDs

    Proceso de diseo de una BD*

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • Fase 1: Anlisis de requisitosObjetivosRecopilacin todos los requisitos de datos y transaccionesCompleta: todos los servicios de usuario estn especificadosConsistente: no hay definiciones ambiguasRacionalizar su utilidad (y priorizarlos)Factores claveDimensionar correctamenteFuncionalidad insuficiente >> Inutiliza el resultadoFuncionalidad excesiva >> Igualmente hace inviable su usoTodos los agentes del sistema son claveDirectivos, operarios, administradores,

    *

  • Fase 1: Anlisis de requisitosTipos de requisitos a abordarSegn su funcinFuncionalesServicios que ha de proveer la BDLo que debe y no debe hacerNo funcionalesAsociados a las propiedades emergentes del sistemaFiabilidadTiempo de respuestaSeguridadCapacidad de almacenamiento

    *

  • Fase 1: Anlisis de requisitosTipos de requisitos a abordarSegn su naturalezaEstticosRequisitos de informacin que se debe almacenarDATOSDinmicosRequisitos de procesos que hacen evolucionar la informacinTRANSACCIONES

    *

  • Fase 1: Anlisis de requisitosAlgunas pistasCul es el proceso bsico de la organizacin?Qu datos utiliza o produce este proceso?Cules son los lmites impuestos por el tiempo y la carga de trabajo?Qu controles de calidad utiliza?Cul es la finalidad de la actividad?Qu pasos se siguen para realizarla?Dnde y quin realiza estos pasos?Cunto tiempo tardan en efectuarlos?Con cunta frecuencia lo hacen?Quines emplean la informacin resultante?

    *

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITER (http://jezzsystemzone.blogspot.com.es Antonio Med Bar@blogger)La ferretera FERRITER tiene la necesidad de contar con un sistema que permita llevar un mejor control, que a su vez sea fcil de manejar; el control consiste en llevar a cabo un registro de todos los productos con los que se cuenta, los clientes frecuentes y los distintos proveedores de dicha ferretera.El sistema registrar cualquier operacin, tanto de cliente como de productos. Es decir, operaciones de altas, bajas, modificaciones, descuentos a clientes frecuentes, clientes con crdito, etc.). Tambin contara con un sistema de impresin de facturas.

    *

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITERPRODUCTOS. Para poder dar de alta cada producto se tendrn en cuenta: una clave o cdigo del producto (esta se asignara tomando en cuenta el tipo del producto), el nombre, la cantidad, el precio.El tipo o clasificacin de los productos se da de la siguiente manera: cemento, pisos y azulejos, yeso, de ferretera, herramientas Truper y acero.CLIENTES CON CRDITO. En este inventario solo se enlistaran los clientes que cuenten con el servicio de pago a crdito. Para este catalogo se asignaran datos como: el nombre, la direccin, el telfono y la clave de la venta.*

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITERPROVEEDORES. Dentro del registro de los proveedores se ocupara la siguiente informacin: una clave de proveedor, clave del producto, la cantidad y el nombre o la empresa.Asimismo es fundamental mencionar que no se cuenta con un solo proveedor, pues ste es segn el tipo de productos faltantes y es cuando se hace el pedido, ya que estos no tienen visitas peridicas, sino que surten cuando la ferretera lo solicita.*

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITERVENTAS. Adems, se llevar un registro de las ventas para facilitar el control de los productos, en este apartado se producir una nota de remisin para luego imprimirla despus de haber terminado la venta para entregrsela al cliente. Las ventas se dividirn en:Ventas a crdito. Registrar datos como: una clave de la venta, el nombre del cliente, la clave del producto, cantidad, el total a pagar, el enganche dado, la fecha y hora.Ventas al contado. En estas solo se registrar la venta, sin tomar en cuenta al cliente; registrar datos como: la clave del producto, cantidad, el total a pagar, el descuento (si es que se hace) la fecha y hora.*

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITEREs importante aclarar que adems de los datos mencionados la nota de remisin contendr el nombre del cliente y su domicilio, nombre de los productos y sus cantidades y precios correspondientes, as como el total a pagar.COMPRAS. Conjuntamente se realizan surtidos dentro de la ferretera; es por ello que se controlaran las adquisiciones hechas, registrando: clave del proveedor, clave del producto, cantidad, precio de compra, precio de venta, la fecha y la hora.

    *

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITER

    *Requisitos de datosProductos: id producto, nombre, precio, cantidad disponibleClientes con crdito: id cliente, nombre, direccin, telfonoVentas a crdito: id venta, id cliente, id producto, cantidad, importe total, fecha, importe seal (anticipo) Ventas al contado: id producto, cantidad, total, fecha, horaPagos: id venta, importe pagado, fechaProveedores: id proveedor, nombre, id productoCompras: id producto, id proveedor, cantidad, precio compra, precio venta, fecha, hora

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITERRequisitos de transacciones

    *Cliente solicita producto a ferreteraCliente realiza pago a ferreteraCliente solicita crdito a ferreteraAdministrador solicita producto a proveedorAdministrador realiza cobro a clienteAdministrador realiza pago a proveedorAdministrador presta crdito a clienteProveedor entrega producto a ferreteraProveedor realiza cobro a ferreteraOperario entrega producto a cliente

  • Fase 1: Anlisis de requisitosEjemplo: requisitos de la ferretera FERRITERRequisitos no funcionales

    *Todas las operaciones se efectan en tiempo realHay una media de 500 operaciones de venta al da100 operaciones de venta a crdito al da150 operaciones de pago al daHay un total de25 proveedores1000 clientes1500 artculosLa BD debe estar activa 24h/365 das

  • Fase 1: Anlisis de requisitosAnlisis de requisitosEstrategias de recopilacinCentralizadaIntegradaHbrido

    *

  • Fase 1: Anlisis de requisitosTcnicas de recopilacinCentralizadaCada usuario expresa sus requisitos y se fusionan para arrancar una fase nica de diseotil en sistemas con alto solapamiento de requisitos entre usuariosEn sistemas simples

    *Req. Usu 1Req. Usu 2Req. Usu 3Diseo global

  • Fase 1: Anlisis de requisitosTcnicas de recopilacinIntegradaCada usuario expresa sus requisitos y se mantienen independientes arrancando fases de diseo independientestil en sistemas con bajo solapamiento de requisitos entre usuariosEn sistemas complejos

    *Req. Usu 1Req. Usu 2Req. Usu 3Diseo local 1Diseo local 2Diseo local 3

  • Fase 1: Anlisis de requisitosTcnicas de recopilacinHbridaAlgunos requisitos se funden en una fase inicial para iniciar diseos nicos.En una segunda fase mantienen algunos diseos locales, otros se han fundido Solucin de compromiso para la mayora de los casos

    *Req. Usu 1Req. Usu 2Req. Usu 3Diseo global 1Diseo local 2

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • Fase 2: Diseo conceptualObjetivosConstruccin del esquema conceptualFactores claveCapacidad de abstraccinMundo real mundo conceptualModelar nicamente requisitos (lo dems no es relevante)No pensar enGestores de BDs, estructuras de datos, S.O., implementaciones, ordenadoresIncluir parte esttica + parte dinmicaEl esquema conceptual no separa

    *

  • Fase 2: Diseo conceptual*Ya hablaremos ms en detalle en este tema pero bsicamente

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • ObjetivoDeterminar el software que albergar nuestra BDFactores de xitoElegir el modelo de datos lgico que nos interesa: relacional, OO, XML, de propsito especficoElegir el sistema de acuerdo a criterios objetivos (tabla de pros/contras):CosteFuncionalidades implementadasLimitaciones de almacenamiento y/o usuariosTiempos de respuestaFacilidad/coste de mantenimiento

    Fase 3: Eleccin del SGBD*

  • Ejemplo (tiempos / tolerancia / integridad)Rojas, W. & Gonzlez, M.A. Proyecto Metodologa y resultados de comparacin entre MYSQL Server 4.1.11 y SQL Server 2000 http://www.monografias.com/trabajos29/comparacion-sistemas/comparacion-sistemas2.shtml

    Fase 3: Eleccin del SGBD*P: Prueba en condiciones idnticasD: Velocidad ejecucin normalCS: Velocidad sistema cargado con otros procesosTF: Tolerancia a fallos. Tiempo de recuperacin ante corte elctrico)I: Integridad de datos (invariante)

  • Ejemplo (funcionalidades) (Rojas&Gonzlez)

    Fase 3: Eleccin del SGBD

    CaractersticaMysql 4.1Sql Server 2000ObservacionesTipos de datosCompletoIncompletoMysql Soporta Emun, Set, Date, Time y Ao. Sql Server no los soportaVistasNo SoportaCompletoa partir de la versin 5.0DisparadoresNo SoportaCompletoa partir de la versin 5.0Procedimientos AlmacenadosNo SoportaCompletoa partir de la versin 5.0Definicin de FuncionesNo SoportaCompletoa partir de la versin 5.0CursoresNo SoportaCompletoa partir de la versin 5.0Select, Update, delete, Join, Insert, Union, Select anidadoCompletoCompletoXMLNo SoportaCompletoFunciones Estndares SqlCompletoCompletoIntegridad ReferencialCompletoCompletoMysql con el tipo de tabla InnodbSoporte Texto LargoCompletoCompletoIndexacinCompletoCompleto

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • Fase 4: Diseo lgicoObjetivosConstruccin del esquema lgicoDisear la lgica de las transaccionesFactores claveAbordar lgica de datos + transaccionesMantener la independencia del SGBD concreto elegidoContemplar todo lo reflejado en el conceptualTransformar en transacciones las restricciones integridad no asumibles por el modelo lgico de datos

    *

  • Fase 4: Diseo lgico*Tambin hablaremos ms en detalle en el siguiente tema pero bsicamente

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • Fase 5: Diseo fsicoObjetivosImplementacin y puesta en marcha de la base de datosFactores claveAnalizar todas las posibilidades del SGBD destinoQu implementa? Qu lmites tiene?...Pensar en las necesidades de la organizacinQu requisitos no funcionales? Tiempos de respuesta? Capacidad de almacenamiento? Fiabilidad? Seguridad?

    *

  • Fase 5: Diseo fsico*Tambin en siguientes temas pero bsicamente

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • Fase 6: Diseo de la carga y transformacin BDObjetivosDisear cmo se poblar la BD con datos inicialesFactores claveConsiderar todas las fuentes posiblesBDs antiguas de la organizacinDocumentacin no estructurada: textos, internetOpendata y otras BDs compartidasDisear todos los flujos de transformacinTipos de datos. Ej: texto decimal(10,2)Atributos. Ej: cliente.nombreEstructuras. Ej: Fichero clientes relacin clientesDisear un proceso que sea reutilizable. Ej. Almacenando el procedimiento SQL*

  • Fase 6: Diseo de la carga y transformacin BDFormatos tpicos estructurados y semi-estructurados en origenComma-separated values (CSV).eXtensible Markup Language (XML).Ficheros de grficos e imgenes (DXF, DWG, IFF, JPG, LAS...).Ficheros geogrficos (GDE, Shapefile SHP-, ECW, GEOTIFF, XYZ).Hyper Text Markup Language (HTML).JavaScript Object Notation (JSON).Microsoft Office (DOC, DOCX, XLS, XLSX).Open Office (ODT).Really Simple Syndication (RSS).Resource Description Framework (RDF).*

  • Alternativa metodolgica del ciclo de vida de la BDs

    Proceso de diseo de una BD*

  • Fase 7: Implantacin*

  • HerramientasHerramientas CASE de ayuda al diseo de bases de datosMicrosoft VisioDiseo conceptual: UML y ER simple + diccionario de datosConexin con Excel, Access, SQL Server, ODBCMySQL WorkbenchDiseo conceptual (ms lgico que conceptual): ER Crows FootDirectamente entidad = tabla + relacin = clave ajenaConexin con MySQL: opcin de sincronizacin del modelo con la BDRISE EditorDiseo conceptual (con limitaciones): ER Crows FootGeneracin de script SQL para creacin BD.

    *