time-430625_640

Hace 10 años, la labor de un arquitecto TI era ya difícil. Teníamos que dar respuesta a las necesidades del negocio de la mejor manera posible. Por supuesto ya entonces había que lidiar con el software ya existente, con el legacy, con tecnologías ya entonces obsoletas, intentando aplicar el estado del arte en el diseño e implementación de aplicaciones web. Eran los tiempos del JDK 1.3, J2EE 1.4, el framework de Struts y nuestras querídisimas herramientas de desarrollo de IBM.

Sin embargo, sí que había algo que podríamos considerar como una premisa básica y estable. El usuario quería utilizar una aplicación empresarial a través de la intranet mediante el, nunca suficientemente vilipendiado, Internet Explorer 6.

Así pues, había que moverse dentro de unas coordenadas muy concretas: teníamos un servidor de aplicaciones concreto, con una base de datos corporativa, con un framework y unas herramientas de desarrollo … y sobre todo, un conjunto de usuarios que se puede contar por cientos o miles, que usan el mismo navegador sobre el mismo sistema operativo y representan el mismo canal de negocio.

Han pasado diez años desde entonces y la situación a dado un vuelco bastante importante. En primer  lugar, existen todo tipo de usuario y canales, manteniendo el de empleados a través de la intranet, tenemos cliente finales, tenemos colaboradores a través de la extranet… pero sobre todo, sobre todo… el cambio más radical es que hemos vuelto a una especie de aplicaciones que vuelven a seguir la arquitectura cliente-servidor. Y no sólo eso, vemos que las máquinas sobre las que se ejecutan estas aplicaciones cliente son propiedad de los mismos usuarios, no de la empresa. Para rematar, resulta que el número de dispositivos diferentes no se cuenta con los dedos de una mano como antes, se cuentan por miles… estamos hablando de unos 5.000 dispositivos diferentes (por lo menos)

Además, no contamos ya con el universal windows como sistema operativo, ahora tenemos dos, o tres según la cobertura que queramos dar… cada uno por supuesto con su propia arquitectura, lenguajes y herramientas de desarrollo.

Los usuarios potenciales ya no son unos cientos o unos pocos miles. Los usuarios en este caso se pueden contar por cientos de miles o millones. Además, el uso de las aplicaciones ya no se reduce a un horario de oficina en un país concreto, tenemos aplicaciones que se usan durante todo el día, en todo momento, y no sólo en un país… las aplicaciones tienden a ser globales y 24/7…

Como es de imaginar, estoy hablando de las aplicaciones móviles, pero también aplicaciones web móviles y de escritorio… y lo que está por venir o ya está viniendo… relojes, gafas, coches y casa conectados, la internet de las cosas… se calcula que cada usario podrá tener 10 o 12 aparatos conectados en unos pocos años…

Hay que darle lo que el usuario quiere en cualquier momento, en cualquier lugar… hay que ser consciente de su contexto, de lo que está haciendo, de lo que necesita en ese momento, incluso de lo que no sabe que necesita… hay que dárselo en el formato adecuado, teniendo en cuenta que puede disponer de un red rápida y al minuto tener una red lenta con una alta latencia, incluso no tener ninguna conexión, no importa, la aplicación debe funcionar contra viento y marea, debe darle la mejor experiencia, debe permitirle trabajar, comprar, leer, o cualquier otra actividad de ocio, un verdadero todo terreno …

Y no, la cosas no son como antes, como hace una década, ahora son infinitamente más complicadas y difíciles para los arquitectos, y también, claro, mucho más atractivo y motivador. Hay que hace frente a muchos retos.

Pero hay algo que no ha cambiado, la arquitectura empresarial está constreñida por diferentes limitaciones de todo tipo. Pueden ser económicas, pueden ser organizativas, también pueden ser operativas, por los hábitos implantados durante años, también por la burocracia.

Como resultado, no podemos usar lo que realmente necesitaríamos para dar respuesta a los tremendos desafíos que se nos presentan. Tenemos que trabajar con las herramientas que tenemos disponibles, aunque eso signifique que tengamos que ir a la “batalla”, a veces, con espadas de madera.

Como digo a veces, este trabajo consiste en hacer una gran intersección, entre lo que podemos considerar el estado del arte (sobre todo en pequeñas startups) y lo que se puede usar (y pagar) en una gran empresa. Ahí está el verdadero foco y nuestro campo de actuación, aunque a veces se queden cosas fuera de nuestro alcance por desgracia.

En fin, nadie dijo que esto fuera fácil… pero eso sí, es un trabajo ilusionante, y es toda una suerte poder trabajar en lo que te gusta 😉