MultiONoticias

Por David Boissy, Paul Urban y Krishna Balasubramanian, MathWorks

Integración continua para la verificación de modelos de Simulink

-A
+A

La integración continua (CI: Continuous Integration) está ganando popularidad y se está convirtiendo en una parte integral del Diseño Basado en Modelos. Pero, ¿qué es CI? ¿Cuáles son sus beneficios y qué problemas intenta resolver? ¿Cómo encaja Simulink® en el ecosistema de CI? ¿Y cómo puede aprovechar mejor la CI para sus proyectos?

Si está familiarizado con el Diseño Basado en Modelos pero es nuevo en CI, es posible que se esté haciendo estas preguntas. En este artículo, exploramos un flujo de trabajo común de CI y lo aplicamos al Diseño Basado en Modelos. A continuación, analizamos un ejemplo de ese flujo de trabajo con Jenkins™, GitLab® y Simulink Test ™.

¿Qué es CI?

CI es una mejor práctica de metodología ágil en la que los desarrolladores envían y combinan regularmente los cambios de su código fuente en un repositorio central. Estos "conjuntos de cambios" se crean, califican y liberan automáticamente. La Figura 1 ilustra este flujo de trabajo de CI básico junto con el flujo de trabajo de desarrollo.

CI workflow.

En la parte de desarrollo del flujo de trabajo, los modelos y las pruebas se realizan, verifican, fusionan, revisan y envían a un sistema de control de versiones en el escritorio del desarrollador. El sistema de control de versiones activa la parte automatizada del flujo de trabajo de CI. Las partes clave del flujo de trabajo son:

  • Construcción: del código fuente y los modelos se convierten en objetos y ejecutables
  • Pruebas: se realizan como una puerta de entrada a la calidad
  • Empaquetado: los ejecutables, la documentación, los artefactos y otros entregables se empaquetan para su entrega a los usuarios finales
  • Implementación: los paquetes se colocan en el entorno de producción

Juntos, estos cuatro pasos se conocen como la "canalización" de CI. La canalización suele estar automatizada y puede tardar desde unos minutos hasta días en completarse, según el sistema. Vale la pena señalar que a lo largo de estos pasos, se crean numerosos artefactos, como listas de materiales, resultados de pruebas e informes.

Los flujos de trabajo de CI a menudo se combinan con los flujos de trabajo de los desarrolladores relacionados con los sistemas de control de versiones. En estos flujos de trabajo, los desarrolladores a menudo mantienen sus cambios en repositorios locales y usan una canalización de CI local para calificar los cambios antes de la implementación.

Acceda al artículo original aquí.