Skip to main content
Corgea Code Quality Scanner es una herramienta de revisión con IA que identifica problemas de mantenibilidad, legibilidad, rendimiento y corrección en la base de código. A diferencia de los escáneres de vulnerabilidades, centrados en las amenazas de seguridad, Code Quality Scanner revisa el código como lo haría un ingeniero experimentado para ayudar a mantener estándares altos y evitar deuda técnica.

Qué hace

Code Quality Scanner analiza los archivos fuente para identificar problemas concretos que afectan a la calidad de la base de código a largo plazo. Equivale a contar con un ingeniero senior que revise cada archivo y detecte problemas que podrían pasar desapercibidos durante una revisión manual, centrándose siempre en mejoras prácticas.

Capacidades clave

  • Revisión automatizada de código: Realiza un análisis exhaustivo para detectar problemas habituales de calidad que afecten a la mantenibilidad
  • Análisis consciente del lenguaje: Comprende el contexto y las convenciones de diferentes lenguajes de programación
  • Detección de frameworks: Reconoce frameworks habituales y aplica las prácticas recomendadas para cada uno
  • Clasificación por gravedad: Prioriza los hallazgos según su impacto (alto, medio o bajo)
  • Asignación de CWE: Asocia los hallazgos con la enumeración Common Weakness Enumeration (CWE) para normalizar su clasificación

Lo que puede encontrar

Code Quality Scanner identifica una amplia variedad de problemas de calidad. Todos los hallazgos se asocian a para mantener una clasificación coherente.
  • Errores tipográficos y ortográficos en comentarios de código, nombres de variables y cadenas (CWE-1078)
  • Comentarios inexactos o engañosos que contradigan el comportamiento real del código o que puedan estar desactualizados (CWE-1116)
example.js
  • Bloques de código vacíos que no tienen propósito (CWE-1071)
  • Variables no utilizadas, importaciones y código muerto que saturan la base de código (CWE-563, CWE-1041)
  • Bloques de excepciones vacíos que silencian los errores (CWE-1069, CWE-390)
  • Código inalcanzable que nunca puede ejecutarse (CWE-561)
example.py
  • Código duplicado que debe refactorizarse en funciones compartidas (CWE-1041)
  • Claves duplicadas o literales en objetos y números mágicos que deberían ser constantes (CWE-1078)
  • Código que incumple el principio : lógica repetida que aumenta la carga de mantenimiento
  • Concatenación de cadenas en bucles que degrada el rendimiento (CWE-1046)
  • Operaciones ineficientes y consumo innecesario de recursos (CWE-1050)
  • Cuellos de botella de rendimiento en rutas de código que se ejecutan frecuentemente
Example.java
  • Funciones con demasiados parámetros (>5 parámetros) que indican un diseño pobre (CWE-1064)
  • Firmas de funciones excesivamente complejas que son difíciles de usar correctamente
  • Dependencias circulares entre módulos (CWE-1047)
  • Violaciones de
  • Expresiones complejas que deben desglosarse para mejorar la claridad (CWE-1120)
  • Lógica profundamente anidada con ramificaciones excesivas que son difíciles de entender
  • Funciones auxiliares excesivamente genéricas que oscurecen la intención
  • Violaciones de
  • Convenciones de nombres inconsistentes que dificultan el seguimiento del código (CWE-1099)
  • Nombres genéricos de variables no descriptivas como ‘obj’, ‘x’, ‘data’
  • Estilos de nombres mixtos (por ejemplo, camelCase y snake_case en la misma base de código)
  • Errores lógicos que causan comportamientos incorrectos (CWE-670)
  • Procesamiento incorrecto de datos que produce resultados incorrectos
  • Código que no funcionará como se espera debido a errores de implementación
  • Comentarios TODO y código provisional (CWE-1071)
  • Características a medio terminar que pueden causar problemas
  • Implementaciones incompletas que requieren atención

Cómo funciona

1. Análisis de archivos

El escáner procesa cada archivo de tu base de código individualmente, analizando el código fuente completo con el contexto completo de la estructura, el lenguaje y los frameworks detectados del archivo.

2. Análisis con IA

Mediante modelos de lenguaje avanzados entrenados específicamente para revisar código, el escáner lo examina según principios y prácticas recomendadas de ingeniería de software. La IA comprende:
  • Expresiones idiomáticas y convenciones específicas de cada lenguaje
  • Patrones y prácticas recomendadas de cada framework
  • Métricas de complejidad y mantenibilidad del código
  • Principios de diseño de software estándar en la industria

3. Identificación de hallazgos

