Etapas del diseño de bases de datos
diseño de una base de datos no es un proceso sencillo. Habitualmente, la complejidad de la información y la cantidad de requisitos de los sistemas de información hacen que sea complicado. Por este motivo, cuando se diseñan bases de datos es interesante aplicar la vieja estrategia de dividir para vencer. Por lo tanto, conviene descomponer el proceso del diseño en varias etapas; en cada una se obtiene un resultado intermedio que sirve de punto de partida de la etapa siguiente, y en la última etapa se obtiene el resultado deseado. e este modo no hace falta resolver de golpe toda la problem!tica que plantea el diseño, sino que en cada etapa se afronta un solo tipo de subproblema. "s# se divide el problema y, al mismo tiempo, se simplifica el proceso. escompondremos el diseño de bases de datos en tres etapas$ %& 'tapa del diseño conceptual$ en esta etapa se obtiene una estructura de la información de la futura ( independiente de la tecnolog#a tecno log#a que hay que emplear. )o se tiene en cuenta todav#a qu* tipo de base de datos se utili+ar! relacional, orientada a objetos, jer!rquica, etc.; en consecuencia, tampoco se tiene en cuenta con qu* -( ni con qu* lenguaje concreto se implementar! la base de datos. "s# pues, la etapa del diseño conceptual nos permite concentrarnos únicamente en la problem!tica de la estructuración de la información, sin tener que preocuparnos al mismo tiempo de resolver cuestiones tecnológicas. 'l resultado de la etapa del diseño conceptual se e/presa mediante algún modelo de datos de alto nivel. 0no de los m!s empleados es el modelo entidadinterrelación 1entity-relationship&, que abreviaremos con la sigla '2. 3& 'tapa del diseño lógico$ en esta esta etapa se parte del resultado del diseño conceptual, que se transforma de forma que se adapte a la tecnolog#a que se debe debe emplear. 4!s concretamente, es preciso que se ajuste al modelo del -( con el que se desea implementar la base de datos. Por ejemplo, si se trata de un -( relacional, esta etapa obtendr! un conjunto de relaciones con sus atributos, claves primarias y claves for!neas. 'sta etapa parte del hecho de que ya se ha resuelto la problem!tica de la estructuración de la información en un !mbito conceptual, y permite concentrarnos en las cuestiones tecnológicas relacionadas con el modelo de base de datos. 4!s adelante e/plicaremos cómo se hace el diseño lógico de una base de datos relacional, tomando como punto de partida un diseño conceptual e/presado con el modelo '2; es decir, veremos cómo se puede transformar un modelo '2 en un modelo relacional. 5& 'tapa del diseño f#sico$ en esta esta etapa se transforma la estructura obtenida en la etapa del diseño lógico, con el objetivo de conseguir una mayor eficiencia; adem!s, se completa con aspectos de implementación f#sica que depender!n del -(. Por ejemplo, si se trata de una base de datos relacional, la transformación de la estructura puede consistir en lo siguiente$ tener almacenada alguna relación que sea la combinación de varias relaciones que se han obtenido en la etapa del diseño lógico, partir una relación en varias, añadir algún atributo calculable a una relación, etc. 6os aspectos de implementación f#sica que hay que completar consisten normalmente en la elección de estructuras f#sicas de implementación de las relaciones, la selección del tamaño de las memorias intermedias 1 buffers buffers& o de las p!ginas, etc. 6a forma de elaborar un diseño conceptual e/presado con el modelo '2 se e/plica en el apartado 3 de esta unidad.
'l resultado del diseño lógico 'l resultado del diseño lógico se sitúa ya en el mundo de las representaciones. 'l diseño lógico de una base de datos relacional se e/plica en el apartado 5 de esta unidad did!ctica. 'n la etapa del diseño f#sico con el objetivo de conseguir un buen rendimiento de la base de datos, se deben tener en cuenta las caracter#sticas de los procesos que consultan y actuali+an la base de datos, como por ejemplo los caminos de acceso que utili+an y las frecuencias de ejecución. 7ambi*n es necesario considerar los volúmenes que se espera tener de los diferentes datos que se quieren almacenar.
iseño conceptual$ el modelo '2 'n este apartado trataremos el diseño conceptual de una base de datos mediante el modelo '2. 6o que e/plicaremos es aplicable al diseño de cualquier tipo de bases de datos relacional, jer!rquica, etc., porque, como ya hemos dicho, en la etapa del diseño conceptual todav#a no se tiene en cuenta la tecnolog#a concreta que se utili+ar! para implementar la base de datos. 'l modelo '2 es uno de los enfoques de modeli+ación de datos que m!s se utili+a actualmente por su simplicidad y legibilidad. -u legibilidad se ve favorecida porque proporciona una notación diagram!tica muy comprensiva. 's una herramienta útil tanto para ayudar al diseñador a reflejar en un modelo conceptual los requisitos del mundo real de inter*s como para comunicarse con el usuario final sobre el modelo conceptual obtenido y, de este modo, poder verificar si satisface sus requisitos. 'l modelo '2 resulta f!cil de aprender y de utili+ar en la mayor#a de las aplicaciones. "dem!s, e/isten herramientas inform!ticas de ayuda al diseño 1herramientas 8"-'9& que utili+an alguna variante del modelo '2 para hacer el diseño de los datos. 'l nombre completo del modelo '2 es entity-relationship, y proviene del hecho de que los principales elementos que incluye son las entidades y las interrelaciones 1 entities y relationships &. 7raduciremos este nombre por :entidadinterrelación<. 'l origen del modelo '2 se encuentra en trabajos efectuados por Peter 8hen en %=>?. Posteriormente, muchos otros autores han descrito variantes y@o e/tensiones de este modelo. "s# pues, en la literatura se encuentran muchas formas diferentes del modelo '2 que pueden variar simplemente en la notación diagram!tica o en algunos de los conceptos en que se basan para modeli+ar los datos. 8uando se quiere utili+ar el modelo '2 para comunicarse con el usuario, es recomendable emplear una variante del modelo que incluya sólo sus elementos m!s simples entidades, atributos e interrelaciones y, tal ve+, algunas construcciones adicionales, como por ejemplo entidades d*biles y dependencias de e/istencia. Astos eran los elementos incluidos en el modelo original propuesto por 8hen. 'n cambio, para llevar a cabo la tarea de modeli+ar propiamente dicha, suele ser útil usar un modelo '2 m!s completo que incluya construcciones m!s avan+adas que e/tienden el modelo original. -egún la noción de modelo de datos que hemos utili+ado en los otros módulos, un modelo de datos tiene en cuenta tres aspectos de los datos$ la estructura, la manipulación y la integridad.
-in embargo, el modelo '2 habitualmente se utili+a para reflejar aspectos de la estructura de los datos y de su integridad, pero no de su manipulación. * La sigla CASE corresponde al término inglés Computer Aided Software Engineering.