viernes, mayo 06, 2005

INTEGRACIÓN

1.-Introducción

La mayoría de las empresas medianas y grandes tienen sistemas computacionales funcionando que resuelven las aspectos más básicos de la problemática contable-administrativa. Partieron desarrollando sobre plataformas aún inmaduras, hasta los últimos sistemas liberados utilizando potentes motores de base datos e interfaces Web, estos sistemas funcionan en forma centralizada y satisfacen las necesidades más básicas de la mayoría de los procesos operacionales, dejando espacios enormes por cubrir en lo que respecta a gestión y las consultas externas, entiéndase clientes, proveedores y ejecutivos en terreno, además estas aplicaciones no logran "cruzar" horizantalmente la organización, lo cual impide la integración de la información al interior de la empresa.

Las empresas en general han desarrollado aplicaciones computacionales en casa, las cuales buscan suplir las deficiencias de los "ERP's", automatizando procesos propios que no están cubiertos por los ERP's, así como también desarrollando funcionalidades que permiten satisfacer requerimientos de clientes y proveedores. Aún no visualizan la importancia de integrar horizontalmente la organización, la información sigue fluyendo por voz y papeles.

Las empresas en CHILE al igual que en el resto del mundo ha invertido tiempo y esfuerzo en desarrollo de software, pero siempre los problemas para continuar y consolidar los desarrollos propios se deben básicamente a, una falta de claridad respecto de futuro informático de la empresa, desconocimiento de algunos procesos incrustados que existen en todas las empresas y no son considerados por parte de los "ERP's", falta de definición sobre el marco tecnológico donde estos sistemas deberían ser desarrollados y por último, la excesiva centralización de las aplicaciones corporativas.

La idea entonces, consiste en abordar el problema sin perder la visión general y con sistemas corporativos incluidos, con una visión de procesos y no de sistemas computacionales, analizar procesos previamente para posteriormente evaluar si es necesario construir. Considerar los sistemas corporativos como un dato, convivir con ellos en forma armónica, mantener la misma plataforma y en base a ello, trabajar en interfaces y/o pequeñas piezas de software que permitan eliminar la duplicidad de datos y procesos que tornan ineficiente el sistema en general.

Evidentemente el proyecto es complejo e implica un estudio acabado de la realidad actual, la modificación de algunos procesos que se verán afectados con la implementación de un sistema integrado, además implica el desarrollo de varias interfaces y soluciones anexas para el buen éxito del proyecto.

2.-Estrategia

Los principales sistemas computacionales en las empresas son los construidos en torno a una base de datos (Oracle, SQLServer, Sybase, DB2, etc..), estos sistemas que cumplen en gran medida con los requerimientos básicos y mas bien operativos de una oficina, funcionan en un ambiente excesivamente centralizado, lo que obliga mantener costosas líneas de conexión dedicadas para mantener actualizados los datos.

En un levantamiento preliminar en cualquier empresa podemos identificar los siguientes problemas:

1.-Sistemas computacionales centralizados con altos costos de operación
2.-Carencia de herramientas de gestión (corporativas y locales)
3.-Ausencia de aplicaciones horizontales
4.-Subexplotación de recursos informáticos
5.-Ausencia de documentación de algunas aplicaciones computacionales (en especial las desarrolladas localmente)
6.-Ausencia de aplicaciones de corran sobre una Intranet Local
7.-Desconocimiento de la estructura física de los sistemas computacionales en funcionamiento.
8.-Excesivos requerimientos al "encargado" de informática.
9.-Concentración de funciones y procesos en un mismo rol.

Para resolver esta problemática es aconsejable la conformación de un equipo de trabajo multidiciplinario que lidere un proyecto tecnológico y defina actividades y estrategia a seguir llevando un control estricto sobre todo el ámbito de acción. Este grupo (Grupo de Tecnología de la Información GTI) debe ser liderado por la gerencia de la empresa y definirá el Plan Informático, así como también coordinará el análisis de procesos, previo a la definición de que construir y/o modificar, determinando el impacto de los procesos sobre sistemas computacionales en funcionamiento y por supuesto sobre las personas que "soportan" estos procesos, ello los llevará a un modelamiento sólido y seguro.

