
Pues bien, a raíz del hilo Empezar con buen pie una aplicación... me parece que sería un buen ejercicio cruzar ideas de como crear una base de datos y una vez que se tenga un concenso generalizado, proceder a crearla.
¿Que les parece?
Saludos
Escrito 11 diciembre 2013 - 09:06
Escrito 11 diciembre 2013 - 09:46
Escrito 11 diciembre 2013 - 10:10
Escrito 11 diciembre 2013 - 10:28
No me parece mala idea, pero para que sería la base de datos?
Escrito 11 diciembre 2013 - 10:38
En general lo ideal es identificar las entidades y su relación. Luego plasmarlo en un diaramama entidad relación. Yo uso visio para ello.
Escrito 11 diciembre 2013 - 11:51
Escrito 11 diciembre 2013 - 12:04
Escrito 11 diciembre 2013 - 12:09
Escrito 11 diciembre 2013 - 12:24
La Tormenta Perfecta, El Juego Perfecto, la base de datos perfecta..., ¿por qué ésa obsesión por algo que el ser humano no tiene? Más que "perfecta", yo diría "adecuada", especialmente cuando las necesidades, deseos y requisitos personales y empresariales son tan individuales como el folio del IFE...
Normalizar, es la palabra clave.
Escrito 11 diciembre 2013 - 12:31
¿por qué ésa obsesión por algo que el ser humano no tiene?
Escrito 11 diciembre 2013 - 12:36
Vamos a tener que hacer algo con Egostar, le está dando duro la edad. jejeje. D.O.S. fue ayer nada más!
En cuanto al tema, para mi es importante la normalización, al menos hasta la tercera forma normal y saber bien cuales son las tablas que no se normalizan (Históricos). Esto lo digo porque he visto muchas aplicaciones que no están bien normalizadas y luego tratan de hacer las cosas por código, generando más problema que soluciones.
No sé como explicar cuando hacerlo, pero la experiencia me dice que también hay que saber desnormalizar en algunos casos.
Espero sirva de algo este comentario.
Escrito 11 diciembre 2013 - 12:42
Escrito 11 diciembre 2013 - 12:59
Hola,
Asi como no existe la pareja perfecta, lo mismo se puede decir de una base de datos. No existe LA DB perfecta. Más bien si se podría llegar a concebir una base de datos estable y equilibrada. Pero he aquí la cuestión ¿estable y equilibrada según la percepción de quien?
Cada base de datos es un mundo y su diseño está condicionado por el propio entendimiento y el análisis del contexto que el desarrollador ha llevado a cabo.
Como cada uno tiene su percepción entonces es de esperarse diversas expresiones... y todas ellas pueden ser lo suficientemente estables y equilibradas. No existe una base de datos bien y otra mal... simplemente podríamos llegar a decir que bajo ciertos parámetros técnicos-operativos podrían encontrarse ciertos elementos flojos que la hicieran menos estable.
Pero si hay técnicas que permiten llegar a un buen puerto. En primer lugar, saber como y cuando aplicar las reglas normales. Con llevar el diseño hasta la 3ra regla normal por lo general es suficiente.
Pero he aquí que hay situaciones, técnicas-operativas y hasta se pueden concebir de diseño, en las que seguir una normalización desmedida nos puede entorpecer algunas situaciones. En estos casos es bienvenido el concepto de desnormalización. Generalmente se opta por una desnormalización en casos de rendimiento cuando las bases de datos son muy grandes.
El análisis y diseño de una base de datos comienza, o debería comenzar, en las primeras etapas del ciclo de desarrollo. Es más, lo correcto sería llevar en paralelo el A+D tanto de la aplicación como de la base de datos. Dependiendo del paradigma/proceso/modelo de desarrollo (no confundir con el paradigma de programación) se pueden incorporar a sus actividades estructurales tareas específicas formales que se dediquen formalmente a este punto.
Por ejemplo en el Paradigma de Cascada existe la actividad estructural (1ra) llamada Análisis de Requisitos*. Es durante esta etapa y la siguiente (Diseño) cuando tiene lugar justamente el diseño de la base de datos.
En Recolección/Análisis de requisitos justamente se lleva a cabo un estudio del contexto y del ambiente. Se extraen y se reconocen las entidades, roles, relaciones. Con esto es posible concebir al menos un DER provisorio o temporal con el cual empezar.
Hay variadas técnicas para la recolección de los requisitos, entre algunas de esas están los Casos de Uso. El C.U no es más que una "historia" en donde se relata los procesos significativos que aportan valor de negocio. En el relato se pueden observar ciertas palabras claves que pueden ser de ayuda para detectar las posibles entidades.
Saludos,
*Diferentes bibliografías nombran a esta actividad. Algunas la llaman Recolección de requisitos. Y hasta se reconoce una actividad estructural previa (orden 0) que la denominan Ingeniería de requisitos.
Escrito 11 diciembre 2013 - 01:02
¿No hay nada que hacer al respecto? ó ¿Debo conformarme con la frase "NOBODY IS PERFECT"?
Escrito 11 diciembre 2013 - 01:14
Escrito 11 diciembre 2013 - 02:34
Escrito 11 diciembre 2013 - 03:41
Si que existe una "teoría" que te aporta material que conduce a un buen diseño: las formas normales, que se aplican en normalización de base de datos. Cosa que si expresé. El llevar el diseño de una base de datos a la 3FN (3ra Forma Normal) en el 90% de los casos basta y no se necesita ir por más (para ciertos autores se reconocen incluso 7 formas normales, otros hablan de las 5 tradicionales).Pero..... ¿no hay nada que pueda yo tener como base para la creación de una base de datos que no me de problemas o que éstos sean mínimos?
Yo pienso que sí, siempre he creído que un buen sistema parte de una base de datos bien pensada, que durante el ciclo de vida se tenga que adicionar con modificaciones no previstas, eso me queda claro, pero,
¿No hay nada que hacer al respecto? ó ¿Debo conformarme con la frase "NOBODY IS PERFECT"?
Saludos
Escrito 11 diciembre 2013 - 03:50
No soy Felipe.mx amigo, y si bien tengo las cosas en mi cabeza... si hay algo que no logro como explicarlo es el tema de la normalización. No me explico como es que lo hago... yo lo tengo incorporado como algo mecánico en mi cabeza, pero si tengo que buscarle palabras ya me trabo.¿ Nos puedes ilustrar como se normaliza un base de datos ? Digo, ese es el punto medular de éste hilo, compartir con los demás nuestras experiencias, si no pensaramos así DelphiAccess no tendría razón de ser, es un asunto de colectivo.
Saludos
Escrito 11 diciembre 2013 - 08:10
Escrito 11 diciembre 2013 - 08:20
Eso es justo lo que me pasa a mi. Veo las entidades, su relación y allí nomás como por magia, y de forma mecánica/automática e inconscientemente lo normalizo. Es decir no pienso, lo hago por instinto.Si interpreto bien a Egostar, sería interesante es mostrar cómo enfrentamos algunos casos para tener mayor claridad en cuando normalizar y cuando no, porque a mi me pasa lo mismo, la normalización ya se hace "normal" con la experiencia, pero a la hora de explicarlo cuesta trabajo y definir los criterios de desnormalización (o denormalización ) no es fácil.
Saludos.