jueves, 23 de septiembre de 2010

Enfoques para Peer reviews

Existen diferentes métodos y técnicas para realizar un Peer review, o revisión entre colegas, que cubren diferentes niveles de formalidad, rigor, efectividad y costo. 


Técnicas de Peer review
  • Inspección (Inspection) es el tipo de revisión más riguroso y sistemático. Se ejecuta siguiendo diferentes etapas con diferentes roles asignados a los participantes. Es más efectivo en la detección de defectos que métodos más informales, llegando a detectar 20% más defectos que los demás. 
  • Revisión en equipo (Team reviews) es un tipo de inspección más sencilla, que es planeada y estructurada pero menos rigurosa que la inspección. Se simplifican u omiten fases, como presentación inicial y seguimiento, y algunos roles se combinan, posiblemente el moderador puede ser adicionalmente el lector. 
  • Presentación (Walkthrough) es una revisión informal en la cual el autor presenta el producto a los colegas para obtener comentarios. Son diferentes a las inspecciones en el sentido que el autor es el que controla la sesión y otros roles no son definidos. Típicamente no siguen un procedimiento definido, no establecen un criterio de término, no existe un reporte a la gerencia y no se llevan métricas. 
  • Programación en pares (Pair programming) es una técnica en la que dos programadores trabajan de manera simultanea en el mismo programa utilizando una sola computadora y revisan continuamente su trabajo en conjunto. No permite tener una perspectiva diferente de otros programadores a diferencia de otros tipos de revisiones. 
  • Revisión de escritorio (Peer deskcheck) es una técnica donde el autor le pide a otra persona que revise sus productos. Se realiza de manera informal aunque el revisor puede utilizar listas de verificación y métodos de análisis que aumentan la efectividad. 
  • Revisión de escritorio múltiple (Passaround) es una variante de revisión cruzada que se realiza en forma concurrente en la cual participan varias personas proporcionando comentarios, con lo que se obtiene mayor retroalimentación, en menor tiempo y con mejores resultados. 
Cada proyecto debe seleccionar la técnica o método más económico que le permita reducir a un nivel aceptable los riesgos que pueden presentar los defectos que permanecen en el producto. Se utilizan las inspecciones para productos que representan un alto riesgo y técnicas más económicas para componentes que tienen un riesgo menor.