Contenido principal

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Productos de Polyspace y flujos de trabajo de desarrollo de software

El conjunto de productos de Polyspace® ofrece una solución unificada para gestionar, medir y supervisar la calidad del código C/C++ a lo largo del ciclo de desarrollo de software.

Los productos de análisis estático, Polyspace Bug Finder™ y Polyspace Code Prover™, analizan el código C/C++ en busca de errores en tiempo de ejecución, infracciones de los estándares de codificación, vulnerabilidades de seguridad y otros problemas:

  • Polyspace Code Prover puede cubrir todas las posibles rutas de ejecución de un programa y hacer un seguimiento del flujo de datos a lo largo de esas rutas siguiendo determinadas reglas matemáticas. El análisis exhaustivo de las estructuras de control y el flujo de datos puede complementar las pruebas dinámicas y revelar errores potenciales en tiempo de ejecución que podrían no detectarse mediante pruebas de robustez convencionales.

  • Polyspace Bug Finder puede escanear un programa en busca de defectos evidentes, vulnerabilidades de seguridad, infracciones de los estándares de codificación y otros problemas que podrían provocar errores en tiempo de ejecución o resultados inesperados.

El producto de pruebas dinámicas, Polyspace Test™, proporciona herramientas para desarrollar, gestionar y ejecutar pruebas unitarias y de integración para código C y C++ en sistemas embebidos. Con Polyspace Test puede crear pruebas utilizando una API basada en xUnit para C/C++ o mediante una interfaz gráfica de usuario, ejecutar las pruebas en ordenadores host u objetivos integrados, automatizar la ejecución de pruebas y vincularlas a requisitos por motivos de trazabilidad. También puede medir la integridad de las pruebas calculando métricas de cobertura de código y generar pruebas automáticamente para complementar la creación manual de pruebas.

Usar productos de Polyspace en el desarrollo de software

El conjunto de productos de Polyspace es compatible con todas las fases del proceso de desarrollo de software:

  • Antes del envío de código:

    El personal de desarrollo de software puede ejecutar los productos de Polyspace de escritorio o enfocados a un IDE para comprobar el código durante el desarrollo o justo antes del envío del código, a fin de cumplir objetivos de calidad predefinidos.

    Los productos pueden integrarse en IDE como Visual Studio Code, Visual Studio® o Eclipse™, o ejecutarse con scripts durante la compilación. Los resultados del análisis pueden revisarse directamente en los IDE o a través de la interfaz gráfica de usuario de los productos de escritorio.

    Polyspace proporciona los siguientes productos para uso en escritorio. Estos productos están diseñados para ejecutarse sobre proyectos completos o módulos de código más pequeños (hasta un único archivo fuente).

    • Polyspace Bug Finder para comprobar el código en busca de errores semánticos que un compilador no puede detectar (como el uso de = en lugar de ==), problemas de simultaneidad, vulnerabilidades de seguridad y otros defectos en código fuente C y C++.

    • Polyspace Code Prover para realizar una comprobación mucho más profunda y demostrar la ausencia de desbordamientos, divisiones por cero, accesos a arreglos fuera de los límites y otros errores en tiempo de ejecución en código fuente C y C++.

    • Polyspace Test para crear y ejecutar pruebas en C/C++ desde el ordenador host o en un objetivo integrado.

  • Después del envío del código:

    Los productos de servidor de Polyspace pueden ejecutarse automáticamente sobre nuevo código enviado como parte de un paso de compilación en un proceso de integración continua (usando herramientas como Jenkins®). El análisis se ejecuta en un servidor y los resultados se cargan en una interfaz web para su revisión colaborativa.

    Polyspace proporciona estos productos para uso en servidores:

    • Polyspace Bug Finder Server™ para ejecutar automáticamente Bug Finder en un servidor y cargar los resultados en una interfaz web para su revisión, junto con Polyspace Access™ para revisar los resultados cargados.

    • Polyspace Code Prover Server para ejecutar automáticamente Code Prover en un servidor y cargar los resultados en una interfaz web para su revisión, junto con Polyspace Access para revisar los resultados cargados.

    • Polyspace Test para ejecutar pruebas automáticamente en un servidor y cargar los resultados en una interfaz web para su revisión, junto con Polyspace Access para revisar los resultados de las pruebas cargados.

Normalmente, los productos de servidor se ejecutan en unos pocos servidores de compilación y comprueban código recién enviado como parte de la compilación y las pruebas del software. Cada revisor (desarrollador, ingeniero de calidad o responsable de desarrollo) dispone de una licencia de Polyspace Access para revisar los resultados cargados del análisis.

Además, si el personal de desarrollo de software tiene acceso a Polyspace Access para revisar los resultados posteriores al envío en un navegador web, puede instalar Polyspace as You Code en sus IDE para realizar análisis previos al envío. Cuando se instala como extensión del IDE, Polyspace as You Code realiza un análisis similar al de Bug Finder a nivel de archivo y proporciona información casi instantánea al personal de desarrollo de software mientras escriben el código.

Este diagrama muestra un posible despliegue de los productos de Polyspace:

A flow diagram of a typical software development workflow. Polyspace products can be used both prior to submission and after submission.

Cuando se utilizan tanto los productos de escritorio como los de servidor, el flujo de trabajo previo al envío puede integrarse sin problemas con el flujo de trabajo posterior al envío.

Coordinar el uso de Polyspace antes y después del envío

Cuando se ejecuta más de un producto de Polyspace en distintas etapas del flujo de trabajo de desarrollo de software, las ejecuciones posteriores pueden beneficiarse de las anteriores y viceversa. En especial:

  • El personal de desarrollo de software que utiliza Polyspace as You Code en sus IDE puede corregir fácilmente los defectos y las infracciones de los estándares de codificación que pueden detectarse y resolverse dentro de un único archivo. Un análisis posterior con Polyspace Bug Finder Server después del envío del código ya no mostrará esos problemas.

  • Los resultados de un análisis de Polyspace Bug Finder Server pueden utilizarse como línea de referencia para las ejecuciones de Polyspace as You Code. El personal de desarrollo de software que use el último resultado de Polyspace Bug Finder Server como línea de referencia para sus ejecuciones IDE puede centrarse únicamente en los problemas derivados de sus propios cambios en el código.

Productos de Polyspace para código Ada

Polyspace proporciona los siguientes productos para la verificación de código Ada:

  • Polyspace Client™ for Ada: para comprobar errores en tiempo de ejecución en código Ada en escritorio.

  • Polyspace Server for Ada: para comprobar errores en tiempo de ejecución en código Ada en un servidor.

Puede utilizar el producto de escritorio para ejecutar el análisis en su escritorio o una combinación de productos de escritorio y servidor para ejecutar el análisis en un servidor. Los resultados del análisis se descargan al escritorio para su revisión.

Si dispone de una licencia de Polyspace Code Prover Access y ha configurado la interfaz web de Polyspace Code Prover Access, puede cargar cada resultado individual del análisis de Ada desde el producto de escritorio a la interfaz web para su revisión colaborativa.

Consulte también https://www.mathworks.com/products/polyspace-ada.html.

Consulte también

Temas