Realizar una serie de tareas previas que influirán
decisivamente en la finalización con éxito del proyecto
La planificación de la base de datos también incluye el
desarrollo de estándares que sirvan para especificar
como llevar a cabo la recolección de datos, el formato
que deben llevar, cuál es la documentación necesaria
y como se llevara a cabo el diseño y la
implementación.
El desarrollo y el mantenimiento de los estándares puede llevar bastante tiempo, pero
si están bien diseñados, son una base para el personal informático en formación y para
medir la calidad, además, garantizan que el trabajo se ajusta a unos patrones,
independientemente de las habilidades y la experiencia del diseñador. Por ejemplo, se
pueden establecer reglas sobre cómo dar nombres a los datos, lo que evitará
redundancias e inconsistencias. Se deben documentar todos los aspectos legales sobre
los datos y los establecidos por la empresa como, por ejemplo, qué datos deben
tratarse de modo confidencial
• Ámbito del proyecto
• Estudio de viabilidad
• Análisis de riesgos
• Estimación
• Planificación temporal
• Asignación de recursos
Esta etapa conlleva la planificación de cómo se pueden
llevar a cabo las etapas del ciclo de vida de la manera
más eficiente
Hay tres componentes principales
El trabajo que se ha de
realizar
Como apoyo a esta etapa, se necesitará un modelo de datos
corporativo en donde se muestren las entidades principales de la
empresa y sus relaciones, y en donde se identifiquen las
principales áreas funcionales
Normalmente, este modelo de datos se
representa mediante un diagrama Entidad -
Relación.
La planificación de la base de datos también incluye el desarrollo de
estándares que especifiquen cómo realizar la recolección de datos,
cómo especificar su formato, qué documentación será necesaria y
cómo se va a llevar a cabo el diseño y la implementación.
Los recursos para llevarlo
a cabo
El dinero para pagar por todo ello
Definición del sistema
En esta etapa se especifica el ámbito y los límites de la aplicación de bases de datos, así como con qué otros
sistemas interactúa. También hay que determinar quienes son los usuarios y las áreas de aplicación.
Recolección y análisis de los requisitos
Se recaba información sobre el uso que se le piensa dar a la Base de
Datos, sobre los usuarios y las aplicaciones que se les desea dar. En esta
etapa se tiene como resultado un conjunto de documentos con
especificaciones de requisitos de los usuarios.
Averiguar qué es exactamente lo que tiene que hacer el sistema. La etapa de
análisis en el ciclo de vida del software corresponde al proceso mediante el cual
se intenta descubrir qué es lo que realmente se necesita y se llega a una
comprensión adecuada de los requerimientos del sistema.
Elicitación de requerimientos
Requerimientos funcionales
Requerimientos no funcionales
Modelado
Modelado de datos
Modelado de procesos
En esta etapa se recogen y analizan los requerimientos
de los usuarios y de las áreas de aplicación. Esta
información se puede recoger de varias formas
• Entrevistando al personal de la empresa, concretamente, a
aquellos que son considerados expertos en las áreas de interés
• Observando el funcionamiento de la
empresa.
• Examinando documentos, sobre todo aquellos que se
utilizan para recoger o visualizar información.
• Utilizando cuestionarios para recoger información
de grandes grupos de usuarios.
• Utilizando la experiencia adquirida en el
diseño de sistemas similares.
documentación utilizada o generada por estas
áreas de aplicación o grupos de usuarios, las
transacciones requeridas por cada área de
aplicación o grupo de usuarios y una lista
priorizada de los requerimientos de cada área
de aplicación o grupo de usuarios.
Esta etapa tiene como resultado un conjunto de
documentos con las especificaciones de requisitos de
los usuarios, en donde se describen las operaciones que
se realizan en la empresa desde distintos puntos de
vista.
La información recogida se debe estructurar utilizando
técnicas de especificación de requisitos, como por
ejemplo técnicas de análisis y diseño estructurado y
diagramas de flujo de datos. También las herramientas
CASE ( Computer-Aided Software Engineering) pueden
proporcionar una asistencia automatizada que
garantice que los requisitos son completos y
consistentes.
Diseño de la base de
datos
Esta etapa consta de tres fases
diseño
conceptual
La primera fase consiste en la producción de
un esquema conceptual, que es independiente
de todas las consideraciones físicas.
En esta etapa se debe construir un esquema de la
información que se usa en la empresa,
independientemente de cualquier consideración física
El objetivo es comprender
La perspectiva que cada usuario tiene de los datos
La naturaleza de los datos, independientemente de su representación física
El uso de los datos a través de las áreas de aplicación
diseño
lógico
Este modelo se refina después en un esquema lógico eliminando las construcciones que no
se pueden representar en el modelo de base de datos escogido (relacional, orientado a
objetos, etc.).
La normalización es una técnica que se utiliza para comprobar la validez de los esquemas lógicos basados en el modelo
relacional, ya que asegura que las relaciones (tablas) obtenidas no tienen datos redundantes. Esta técnica se presenta en
el capítulo dedicado al diseño lógico de bases de datos.
diseño físico
En la tercera fase, el esquema lógico se traduce en un esquema físico para el SGBD escogido. La
fase de diseño físico considera las estructuras de almacenamiento y los métodos de acceso
necesarios para proporcionar un acceso eficiente a la base de datos en memoria secundaria.
el propósito del diseño físico es
Obtener un conjunto de relaciones (tablas) y las
restricciones que se deben cumplir sobre ellas
Determinar las estructuras de almacenamiento y
los métodos de acceso que se van a utilizar para
conseguir unas prestaciones óptimas.
Diseñar el modelo de
seguridad del sistema
Los objetivos del diseño de la base de datos son
Representar los datos que requieren las principales áreas de aplicación y los
grupos de usuarios, y representar las relaciones entre dichos datos
Proporcionar un modelo de datos que soporte las
transacciones que se vayan a realizar sobre los datos
Especificar un esquema que alcance las prestaciones requeridas para el sistema.
Hay varias estrategias a seguir para realizar el diseño
abajo a arriba
parte de todos los atributos y los va agrupando en entidades y relaciones. Es apropiada cuando la
base de datos es simple, con pocos atributos.
arriba a abajo
es más apropiada cuando se trata de bases de datos complejas. Se comienza con un esquema con
entidades de alto nivel, que se van refinando para obtener entidades de bajo nivel, atributos y relaciones.
dentro a fuera
es similar a la estrategia de abajo a arriba, pero difiere en que se parte de los conceptos principales y se va extendiendo el
esquema para considerar también otros conceptos, asociados con los que se han identificado en primer lugar.
estrategia mixta
utiliza ambas estrategias, de abajo a arriba y de arriba a abajo, con un esquema de divide y vencerás. Se obtiene un esquema inicial de alto
nivel, se divide en partes, y de cada parte se obtiene un subesquema. Estos subesquemas se integran después para obtener el modelo final.
Selección del SGBD
Si no se dispone de un SGBD, o el que hay se encuentra obsoleto, se debe escoger un SGBD que sea
adecuado para el sistema de información. Esta elección se debe hacer en cualquier momento antes
del diseño lógico
Un sistema gestor de bases de datos es un producto software con capacidad para definir, mantener y
utilizar bases de datos. El sistema de gestión de bases de datos que decidamos utilizar debe
permitirnos, definir estructuras de almacenamiento adecuadas y acceder a los datos de forma
eficiente y segura.
Ejemplo de SGBD
Apache Derby
FoxPro
Access
SQL Server
Firebird
Diseño de la aplicación
En esta etapa se diseñan los
programas de aplicación que
usarán y procesarán la base de
datos.
En esta etapa hay que asegurarse de que toda la
funcionalidad especificada en los requisitos de
usuario se encuentra en el diseño de la aplicación
Además, habrá que diseñar las
interfaces de usuario, aspecto muy
importante que se suele ignorar.
El sistema debe ser fácil de aprender, fácil
de usar, ser directo y estar ``dispuesto a
perdonar''.
Si la interface no tiene estas características,
el sistema dará problemas, sin lugar a dudas
Esta etapa y el diseño de la base
de datos, son paralelas.
En la mayor parte de los casos no se puede
finalizar el diseño de las aplicaciones hasta que se
ha terminado con el diseño de la base de datos
Prototipado
Esta etapa, que es opcional, es para construir prototipos de la
aplicación que permitan a los diseñadores y a los usuarios
probar el sistema.
Un prototipo es un modelo de trabajo de las aplicaciones del sistema. El prototipo no tiene toda la
funcionalidad del sistema final, pero es suficiente para que los usuarios puedan utilizar el sistema e
identificar qué aspectos están bien y cuáles no son adecuados, además de poder sugerir mejoras o la
inclusión de nuevos elementos
Este proceso permite que quienes diseñan e implementan el sistema sepan si han interpretado
correctamente los requisitos de los usuarios
Otra ventaja de los prototipos es que se construyen rápidamente.
Esta etapa es imprescindible cuando el sistema que se va a implementar tiene un gran coste, alto riesgo o
utiliza nuevas tecnologías
Implementación
En esta etapa se crean las definiciones de la base de datos a nivel conceptual, externo e
interno, así como los programas de aplicación. Se crear una tabla en nuestra base de
datos. También se implementan en esta etapa todos los controles de seguridad e
integridad.
La implementación de la base de datos se realiza
mediante las sentencias del lenguaje de definición
de datos (LDD) del SGBD escogido.
Estas sentencias se encargan de crear el esquema
de la base de datos, los ficheros en donde se
almacenarán los datos y las vistas de los usuarios.
En esta etapa, también se implementan los menús, los formularios
para la introducción de datos y los informes de visualización de
datos. Para ello, el SGBD puede disponer de lenguajes de cuarta
generación que permiten el desarrollo rápido de aplicaciones
mediante lenguajes de consultas no procedurales, generadores de
informes, generadores de formularios, generadores de gráficos y
generadores de aplicaciones.
También se implementan en esta etapa todos los
controles de seguridad e integridad. Algunos de estos
controles se pueden implementar mediante el LDD y
otros puede que haya que implementarlos mediante
utilidades del SGBD o mediante programas de aplicación.
Los programas de aplicación se implementan utilizando
lenguajes de tercera o cuarta generación
Partes de estas aplicaciones son transacciones sobre la
base de datos, que se implementan mediante el lenguaje
de manejo de datos (LMD) del SGBD.
Las sentencias de este lenguaje se pueden
embeber en un lenguaje de programación
anfitrión como Visual Basic, Delphi, C, C++, Java,
COBOL, Fortran, Ada o Pascal.
Conversión y carga de datos
Esta etapa es necesaria cuando se está reemplazando un sistema antiguo por
uno nuevo.
Los datos se cargan desde el sistema viejo al nuevo directamente o, si es necesario, se convierten al formato
que requiera el nuevo SGBD y luego se cargan.
Si es posible, los programas de aplicación del sistema antiguo también se convierten para que se puedan
utilizar en el sistema nuevo.
Prueba
En esta etapa se prueba y valida el sistema con los requisitos especificados por los usuarios. Para ello, se
debe diseñar una batería de tests con datos reales, que se deben llevar a cabo de manera metódica y
rigurosa.
Es importante darse cuenta de que la fase de prueba no sirve para demostrar que no hay fallos, sirve para
encontrarlos.
Si la fase de prueba se lleva a cabo correctamente, descubrirá los errores en los programas de aplicación y en
la estructura de la base de datos.
Además, demostrará que los programas ``parecen'' trabajar tal y como se especificaba en
los requisitos y que las prestaciones deseadas ``parecen'' obtenerse.
Por último, en las pruebas se podrá hacer una medida de la fiabilidad y la calidad del software desarrollado.
Mantenimiento
Una vez que el sistema está completamente implementado y probado, se pone en marcha. El sistema está
ahora en la fase de mantenimiento en la que se llevan a cabo las siguientes tareas
•Monitorización de las prestaciones del sistema. Si las prestaciones caen por debajo de un
determinado nivel, puede ser necesario reorganizar la base de datos
•Mantenimiento y actualización del sistema. Cuando sea necesario, los nuevos requisitos que vayan
surgiendo se incorporarán al sistema, siguiendo de nuevo las etapas del ciclo de vida que se acaban de
presentar.