Cuando se detecta un posible problema, el escáner:
  • Localiza exactamente las líneas de código implicadas
  • Clasifica el tipo de hallazgo mediante las categorías CWE
  • Asigna un nivel de gravedad adecuado
  • Genera una explicación clara del problema y su impacto

4. Detección de alta confianza

  • El escáner solo notifica problemas con una confianza mínima del 90 %. Este umbral elevado garantiza que los hallazgos sean precisos y permitan actuar, en lugar de ser meras conjeturas.
  • El umbral de confianza del 90 % reduce considerablemente el ruido y los falsos positivos, por lo que los hallazgos notificados merecen atención.

Supresión de falsos positivos

Code Quality Scanner incluye mecanismos avanzados de supresión de falsos positivos para que solo recibas hallazgos relevantes sobre los que puedas actuar:

Filtros integrados

Exclusión de vulnerabilidades: El escáner excluye explícitamente vulnerabilidades como la inyección SQL, XSS o los fallos de autenticación, ya que los escáneres de seguridad específicos de Corgea se encargan de ellas. De este modo se evitan solapamientos y confusiones entre la calidad del código y la seguridad.
Filtrado de preferencias de estilo: No se notifican preferencias menores, como la colocación de llaves, la sangría o los espacios en blanco. El escáner se centra en problemas sustanciales de calidad, no en preferencias de formato.

Comprensión contextual

El escáner entiende el contexto del código para evitar falsos positivos:
  • Reconoce cuándo los bloques “vacíos” son intencionados (por ejemplo, implementaciones provisionales)
  • Entiende patrones específicos de cada framework que de otro modo podrían parecer problemáticos
  • Tiene en cuenta las expresiones idiomáticas aceptadas en cada lenguaje de programación

Remediación automatizada

Cuando se identifican problemas de calidad, Corgea ofrece funciones de remediación automatizada para corregirlos con rapidez y coherencia:

Qué se remedia

El sistema automatizado de remediación puede solucionar muchos problemas comunes de calidad del código, entre ellos:
  • Eliminación de variables no utilizadas e importaciones
  • Conversión de números mágicos en constantes con nombre
  • Corrección de errores tipográficos en nombres de variables y comentarios

Cómo funciona la remediación

  1. Contexto del problema: El sistema analiza todo el contexto alrededor de cada problema, comprendiendo no solo el código problemático sino también su papel en la base de código más amplia
  2. Correcciones seguras: Las correcciones automáticas están diseñadas para ser seguras y mantener la funcionalidad existente
  3. Preservación del estilo de código: Las correcciones respetan el estilo y las convenciones de código existentes
  4. Revisar antes de aplicar: Mantienes el control total sobre qué correcciones aplicar

Separado del escaneo de vulnerabilidades

Code Quality Scanner funciona de forma totalmente independiente de las funciones de escaneo de vulnerabilidades de Corgea.

Diferencias clave

Por qué importan ambas cosas

  • La seguridad mantiene tu aplicación segura frente a los atacantes
  • Calidad del código mantiene tu base de código mantenible, eficiente y fiable
Ambos son esenciales para un proyecto de software saludable, pero abordan preocupaciones diferentes. Una base de código puede ser segura pero no mantenible, o bien estructurada pero vulnerable. Corgea ofrece ambos para darte una visión completa de la salud de tu código.

Explicación de los niveles de gravedad

Problemas que pueden provocar bloqueos, problemas graves de rendimiento o errores críticos:
  • Bloques de captura vacíos que ocultan errores
  • Bucles infinitos
  • Lógica que siempre falla
  • Cuellos de botella críticos en el rendimiento
Acción: Corregir de inmediato

Primeros pasos

El Code Quality Scanner se integra perfectamente en tu flujo de trabajo de desarrollo:
1

Conecta tu repositorio

Vincula tu repositorio de código a Corgea usando GitHub, GitLab, Azure DevOps, o Bitbucket
2

Escaneo automático

El escáner analiza tus archivos automáticamente
3

Resultados de la revisión

Explora los hallazgos con explicaciones claras y niveles de gravedad en el panel del proyecto
4

Aplicar correcciones

Utiliza la remediación automatizada o corrige los problemas manualmente
5

Seguimiento del progreso

Supervisa las mejoras en la calidad del código a lo largo del tiempo

Documentación relacionada

SAST, nativo de AI

Infórmate sobre las capacidades de escaneo de vulnerabilidades de seguridad de Corgea

Correcciones automáticas

Explora cómo funciona la remediación automatizada en todos los tipos de escaneo

Gestión de falsos positivos

Gestionar y suprimir eficazmente los falsos positivos

Gestión de hallazgos

Haz un seguimiento de todos los hallazgos de tus proyectos y gestiónalos

Apoyo

Para recibir ayuda, contáctanos en support@corgea.com