domingo, julio 22, 2018

Una planilla de cálculo no es una Base de Datos

Fruto de la enseñanza clásica en las escuelas (donde se confunde ofimática con informática) es muy común ver en oficinas de distintas organizaciones el uso de planillas de cálculo (frecuentemente el programa Excel) como si fueran base de datos.

Este es un problema que termina derivando en otros problemas aún más complicados, pero parte de falta de conocimiento y/o información sobre cual es la herramienta más adecuada para las tareas que se deben cumplir.


Origen del problema

Tal lo descripto en el enlace del inicio de este artículo muchas personas se formaron en el uso de la computación con programas ofimáticas como Word y Excel.

Estos programas terminaron siendo sus herramientas universales para casi cualquier tarea.

Pero, tal la descripción propia su función, el Word es un procesador de textos y el Excel una planilla de cálculos.

En muchos casos al ser la única herramienta accesible por las personas promedio (realizar un sistema hace tiempo solía ser ser bastante costoso y problemático), y ciertamente estas herramientas ofimáticas son bastante flexibles, muchos decidieron utilizar programas como Excel para almacenar datos.

Gracias a funciones del programa como "buscarv" o "buscarh" o en el mejor de los casos a "macros", permitía realizar búsquedas rápidas y así hacer un pseudo sistema de acceso a datos.

Este uso "rebuscado" puede darse por muchas razones, desde el desconocimiento, la falta de interés, un rechazo a el cambio de forma de trabajar o la falta de contrastar su forma de trabajo con otros pares.


Problema técnico

El problema base es que no se utiliza la herramienta adecuada para la tarea específica.

Las planillas de cálculo, como lo indica su nombre, es para hacer cálculos. Para un libro contable, para un presupuesto, etc. Pero no es para mantener información ni datos como si se tratara de un sistema informático.

Un sistema informático es un programa que se vincula con una base de datos y permite realizar entre otras cosas:
  • Validación de campos de entrada
  • Normalización de datos
  • Seguridad en la información
  • Diagramación de lógica del manejo de los datos
  • Acceso optimizado
  • Evitar duplicidad de datos
  • Permitir altas, lecturas, bajas, modificaciones de datos con controles de auditoría
  • Permitir usuarios concurrentes con distintos perfiles de acceso (restricciones de acceso)
  • Registro de las actividades de cada usuario

En general las bases de datos cuentan con un modelo entidad-relación y se realiza la normalización de los datos, permitiendo que la información este estructurada de forma tal que se optimiza el rendimiento de acceso a los mismos.

Por otro lado se puede definir una correcta asignación de responsabilidades (con los permisos en el sistema), y de esta forma distintas áreas pueden tener visibilidad de ciertos datos de otras áreas para así evitar la duplicidad de tareas (con sus consecuentes perdidas de tiempo, y mayor posibilidad de inconsistencias).


Los sistemas no son la panacea

Ahora bien como todo tiene sus problemas, es decir no puede existir ventajas sin desventajas.

Los sistemas requieren personal capacitado para poder desarrollarlos y mantenerlos. Esto implica poder realizar las adaptaciones, mejores y los requerimientos futuros de las áreas.

Esto en muchos lados no es posible o se puede realizar pero de forma parcial.

Por otro lado al ser los sistemas transversales en muchas organizaciones requiere que estén realizado por determinadas áreas y es frecuente que los tiempos y prioridades no sean los mismos entre las distintas áreas (esto puede ser algo menor cuando hay una correcta dirección).

Los sistemas pueden ser "algo oscuro" en el sentido que el usuario final no tiene ni idea como está funcionando internamente, esto puede ser contraproducente. Respecto a esto puede haber distintos metodologías de desarrollo, incluso que las áreas se involucren más en el desarrollo de la aplicación y no que sean "usuarios".

La clásica "dependencia", es muy común en cualquier área de saber no muy frecuente y específicamente en un sistema informático (que por ejemplo desarrollo una sola persona), la dependencia suele tenerse sobre un grupo reducido de personas, y en consecuencia una suerte de coacción implícita hacia la organización.

Vale aclarar que todas estas "visiones negativas" no siempre son certeras y existen vías de evitarlas o mitigarlas, lo importante es al menos conocerlas.


Para finalizar

Es importante resumir que si bien es frecuente el uso de planillas de cálculos para almacenar datos (no siendo la herramienta adecuada), es posible utilizar bases de datos para los mismos fines.

Evidentemente estos tienen ventajas y desventajas que se deben analizar en los casos concretos.

Anteriormente se comentó el framework CRUD el cual es una herramienta muy interesante para generar de forma ágil formularios y visualización de cierta información incorporada de forma estructurada.

Como siempre se comenta que no hay que apresurarse al adoptar distintas herramientas y siempre hay que buscar opciones alternativas que ayuden a mejorar el rendimiento, permitiendo utilizar el tiempo ahorrado para otras cuestiones.
Recibe las actualizaciones en tu correo