Porque hay otra manera de entender la tecnología
 

KIT Arquitectura Spring


Como parte de la trayectoria de sesiones de intercambio de conocimiento KIT (Knowledge Interchange Track) de MediaNet Software, el pasado miércoles 16 de Mayo se impartió un KIT de lecciones aprendidas desde el punto de vista técnico y organizativo en un proyecto de Banca Online de más de 14 meses de duración. Esta sesión en concreto estuvo capitaneada por nuestros compañeros Luis Gándara y Fernando Abellán.

El primer aspecto a tratar durante la charla fue un repaso de la metodología utilizada. En este caso, se describió cómo han sido aplicados los principios de una metodología ágil como SCRUM sobre un pequeño equipo de desarrollo.

También se expuso, a muy alto nivel, el diseño planteado para la arquitectura técnica del proyecto. Se basa en un modelo de tres capas: presentación, negocio e integración. Ésta última se define como una capa de abstracción ante la heterogeneidad estructural de los datos que se tratan en la aplicación. En esencia, se trata de un diseño sin capa de persistencia que trabaja, únicamente, consumiendo servicios REST. Es por ello que esta capa hace de traductor entre la información disponible y la información que gestiona internamente la aplicación y que expone a sus usuarios. De esta manera, se plantea una alternativa al habitual modelo MVC con gestión de persistencia de datos con tecnología ORM.

El proyecto está desarrollado en Java utilizando, principalmente, los siguientes paquetes: Spring Framework 3.0; Spring Webflow 2.2; y Spring Security 3.0. Las interfaces Web están desarrolladas en HTML5 y CCS3, con uso de jQuery

También se recalcó la complejidad de gestionar proyectos tan ambiciosos en los que se comparte la responsabilidad en múltiples empresas, las dificultades comunicativas, y la diversidad geográfica de los equipos implicados (en diferentes países y husos horarios) Por otro lado, se trató de describir el modelo se ha seguido para flexibilizar un modo de trabajo que, aunque ágil por definición, debió adaptar su velocidad y ritmo ante situaciones de imprecisión en etapas tempranas del desarrollo.

Por último, se hizo un repaso de los posibles puntos de mejora. Se identificaron errores cometidos, mitos destronados, herramientas costosas de echar a andar y habilidades mejorables.

Todo esto sirvió para, finalmente, adaptar una base teórica a la práctica que proviene de la experiencia en proyectos mission critical  lo que está permitiendo a MediaNet replicar este modelo de trabajo en otras proyectos de banca online muy representativos.

Compartir las lecciones aprendidas en un proyecto que es considerado un Caso de Éxito, tanto por nuestra organización como por nuestro cliente, es una de las prácticas que potenciamos en MediaNet dentro del KIT. Permite difundir y compartir el conocimiento y la experiencia de nuestros equipos de trabajo.