Propósito
La Agencia Digital de Andalucía ha creado una Oficina de Impulso DevSecOps, con el propósito de impulsar la transición a DevSecOps en el desarrollo de software en la Agencia, actuando como facilitador en el cambio cultural, organizativo y técnico.
Realizando para ello, la estandarización en la automatización del ciclo de vida del desarrollo software, integrando la seguridad y la calidad. Además de sistematizar e impulsar la transición a DevSecOps, junto a la adopción de metodologías ágiles y paso a integración y despliegue continuo maximizando la automatización, facilitando el despliegue en nube.
Estos trabajos se enmarcan en la I Estrategia Cloud de Andalucía 2030.
Objetivos estratégicos
Definiendo para ello, los siguientes objetivos estratégicos:
1. Estandarizar la automatización del ciclo de vida del desarrollo software, integrando la seguridad y la calidad software
- Para afrontar la transformación digital de la Junta de Andalucía, debe promoverse sistemas automáticos que garanticen una agilidad, un control y un time to market óptimo, para el desarrollo de sistemas y aplicaciones software.
- Las tareas mecánicas para construir, probar y desplegar el software han de ser automatizadas, consiguiento como beneficio aumentar la velocidad del ciclo de promoción del software, garantizar la ausencia de errores humanos, homogeizar el tratamiento y permitir que los equipos ágiles de desarrollo se focalicen sobre el diseño y desarrollo del software, liberandose de tareas que no aportan valor.
- Además, en la era de la digitalización, no solamente es necesaria la velocidad en el desarrollo y despliegue del software, sino que este software debe tener la seguridad y la calidad necesarias para hacer que el software sea confiable, y no dañar así la imagen que el usuario final tiene de los servicios de la Junta de Andalucía.
- Para ello, en coordinación con la oficina de Arquitectura de Soluciones se definirán una serie de reglas, pautas y activos estándares corporativos que serán la base en la estandarización de la automatización del ciclo de vida del desarrollo software: guías, normas, estándares, pipelines, framewoks, etc.
2. Estandarizar e impulsar la observabilidad para la mejora continua
- El desarrollo software no solamente busca la respuesta a necesidades funcionales, sino que también tiene como reto, el realizarlo de forma óptima. El avance tecnológico ha llevado a software más potentes y versátiles, pero de mayor complejidad en sus procesos de construcción y despliegue al estar compuestas de varios componentes de diversas tecnologías que requieren una coordinación a la hora de desplegarlos.
- De esta forma, cobra importancia que los equipos de desarrollo tengan la información de los procesos de construcción , calidad y promoción del software, así como de su comportamiento en los entornos productivos.
- Esta información permite a los quipos DevSecOps corregir en fases tempranas del desarrollo, identificar sus puntos de mejora, así como focalizarse en vulnerabilidades, control de excepciones, rendimiento y usabilidad. De igual manera, tambien permite a los sistemas de inteligencia artificial ,tener datos para realizar predicciones e identificar fallos en el software.
3. Sistematizar e Impulsar la transición de los sistemas y aplicaciones de la Junta de Andalucía a los estándares y prácticas DevSecOps, facilitando el despliegue en nube
- Siguiendo los estándares definidos en la automatización del ciclo de vida del desarrollo software, se promoverá mediante planes de acción la transición a la nube de los sistemas y aplicaciones de la Junta de Andalucía.
- El proceso de transición comenzará siempre con una evaluación del sistema o aplicación en su afinidad a la nube basado en las 6R (Rehost, Replatform, Repurchase, Refactor, Retain y Retire), siguiendo si es el caso, con un acompañamiento al proceso de adopción de todo lo necesario para facilitar que los equipos se incorporen a los circuitos eficientemente.
- El objetivo es reducir al mínimo las tareas humanas requeridas para la construcción, pruebas, revisión de calidad, revisión de seguridad y despliegue de una solución tecnológica, maximizando la automatización el ciclo de vida.
- Asociado a la eficiencia interna de los procesos de construcción del software y para facilitar la integración y el despliegue continuo, es necesario que los equipos de desarrollo, de operación y de seguridad de la Agencia, adopten los estándares y prácticas DevSecOps definidos en la automatización del cliclo de vida del software.
4. Promover la difusión y una cultura DevSecOps
- Para facilitar y apoyar el impulso de los trabajos de la Oficina, se realizarán píldoras, charlas y eventos en los que se difunda el desarrollo de las líneas de actuación de la oficina.
- Se publicará en el Portal de Desarrollo de Servicios Digitales de la Junta de Andalucía, toda la información técnica para generar conocimiento compartido, así como noticias relacionadas.
- Además, se fomentará la adopción de la cultura DevSecOps a través de información, formación, talleres y procesos de acompañamiento necesario para facilitar el cambio cultural y la resistencia al cambio y no sean un freno que impida evolucionar y mejorar el software y su ciclo de vida.
- La cultura DevSecOps es una filosofía que persigue integrar la seguridad al desarrollo del software, alineándolo con los procesos productivos y operacionales. Busca que todos los equipos que contribuyen en el desarrollo y puesta en producción de una aplicación colaboren y unifiquen su visión del ciclo de vida del software, teniendo una responsabilidad compartida en cuanto a los productos que crean y mantienen.
Líneas de actuación
con las siguientes líneas de actuación:
Gobernanza
La gobernanza de la Oficina de Impulso DevSecOps en relación a la estandarización, se articulará a través de la gobernanza creada en la Agencia para Arquitectura de soluciones, apoyándose en el grupo de trabajo de coordinación previsto en el ámbito tecnológico del impulso DevSecOps, en el desarrollo de software:
Además, al enmarcarse en la I Estrategia Cloud de Andalucía 2030, en relación al impulso de la transición de los sistemas y aplicaciones de la Junta de Andalucía a los estándares y prácticas DevSecOps, facilitando el despliegue en nube, su gobierno vendrá dado por la gobernanza definida en la propia estrategia.
Medición y evaluación
La medición de los resultados de las líneas de actuación es un aspecto importante para analizar los avances en la consecución de los objetivos estratégicos fijados, y priorizar los recursos asociados.
Para ello, debe sustentarse en un conjunto riguroso y completo de métricas que permitan medir el progreso hacia los resultados esperados, como su impacto.
A continuación se establecen los primeros objetivos de medición identificados para las métricas asociadas a los objetivos estratégicos:
- Número de sistemas y aplicaciones evaluadas, en proceso y migradas al Pre-Cloud y al Cloud.
- Grado de aplicación de los pipelines corporativos y elementos asociados en la automatización del ciclo de desarrollo y despliegue software en la Junta Andalucía.
- Dificultad en la aplicación de dichos pipelines y elementos asociados.
- Evolución del número de actualizaciones en cualquiera de dichos pipelines y elementos asociados.
- Reducción del time to market.
- Ahorro estimado basado en la estandarización, industrialización, automatización y la reutilización.
- Evolución desglosada de visitas al Portal de desarrollo de Servicios Digitales.
- Número y grado de satisfacción de los recursos de comunicación, difusión y formación.