En general como estrategia de desarrollo se propone desarrollar cada una de las aplicaciones bajo un ambiente integrado, dado las premuras de tiempo y la necesidad de implementar algunas aplicaciones rápidamente, no es posible construir un Modelo de Datos Corporativo, que seria el ideal, una suerte de mapa informático, en cual se pueda visualizar la totalidad de las entidades y procesos involucrados, sin embargo es posible llegar a ello mediante una estratégica de mejoramiento continuo, desarrollando modelos aislados para cada uno de los sistemas, considerando que en el futuro formaran parte del Modelo Corporativo de la empresa.

Cabe destacar que el valor agregado inmediato de esta estrategia, será la documentación de cada uno de los procesos y sistemas a construir y/o modificar, cosa que generalmente no se considera o simplemente no se hace en este tipo de desarrollos, de hecho, es muy extraño que las aplicaciones en funcionamiento están documentadas, sobre todo aquellas construídas por profesionales externos, a los cuales normalmente no se sabe que pedir.

Como tarea prioritaria es necesario revisar y modificar la arquitectura de directorio y perfiles de grupos de usuarios en los servidores que soportan las aplicaciones coorporativas, se consume demasiado tiempo en instalar y probar una aplicación debido a la poca claridad que hay respecto a los atributos que tiene un determinado directorio y los perfiles de los grupos asociados al directorio en cuestión. En este mismo sentido, es absolutamente necesario analizar y resolver un ordenamiento de los distintos directorios donde residen las aplicaciones en explotación. Ubicar una base de datos y/o tablas puede llegar a ser una tarea compleja, implica navegar varios minutos para encontrarla, no hay un conocimiento cabal del contenido de cada servidor y directorios residentes en él, simplemente se copia información sobre ellos sin discriminación, generando desorden y caos generalizado.

También es absolutamente necesario desarrollar una interfaz de usuario común para todas las aplicaciones que se construyan, ello genera seguridad al usuario y evita la capacitación inicial cada vez que se libera una nueva aplicación. Normalmente existen en las aplicaciones empresariales una serie de interfaces de usuario, llegándose al extremo de que cada aplicación tiene su propia interfaz, ello confunde y complica al usuario final.

En lo que respecta a las Intranet's, estas redes interna deberían contener aplicaciones que permitan integrar y relacionar a los funcionarios mediante la información. Aparentemente parece sencillo "armar" una Intranet con este contenido, pero precisamente la definición y estructuración de los contenidos son los elementos claves al interior de una Intranet, asi como también la mantención de la información que alli resida. Técnicamente es sencillo configurarlas y ponerlas en operación, pero el tema de los contenidos es complejo y debe ser analizado en profundidad, de manera que finalmente se cumpla con los objetivos de integrar horizontalmente la organización.

En la medida que se vayan liberando aplicaciones será necesario crear la función de Administrador de Base de Datos (DBA), el cual será responsable por el buen funcionamiento de los motores de bases de datos, perfiles de usuario, configuración de aplicaciones cliente/servidor, actualización de versiones, respaldos y por la consistencia de los datos que allí residan. Para cumplir esta función se necesita una persona con conocimientos del o los motores de datos que utilizan las aplicaciones empresariales, también un buen manejo de los software de respaldo y los paquetes de administración de datos.

Esto último resulta ser extremadamente importante, básicamente por que las empresas medianas (e incluso las grandes) tienden -erroneamente- a concentrar una serie de funciones/procesos en una misma persona, con una visión netamente económica, lo cual normalmente genera que todas o la mayoría de las funciones asignadas al profesional no se ejecuten eficientemente, o lo que es aún mas grave que simplemente no se ejecutan.

Lo anterior es gran importancia si se esta pensado en compartir y distribuir aplicaciones con terceros, en general al tener en explotación varias aplicaciones, las dudas y/o problemas que se presentan aumentan, siendo necesario asignar una persona exclusivamente para resolver estos problemas, lo cual generalmente no se cumple, pues exite la tendencia de centralizar todos los temas infomáticos en una sóla persona, por ende el tema de atención a usuario queda total y absolutamente colapsada.

Finalmente entonces la idea es analizar, construir, integrar y asignar funciones y procesos de acuerdo a un criterio de sistemas/procesos, considerando el valor agregado que ello producira a la organización.