Objetivo
El nuevo reglamento de protección de datos de la UE regula, entre otros asuntos, la obligación de información del fabricante de un producto ante los clientes finales. En caso de que un cliente lo solicitara, el fabricante del producto se comprometerá, dentro del periodo de 72 horas, a entregar cierta información sobre los datos personales guardados.
En el pasado, lo descrito en este caso se trataba manualmente, por lo que requería un gran esfuerzo. Por eso, Novatec desarrolló una solución basada en microservicio con interfaz de usuario gráfica que consulta los datos personales de las aplicaciones en cuestión y facilita automáticamente los resultados.
Contribución de Novatec
Equipo de proyecto
Para desarrollar servicios utilizamos el procedimiento clásico según scrum: el equipo está compuesto por 6 desarrolladores, un experto en scrum, un propietario de producto proxy (Proxy Product Owner, PO) y un propietario de producto técnico del cliente. El equipo trabaja por su cuenta, pero está en contacto permanente con el PO responsable del cliente. Se llegará a acuerdos con regularidad para garantizar que siempre se diseñen las funciones correctas y necesarias. El equipo le dará vida a un proceso ágil de desarrollo de software del que también formará parte el cliente. El equipo se encargará del desarrollo y del funcionamiento del servicio.
Arquitectura de la aplicación
Para facilitarles a los usuarios el acceso lo máximo posible, desarrollamos, en un proceso ágil de diseño (diseño UX), conceptos de interacción y las interfaces de usuarios correspondientes para que el manejo sea lo más intuitivo posible. La aplicación web se desarrollará en Angular con script.
La figura siguiente muestra una vista general de la arquitectura:
Arquitectura de la solución del RGPDFuente: representación propia
En el centro se ve el servicio del RGPD. Este se utilizará con el frontend desarrollado por sí mismo, aunque también proporciona una API con la que se podrá integrar en un contexto mayor. El servicio del RGPD menciona una serie de aplicaciones y podrá consultar los datos personales de estas. En la solución que hemos desarrollado eran las cinco aplicaciones de módulo de pedido, módulo de siniestro, módulo de comunicación, módulo de inspección y módulo de oferta. Cada una de esas aplicaciones tiene su propia gestión de datos en diferentes sistemas de bases de datos.
El backend del módulo del RGPD se diseñó en base a una arquitectura de microservicio con Spring Boot. Como en el desarrollo participaron varios equipos, el clúster de Kubernetes se subdividió una vez más con Namespaces, lo que permitió los ajustes específicos del proyecto de, por ejemplo, recursos o configuraciones. Todos los servicios funcionan en la nube de IBM en varios clusters de Kubernetes para el desarrollo, testeo y producción. Para la monitorización se utilizan Instana y Kibana. Esto nos ayuda durante el funcionamiento de la aplicación de la que se encarga también nuestro equipo dentro de DevOps.
Despliegue automatizado
Los pipelines que hemos desarrollado automatizan el servicio y lo mantienen instalado y entregado de forma continua (integración continua/despliegue continuo). Los cambios de código del software comienzan tras autorizar una solicitud pull request en git del pipeline. A continuación, se efectúan tests unitarios, tests de integración y tests de sistema automáticos. Si todos los tests se ejecutan correctamente, se llevará a cabo el despliegue automático en el clúster de desarrollo de Kubernetes a la nube.
Para el despliegue a los clusters de testeo y de producción hemos diseñado junto con el cliente un procedimiento que pasa las funciones nuevas, transcurridas dos semanas, al siguiente nivel. Así,tras dos semanas en el Kubernetes de desarrollo, los desarrollos nuevos se trasladan al Kubernetes de testeo, donde se llevarán a cabo más tests, por ejemplo, las pruebas de regresión. Tras otras dos semanas, se realizará el despliegue en el entorno de producción.
Resultado
Por medio del servicio desarrollado se pudo automatizar el trabajo manual, lo que facilitó el funcionamiento y ahorró costes considerables a nuestro cliente. Asimismo, la estructura modular del servicio permite la conexión sencilla con otras aplicaciones, guardar los datos personales y la reacción rápida ante cambios futuros de la legislación correspondiente.
El uso alternativo del servicio por medio de una API permite la integración de la consulta del RGPD en un contexto mayor, por ejemplo, para la conexión a un portal de autoservicio.
Con el pipeline de despliegue diseñado, hemos establecido una integración continua/despliegue continuo totalmente automatizados, por lo que las funciones nuevas se incorporan a la producción muy rápido, pero con la máxima calidad.
Su persona de contacto

Fabiola Saucedo Carmona
Director Digital Product Development