Aunque estos sistemas fueron utilizados durante mucho tiempo tienen inconvenientes importantes ya que se trata de sistemas orientados hacia los procesos, debido a que en ellos se da mayor importancia al tratamiento que reciben los datos, que se almacenan en ficheros diseñados para una determinada aplicación. Las aplicaciones son independientes unas de otras y los datos no se transfieren entre ellas, sino que se duplican cuando se necesitan.
Presentan dos tipos de problemas: respecto a los ficheros y respecto a los datos.
Problemas respecto a los ficheros
Se deben a la necesidad de controlar la integridad semántica, el control de las autorizaciones, y la concurrencia de accesos de varios usuarios al mismo fichero simultáneamente.
Es un conjunto de restricciones, también llamadas Reglas de Validación, que permiten o no almacenar determinados valores de un objeto en la base de datos para evitar que se pierda la consistencia.
Por ejemplo una restricción para que el saldo de una cuenta corriente no baje de un cifra determinada.
Cada fichero puede tener diferentes reglas de validación. Es difícil crear programas que tengan en cuenta a la vez todas estas reglas, con lo que se produce información inconsistente para el sistema.
- Control de autorizaciones.
Trata de evitar que se produzcan accesos indebidos a los datos, para lo que a cada usuario se le da un identificador y una clave. En este caso al estar los elementos del sistema distribuidos sin organizar a lo largo del sistema, no se puede controlar el acceso a cada elemento del sistema.
Ejemplo: No todo el personal del banco puede acceder a todos los datos. El departamento de nóminas sólo necesita acceder a los datos de los empleados y no a los de los clientes.
Es difícil prever y crear los controles de seguridad adecuados y puede que usuarios no autorizados accedan a datos de forma indebida.
Es el control del acceso simultáneo de varios usuarios a los mismos datos. Ya que cuando varios usuarios acceden a la vez al mismo fichero para modificar información, si no hay un programa que controle el orden de acceso no habrá seguridad acerca de cuál de todas las modificaciones será guardada y en qué orden.
Ejemplo: cuando varios clientes acceden a una misma cuenta para retirar sus fondos. Puesto que se puede acceder a los datos con distintos programas será muy difícil de coordinar.
El control de concurrencia permite el acceso simultáneo de lectura de los datos y accesos sucesivos individualizados, en cola, de modo que hasta que no termine un usuario de realizar modificaciones, los demás no podrán realizar otras nuevas.
Problemas respecto a los datos.
Se deben a su estructura física, a su modo de estar almacenados en diferentes archivos.
Es la repetición innecesaria de información en varios ficheros.
Ejemplo: nombres y números de teléfono de los clientes del banco. Podrían aparecer duplicados, tanto en el archivo de clientes de cuentas corrientes como, por ejemplo, en el de cuentas de cheques.
Es información redundante en la que las copias de los datos de los distintos ficheros no concuerdan entre sí.
Ejemplo: cuando el teléfono de un cliente ha cambiado y no hemos reflejado el cambio en todos los ficheros que lo contienen.
O fragmentación de la información. Se produce cuando los datos referentes a un objeto se almacenan en distintos ficheros, siendo difícil obtener a la vez toda la información relativa al mismo objeto.
Ejemplo: los datos personales de un cliente pueden estar almacenados en un fichero, mientras que se han creado otros ficheros recoger los datos relativos a sus cuentas bancarias, los préstamos e hipotecas, etc.
- Dificultad de acceso a los datos.
Es un problema organizativo en que, para eliminar el aislamiento, no existe una relación de todos los ficheros con los datos que contienen.
Ejemplo: cuando queremos localizar los datos de los clientes que viven en la ciudad correspondiente a un código postal determinado. Tenemos un fichero y una aplicación que extrae los datos de todos los clientes pero no teníamos previsto obtener ese tipo de información. Será necesario escribir un nuevo programa.
Que los datos cumplan las reglas de validación y las restricciones establecidas.