Las mejores prácticas para la organización de trabajos en desarrollo, seguridad y operaciones
25 de Junio de 2025Escribe Francisco Larez, vicepresidente de Progress para América Latina y el Caribe
Un flujo de trabajo consiste en varias tareas que normalmente siguen un algoritmo, y este decide el orden basándose en los factores externos o internos que contribuyen. En el mundo de DevSecOps, donde el enfoque busca incorporar la seguridad desde el principio en el desarrollo y la operación del software, conseguir la secuencia correcta en el momento y lugar adecuados es primordial. Es necesario “orquestar” varias tareas críticas en la secuencia, el orden o el algoritmo adecuado para obtener los resultados deseados.
Aunque las actividades en sí están automatizadas en gran medida, el verdadero desafío reside en conectarlas de forma más fluida. Las herramientas de orquestación son esenciales en este ámbito, y sirven de eje para unir las tareas individuales.
La orquestación de tareas consiste en automatizar la secuencia y gestión de múltiples tareas que forman un flujo de trabajo o proceso. Se deben poder manejar todos los escenarios, complejidades y dependencias del sistema. El objetivo de la automatización de los flujos de trabajo, también denominado workflow, es mejorar la eficiencia al tiempo que se minimizan la redundancia y los costos. De acuerdo con una encuesta realizada por Spacelift, el 99% de las empresas que implementaron DevOps reportaron efectos positivos y otro 61% afirmó que DevOps mejoró la calidad de sus entregables.
Las empresas pueden optar por herramientas especializadas o por una plataforma consolidada para orquestar los flujos de trabajo de DevSecOps. El uso de una plataforma común proporciona una mejor integración entre las diferentes tareas y fomenta la democratización entre las partes interesadas en el sector de desarrollo y operaciones. Sin embargo, hay algunas prácticas que uno debe seguir al implementar la orquestación de trabajo en el entorno DevSecOps. Estas son:
- Definir claramente los procesos DevSecOps. Estos se estructuran en fases, cada una con varias tareas para ejecutar. Por ejemplo, en un escenario de despliegue, los nodos necesitan ser escaneados. Por eso, se necesita una lista de nodos preparada de antemano y la ejecución de algunos scripts. Por último, hay que volver a comprobar su estado. Es posible que todas estas tareas deban realizarse en un momento determinado, para una región concreta y de una manera específica (por ejemplo, de diez en diez). Orquestar estas tareas se convierte en un proceso más sencillo con pipelines DevSecOps claramente definidos.
- Adoptar la metodología “As-Code”. En una canalización de despliegue moderna, tu herramienta de orquestación permite automatizar tu flujo de trabajo con código. Cuando se utiliza código para definir el flujo, los procesos se vuelven más flexibles, eficientes y coherentes. También crea un lenguaje común que entienden los distintos miembros del equipo y ayuda a mejorar la colaboración entre ellos.
- Elegir herramientas escalables. Si se trata de una empresa en crecimiento, la escalabilidad es un factor que no se puede ignorar. Orquestar unas pocas tareas para un pequeño número de nodos es fácil. Pero, ¿cómo escala la herramienta cuando cambia su entorno? ¿Se adapta cuando el número de nodos aumenta significativamente? ¿Se adapta cuando cambia la arquitectura de TI? Hay que probar el nivel de escalabilidad antes de decidirse.
- Incorporar la seguridad desde el principio. Hay que comprobar que la seguridad esté arraigada en todos los procesos de flujo de trabajo desde el inicio. Realizar pruebas de seguridad es el factor más importante en DevSecOps. Mantenerse fiel a esta filosofía requiere que todas las plataformas, incluida la herramienta de orquestación que utilice, incorporen la seguridad como parte del proceso.
- Implementar el control de versiones. Utilizar un método “as-code” para la orquestación significa que se escribirán secuencias de comandos para definir los flujos de trabajo. Por lo tanto, se deben mantener los scripts de orquestación bajo control de versiones para mantener la coherencia y la trazabilidad y para promover la colaboración entre los miembros del equipo. Además, los scripts versionados minimizan la redundancia. Incluso un script de orquestación escrito para un evento ad-hoc puede ser reutilizado en escenarios similares en el futuro.
- Proporcionar una mayor visibilidad entre equipos. Es clave la importancia de la colaboración en el proceso DevSecOps. Para fomentar esta cultura, es esencial que todas las partes interesadas tengan una visibilidad completa o, como mínimo, una visibilidad que se adapte a su función. El uso de una herramienta de orquestación proporciona una vista consolidada, ya sea como un panel o un informe.
- Incluir comprobaciones de seguridad y conformidad. Las comprobaciones coherentes de seguridad y cumplimiento ayudan a identificar vulnerabilidades y a mantener las políticas normativas y organizativas en los pipelines de DevSecOps.
La orquestación de tareas es fundamental en esta era de entornos de TI complejos y prácticas DevSecOps. Cuando se integran y gestionan numerosos procesos con la ayuda de una herramienta de orquestación, se avanza hacia una mayor eficiencia, menores costos y errores y una comercialización más rápida. Todo esto engloba DevOps: entrega y mejora continua.
(*) Francisco Larez: Vicepresidente de Progress para América Latina y el Caribe