Está en la página 1de 40

Diseño de Base de Datos

 Una base de datos bien diseñada brinda a los usuarios acceso a


información fundamental.
El proceso de diseño de base de datos

Una base de datos bien estructurada:

 Ahorra espacio en el disco eliminando los datos redundantes.


 Mantiene la precisión e integridad de los datos.
 Ofrece acceso a los datos de formas útiles.
Etapas del diseño

 Análisis de los requisitos o identificación del propósito de


tu base de datos.
 Organización de los datos en tablas.
 Especificación de las claves primarias y análisis de las
relaciones.
 Normalización para estandarizar las tablas.
Análisis de los requisitos o identificación del
propósito de tu base de datos.
Introducción a OO

La más grande invención después del fuego


Diseño estructurado tiene más de 40 años
Objetos: la única nueva técnica en las últimas
dos décadas
Visión funcional

Método tradicional
Eficiencia
Prototipos
Prueba y error compras, traspasos
y devoluciones
ventas, traspasos
y devoluciones

Diseño estructurado 1
Recibir
2
Despachar

Top down unidades y


costo
unidades

Descomposición funcional
Artículos
Modelamiento de funciones y
relaciones funcionales
 Descomposición funcional

Actualizar Actualizar
stock stock
1 ARTÍCULOS 3 MERMAS
VENTAS

2 Actualizar saldo de Artículos


crédito del cliente
• Código
Mensaje 1 Descripción
CLIENTES Ventas Stock
1. Restar
stock
.......
Fundamentos de la OO
 Naturalidad
 Se parece a como interactúan las personas
 Provee una visión sistémica
 Incorpora procesos de aprendizaje
 Clases y código reutilizable
 Eficiencia
 Visión holística y menos código (no repetición)
 Énfasis en los contenidos
 ¿Qué espera del objeto clientes?
Beneficios

Representación más simple y amplia, aplicable


a todo el ciclo de vida
Mejor interacción usuario/analista/diseñador
Más apropiado para abordar problemas
complejos
Beneficios en cada etapa
 En el Diseño
 La visión sistémica acerca al usuario
 Facilita el trabajo en equipo
 En la Construcción y Mantención
 Disminuye la cantidad de funciones
 Facilita la reusabilidad
 Reduce la complejidad
 Tiempos desde 100 a 1 (en teoría)
 Simplifica y reduce la mantención
Visión de los datos

Datos originales y normalizados


 Relaciones
 Evitar resultados y redundancia

En una forma tabular


Uso de querys para recuperar

Encabezado Proveedores Clientes Encabezado


de compras de ventas

Detalle de Artículos Detalle de


compras línea blanca ventas
Objetos (encapsulamiento)

Funcionalidad incorporada en un todo


indivisible (¿inteligencia?)
Recursividad

ARTÍCULOS
Msg 1  código Msg 1
VENTAS MERMAS
descripción
stock
1.- Resta
stock
.......
Conceptos Generales

 Clase
 Objeto
 Función
 Mensaje
 Independencia
 Enfoque sistémico
UML

 Es un lenguajae visual, usamos diagramas para mostrar


lo que deseamos
 Nos permite modelar varias cosas
Procesos
Sistemas
Software

Es extensible, flexible y escalable


Historia UML

 Desciende de tres metodologías


 Rumbaugh – Object Modeling Technique
 Jacobson – Object – Orient Software Enigneering
 Booch- Booch Method

 Rational Software combino las tres metodologías


 Existe varias versiones
 UML es un lenguaje que puede usarse con diferentes
metodologías pero no es una metodología en si mismo.
Modelado
 Un patrón sobre el cual que se producirá esta basado
 Un diseño o tipo
 Modelar es construir un plan basándose en un patrón
 En UML lo podemos considerar como una forma visual de escribir un negocio y sus
reglas.
 Alguno creen que modelar no tiene ningún valor, pero:
 Nos ayuda a comunicar el diseño
 Clasificar problemas complejos
 Ayuda a que los diseños sean cercanos a las implementaciones en la realidad
 Ahorra tiempo y dinero al permitir trabajar mas eficientemente
 Ayuda a definir y entender los objetivos
 Comprendemos el negocio y sus procesos

 No hay que exagerar el análisis al punto que ya no se es productivo “


Parálisis de análisis”
Diagrama

 Es una visualización de diferentes elementos de modelado descritos en


UML
 Cada diagrama se usa para un propósito ene specifico
 Cada diagrama tiene símbolos especiales para lograr ese propósito
 Es la representación de un proceso un sistema
Como esta compuesto

 Notacion
 Elementos que trabajan entre si adentro de un diagrama
 Conectores, símbolos, etc.

 Diagrama
 Object Management Group
 Se encarga de hacer las especificacioens del lenguaje
 Diagramas
 Objetos
Tipos de diagramas

 Tiene diagramas de estructura y de comportamiento


 De estructura
 Muestra la estructura estática de los elementos del sistema
 Clases, componentes, objetos, implementación, paquetes, etc.

 De comportamiento
 Muestra el comportamiento dinámico de los elementos del sistema
 Actividad, casos de uso, de estado, colaboración, secuencia, etc.
En donde se usa

 Modelar proceso de negocio


 Describir la arquitectura de un sistema
 Mostrar el comportamiento de un sistema
 Mostrar la estructura de una aplicación
 Modelar la estructura de los datos
 Crear las especificaciones de un sistema
 Facilitar la creación de código
Modelos
Vista Lógica

 Muestra las partes del sistema y sus interacciones


 Enfatiza las clases y los objetos
 Representa abstracciones
 Diagramas
 Clases
 Estados
 Objetos
 Secuencia
 Comunicación
Vista de Procesos

 Muestra la comunicación entre los procesos


 Muestra lo que necesita pasar en el sistema
 Muy útil si se tiene procesos simultáneos o hilos
 Diagrama
Actividad
Vista Fisica

 Modela en ambiente de ejecución


 Mapea el software en le hardware que lo ejecutara
 Diagrama
Implementación
Vista de desarrollo

 Muestra los módulos o componentes


 Nos muestra los elementos que lo construyen
 Diagramas
Componetes
Paquetes
Vista de Casos de Uso

 Muestra la funcionalidad del sistema


 Nos permite conocer los objetivos y los escenarios
 Da una perspectiva del sistema desde el exterior
 La información que nos ayuda a definir las funcionalidades de las otras
vistas
 Muestra lo que el sistema se supone debe hacer
 Diagramas
 Casos de uso
Otra forma de ver el sistema

 Modelo estático.
Muestra las características estructurales del sistema
 Modelo Dinámico
Muestra las características de comportamiento
 Modelo de implementación
Muestra los elementos necesarios para la
implementación del sistema
Diagramas de Casos de Uso
Diagrama de casos de uso
 Identificar los componentes principales que forma al sistema
 Captura los requerimientos fundamentales del sistema
 Actor
 Interactúa con el sistema para poder alcanzar un objetivo
 Cada objetivo es un caso de uso
 Puede ser una persona u otro sistema, es mejor pensarlo en termino de un rol
 Objetivo
 Lo que el actor quiere lograr al interactuar con le sitema
 Nos provee una vista de alto nivel
 Indica que actores están asociados con que caso de uso
 Las asociaciones se pueden colocar con flechas
 Las dependencias indica que es necearía una relación entre casos de uso
 No olvidar hacer una descripción de cada caso de uso
Explicación del caso de uso
expandido

También podría gustarte