Hace tiempo que estoy anunciando mi intención de tratar este tema, tan complicado como importante. Y me estaba resistiendo porque es un asunto que da mucho de sí, con muchos enfoques posibles y conceptos complicados. Finalmente he decidido «coger el toro por los cuernos» y empezar de una vez. Eso sí, este tiempo de reflexión me ha dejado claro que tengo que dividirlo en varias partes, dedicarle varias entradas y tomármelo con calma.
Antes de empezar he dedicado unos minutos a la Wikipedia, para refrescar algunos conceptos y para tener claro que es lo que este Blog no es. No es una enciclopedia ni yo un catedrático dando una charla magistral. El que quiera una definición rigurosa y exhaustiva, que consulte la Wikipedia. Aquí de lo que se trata es de dar algunas ideas muy prácticas sobre la mejor forma de solucionar problemas concretos de usuarios «reales». También, y no menos importante, de aprender unos conceptos básicos para entender a los «vendedores» de soluciones de gestión documental que sueltan un par de latinajos técnicos y pretenden impresionar al gerente de la empresa que lo único que entiende es de montones de papeles.
Así que, ahora que sabemos de qué se trata, empecemos por algunas ideas básicas, siempre teniendo en cuenta que voy a tratar este tema desde el punto de vista de la instalación de un programa de gestión documental en una PYME.
Y, lo primero, una definición muy práctica. La arquitectura de nuestro sistema es el conjunto de partes que lo componen, tanto hardware como software, sus características técnicas y la forma en la que estas «partes» o módulos se relacionan entre sí.
Lo más visible es el hardware. Tendremos un ordenador «central», un «servidor», en el que residen los datos y algunos de los programas que forman el sistema, y tendremos ordenadores conectados con él, los puestos de trabajo con los que los usuarios interactúan con el programa. Esto es lo que llamamos los «clientes«. Ahora supongo que queda claro porqué la arquitectura más conocida es la cliente-servidor.
Pues ya he terminado mi primera lección. Y alguno pensará que todo el curso. Pero nada es tan sencillo en la informática porque:
– Hay varios tipos de servidores.
– Hay diferentes tipos de clientes.
– Hay muchas formas de conectarlos entre sí.
– Y todo esta diversidad se aplica también al software que instalamos.
La elección de la mejor combinación de todos estos elementos no es una tarea sencilla pero, afortunadamente, no hay que estudiar todas las variaciones posibles. Hay varias «arquitecturas» bien probadas y conocidas y la decisión final es entre 3 ó 4 opciones. Mi objetivo en las siguientes entradas es describirlas brevemente y destacar las ventajas e incovenientes de cada una para que la decisión sea bien fundada.
Antes de terminar una última idea muy importante: no hay una arquitectura mejor que otra. No existe la «solución perfecta». Hay una solución mejor para una instalación concreta, para unas necesidades específicas. Mientras que esta solución no sera adecuada para otro cliente con otros problemas que resolver. Lo que es adecuado para un despacho de 5 abogados en un piso no sirve para una empresa de consultoría con 10 técnicos visitando a los clientes con sus portátiles por toda España. Lo importante es elegir lo que en mi caso concreto me resulta más apropiado (esto me suena a lo de ir con un Ferrari al Supermercado).
[…] cada caso concreto es hoy una tarea difícil porque las combinaciones son muchas. Si hablaba en mi primera entrada de que la arquitectura de un sistema es el conjunto de partes que lo componen y cómo se conectan […]