Análisis de código fuente

Autor: Eugene Taylor
Fecha De Creación: 7 Agosto 2021
Fecha De Actualización: 1 Mes De Julio 2024
Anonim
Análisis de código fuente - Tecnología
Análisis de código fuente - Tecnología

Contenido

Definición: ¿Qué significa el análisis del código fuente?

El análisis del código fuente es la prueba automatizada del código fuente de un programa con el propósito de encontrar fallas y corregirlas antes de vender o distribuir la aplicación.


El análisis de código fuente es sinónimo de análisis de código estático, donde el código fuente se analiza simplemente como código y el programa no se está ejecutando. Esto elimina la necesidad de crear y usar casos de prueba, y puede separarse de errores específicos de las funciones, como que los botones tengan un color diferente al que dicen las especificaciones. Se concentra en encontrar fallas en el programa que puedan ser perjudiciales para su función adecuada, como líneas de código que causan fallas.

Una introducción a Microsoft Azure y la nube de Microsoft | A lo largo de esta guía, aprenderá de qué se trata la computación en la nube y cómo Microsoft Azure puede ayudarlo a migrar y administrar su negocio desde la nube.

Techopedia explica el análisis del código fuente

El análisis del código fuente es básicamente una depuración de código automatizada. El objetivo es encontrar errores y fallas que pueden no ser obvias para un programador. Está destinado a encontrar fallas como posibles desbordamientos del búfer o el uso desordenado de punteros y el mal uso de las funciones de recolección de basura, todo lo cual puede ser explotable por un hacker.


Los analizadores de código trabajan usando reglas que le dicen qué buscar. Con muy poca precisión, un analizador puede arrojar demasiados falsos positivos e inundar al usuario con advertencias inútiles, mientras que demasiada precisión puede tardar demasiado en terminar; por lo tanto, tiene que ser un equilibrio.

Hay dos tipos de analizadores:

  • Interprocedimiento: detecta patrones de una función a la siguiente, y estos patrones están correlacionados para que el analizador pueda crear un modelo y simular rutas de ejecución.

  • Intraprocedimiento: se enfoca en la coincidencia de patrones y depende de qué tipo de patrones esté buscando el usuario.

Los analizadores interprocediales son más modernos y más complejos. Buenos ejemplos de esto son Coverity, Fortify y la propia herramienta centralizada PREfix de Microsoft.