stringtranslate.com

Revisión por pares de software

En el desarrollo de software, la revisión por pares es un tipo de revisión de software en la que los colegas del autor examinan un producto de trabajo (documento, código u otro) para evaluar el contenido técnico y la calidad del producto de trabajo.

Objetivo

El propósito de una revisión por pares es proporcionar "una práctica de ingeniería disciplinada para detectar y corregir defectos en los artefactos de software y prevenir su filtración en las operaciones de campo" según el Modelo de Madurez de Capacidades .

Cuando se realizan como parte de cada actividad del proceso de desarrollo de software , las revisiones por pares identifican problemas que pueden solucionarse en una etapa temprana del ciclo de vida. [1] Es decir, una revisión por pares que identifica un problema de requisitos durante la actividad de análisis de requisitos es más barata y más fácil de solucionar que durante las actividades de arquitectura de software o pruebas de software .

El Experimento Nacional de Calidad de Software, [2] que evalúa la efectividad de las revisiones por pares, encuentra "un retorno de la inversión favorable para las inspecciones de software; los ahorros superan los costos en 4 a 1". Para decirlo de otra manera, es cuatro veces más costoso, en promedio, identificar y solucionar un problema de software más adelante.

Distinción de otros tipos de revisión de software

Las revisiones por pares son distintas de las revisiones por la dirección , que las llevan a cabo representantes de la dirección y no colegas, y con fines de gestión y control más que para una evaluación técnica. También se diferencian de las revisiones de auditoría de software , que son realizadas por personal externo al proyecto, para evaluar el cumplimiento de especificaciones, estándares, acuerdos contractuales u otros criterios.

Procesos de revisión

Los procesos de revisión por pares existen en un espectro de formalidad, con actividades relativamente no estructuradas como la "verificación de compañeros" en un extremo del espectro, y enfoques más informales como recorridos , revisiones técnicas por pares e inspecciones de software , en el otro. El IEEE define estructuras, roles y procesos formales para cada uno de los tres últimos. [3]

Los representantes de la gerencia generalmente no participan en la realización de una revisión por pares, excepto cuando se incluyen debido a experiencia técnica específica o cuando el producto del trabajo bajo revisión es un documento a nivel gerencial. Esto es especialmente cierto en el caso de los superiores directos de otros participantes en la revisión.

Los procesos para revisiones formales por pares, como las inspecciones de software , definen roles específicos para cada participante, cuantifican etapas con criterios de entrada/salida, capturan métricas de software en el proceso de revisión por pares.

Reseñas de "código abierto"

En la comunidad de código abierto/libre , algo así como la revisión por pares ha tenido lugar en la ingeniería y evaluación de software informático . En este contexto, la justificación de la revisión por pares tiene su equivalente en la ley de Linus , a menudo expresada: "Con suficientes ojos, todos los errores son superficiales", que significa "Si hay suficientes revisores, todos los problemas son fáciles de resolver". Eric S. Raymond ha escrito de manera influyente sobre la revisión por pares en el desarrollo de software . [4]

Referencias

  1. ^ Kolawa, Adán; Huizinga, Dorota (2007). Prevención automatizada de defectos: mejores prácticas en la gestión de software. Prensa de la Sociedad de Computación Wiley-IEEE. pag. 261.ISBN​ 978-0-470-04212-0.
  2. ^ Recursos y resultados del experimento nacional de calidad del software
  3. ^ Estándar IEEE. 1028-2008, "Estándar IEEE para revisiones y auditorías de software"
  4. ^ Eric S. Raymond . La catedral y el bazar .