José Manuel López Doña, José Alberto Ruiz Casarrubios
Hoy en día todos llevamos un ordenador repleto de aplicaciones en el bolsillo o incluso, en la muñeca. Estamos rodeados de dispositivos electrónicos que nos facilitan las rutinas diarias, nos dicen cuánto vamos a tardar en llegar a nuestra cita, nos ponen la música que queremos oír o nos conectan en tiempo real con amigos y familia.
Puede parecer, por tanto, que estamos ante una ingeniería software muy madura y estable. Nada más lejos de la realidad. Los avances en ingeniería del software de los últimos 5 años claramente superan a los últimos 10 y estos a su vez dejan obsoletos los anteriores 25, en un modelo que, de forma similar a la ley de Moore, muestra un crecimiento exponencial. Esta rápida evolución no está exenta de cambios, muchas veces contradictorios e incipientes, fruto de una innovación acelerada por las necesidades constantes de software con el que poder competir en un mundo cada vez mas tecnológico.
En perspectiva, estamos asistiendo al nacimiento real de la ingeniera del software, con una evolución cada vez mas intensa que se espera continúe así los próximos años, máxime con la llegada de nuevas tecnologías como IA, IoT, Big Data, Real-time, Blockchain, Cloud, etc. Al mismo tiempo, el software se vuelve cada vez mas importante para soportar los modelos de negocio actuales y nuevos que constantemente están surgiendo y que demandan los clientes.
Como usuarios de software, hemos pasado de una posición reactiva, en la que simplemente "esperábamos" a que las empresas de software construyesen software y lo pusieran a nuestra disposición, a una posición totalmente proactiva, en el que nosotros demandamos software para cubrir nuestras necesidades y lo demandamos ya. Ahora, somos los que imponemos los tiempos a las empresas y ojo, no solo a las empresas propias de desarrollo de software.
Desde un punto vista arquitectural, observamos evoluciones con un patrón similar al biológico, pasando de estructuras sencillas con arquitectura monolíticas, a sistemas con mas necesidades de integración y comunicación, evolucionando a versiones mas autónomas, especializadas y desacopladas como arquitecturas de microservicios, service mesh, basadas en eventos, etc.
En esta charla os contaremos nuestra visión de como las arquitecturas han evolucionando desde las épocas doradas de los grandes monolitos hasta la actual donde justamente el reto es romperlos y no caer en errores del pasado, ofreciendo un enfoque mucho mas moderno que permita soluciones mas versátiles. Pero no nos quedaremos solo en los puntos fuertes, sino que también profundizaremos principales dificultades en su aplicación y tendencias futuras, tanto a nivel de arquitectura como organizativo, metodológico, gobierno, cultura, plataforma, etc.
Si te apasionan los microservicios, arquitecturas EDA, service mesh, orientación a productos, CQRS, event sourcing, DDD, PaaS, CaaS, etc., y buscas una charla donde se ponga todo en perspectiva, sin duda, te lo pasaras bien.