11 April, 2023 Technology

El reto de transformar un ERP de aplicación desktop a online

  • Ventajas y retos de convertir el ERP TE-SIS Seguros de aplicación Desktop a nueva aplicación online: Tesis Broker Manager.

En Codeoscopic hemos dado un paso importantísimo de cara al futuro de nuestro ERP de corredor, TESIS, convirtiéndolo en una novedosa aplicación online, lo que se conoce como ‘Software as a Service’ (SaaS) o software como servicio.

El software como servicio consiste en una forma de poner a disposición del público soluciones de tecnología por medio de internet, como un servicio. Con este modelo, tu empresa no necesita instalar, mantener y actualizar máquinas y aplicaciones. El acceso es fácil y simple: sólo es necesario contar con una conexión a internet.

¿Por qué hacer este cambio?

En Codeoscopic la orientación al cliente, sacar partido a la tecnología y la adaptación al cambio, son aspectos fundamentales que forman parte indivisible del núcleo de nuestro ADN. Este importante cambio y gran reto profesional para nosotros, encaja a la perfección en estos pilares básicos de nuestra forma de entender nuestra labor profesional.

La idea base es muy sencilla, si es mejor para nuestros clientes, es mejor para nosotros y por ende, mejor para todos, y tenemos muy claro que este paso va orientado en la dirección correcta por las siguientes ventajas que aporta:

  • Accesibilidad: Una aplicación SaaS online es accesible desde cualquier lugar con una conexión a Internet, lo que significa que los usuarios pueden trabajar prácticamente en cualquier sitio y en cualquier momento.
  • Escalabilidad: Estas aplicaciones, gracias a las tecnologías cloud, se pueden escalar fácilmente para satisfacer las necesidades de los usuarios. Esto significa que la aplicación crece contigo y se adapta a ti.
  • Coste: Son sin ninguna duda la solución más económica para el cliente. Ya no tendrá que costear máquinas, software, licencias ni caros desarrollos a medida.
  • Mantenimiento: Esta modalidad no requiere que los usuarios realicen actualizaciones de software ni que realicen copias de seguridad de sus datos. Nosotros nos encargamos de todo para que tú, el corredor, te puedas concentrar al 100% en tu negocio.
  • Integración: El nuevo paradigma que presenta este formato abre un nuevo abanico de posibilidades en el que, entre otras cosas, se encuentra la integración con otras aplicaciones para la comunicación, cooperación e intercambio de información.

El gran reto: ¿Cómo llevarlo a cabo con éxito?

Desde un punto de vista tecnológico, convertir una aplicación desktop aislada de arquitectura cliente-servidor en una aplicación SaaS, es sin ninguna duda un reto desafiante. Si a esto añadimos otras variables como, por ejemplo, dar continuidad al servicio en ambos frentes durante la fase de convivencia de los dos sistemas, el reto es mayúsculo. ¿Cuáles son y han sido los elementos clave que han permitido conseguir el logro?

convertir una aplicación desktop aislada de arquitectura cliente-servidor en una aplicación SaaS, es sin ninguna duda un reto desafiante

Arquitectura

La arquitectura de una aplicación SaaS es muy diferente a la de una aplicación desktop cliente-servidor. En este punto encontramos aspectos fundamentales que no se pueden obviar como por ejemplo por citar algunos:

  • Seguridad: no se corresponde la misma arquitectura técnica respecto a seguridad para una aplicación aislada dentro de una red local que para una aplicación de acceso a través de internet, a la que puede acceder (y atacar) todo el mundo. Diseñar una arquitectura robusta que cumpla con todos los requisitos en cuanto a seguridad ha sido y sigue siendo uno de los pilares más importantes de este proceso.
  • Arquitectura del dato: es muy distinto el tratamiento y arquitectura del dato a la hora de tratarlo en un entorno SaaS respecto a un entorno aislado en muchos aspectos relacionados a su vez con seguridad, escalabilidad, aislamiento, rendimiento, etc.

Integración

La integración de una aplicación SaaS con otras aplicaciones es al mismo tiempo un reto y una gran ventaja que aporta esta modalidad. Gracias a ello ahora es posible que el nuevo ERP Tesis Broker Manager se “entienda” con otros productos, ya sean de la casa como, por ejemplo, Avant2 Sales Manager, o bien de otros partners o terceros.

La herramienta clave para conseguirlo ha sido y está siendo la API-ficación de la aplicación, apoyándonos para ello en una arquitectura de API REST. Las principales ventajas de este tipo de solución son:

  • Flexibilidad y portabilidad: Con el requisito imprescindible de que los datos de cada una de las peticiones sean enviados de forma correcta, es posible realizar una migración de un servidor a otro o practicar cambios en la base de datos en todo momento. De esta forma el front (las pantallas y su lógica) y el back (la base de datos y la lógica de la aplicación) se pueden alojar en servidores diferentes, lo que supone una enorme ventaja de manejo.
  • Independencia: Debido a la separación entre el cliente (front) y el servidor (back), el protocolo facilita que los desarrollos de las diferentes partes de un proyecto se puedan dar de manera independiente.
  • Escaso consumo de recursos: REST consume menos recursos que otros protocolos debido a que es un protocolo sin estado. Esto significa que no guarda información de la sesión del usuario, lo que permite que el servidor no tenga que almacenar información de sesión. Esto ayuda muchísimo en aspectos clave como por ejemplo la escalabilidad del sistema. Además, REST utiliza el protocolo HTTP, que es un protocolo de transferencia de hipertexto, lo que permite que los datos se transfieran de manera más rápida y eficiente.

Escalabilidad

Probablemente este es el término que más veces se repite a lo largo de este artículo, lo que denota la importancia y relevancia de este aspecto. Una aplicación SaaS con problemas de escalabilidad no tendría mucho sentido. Uno de los objetivos básicos y principales es que la aplicación pueda dar servicio en todo momento, tanto en las horas pico de actividad como en los momentos valle, sin interrupción.

Uno de los objetivos básicos es que la aplicación pueda dar servicio en todo momento, tanto en las horas pico de actividad como en los momentos valle

Para asegurar la escalabilidad de la solución nos basamos en una compleja arquitectura combinada de soluciones cloud, clusterización y balanceo de carga. Además ha sido necesario rediseñar y redefinir la estructura de la base de datos para que sea capaz de soportar los requisitos de escalabilidad.

Por otra parte, todos los servicios y servidores implicados son monitorizados en todo momento, de forma que no sólo podemos anticiparnos a posibles problemas sino que contamos con la ventaja de poder analizar la evolución de cada indicador clave y planificar con tiempo para tomar las medidas necesarias dentro de los términos de calidad estándares de la compañía.

Conclusiones

Como indicaba al inicio del artículo, el faro que guía a Codeoscopic es dar el mejor servicio posible a sus clientes, y no es ningún otro el objetivo de acometer semejante hazaña desde el punto de vista de la ingeniería tecnológica involucrada en ello.

Nuestros clientes ahora podrán acceder a su aplicación desde cualquier lugar con acceso a internet, se podrán despreocupar de los costes y mantenimientos de los servidores y sistemas para así poder centrarse en su negocio, con la ventaja añadida de que los costes serán inferiores; también podrán despreocuparse de aspectos relativos a seguridad, escalabilidad y continuidad del servicio, y por último y no menos importante, disfrutar del nuevo rango de posibilidades que otorga la integración con otras aplicaciones y servicios gracias a la API-ficación.

David Herrera
Project Manager Tesis Broker Manager