Todas las contribuciones aceptadas o enviadas con el fin de cambiar las versiones de la codebase DEBEN ser revisadas por otro colaborador.
Las revisiones DEBEN incluir el código fuente, las políticas, las pruebas o tests y la documentación.
Los revisores DEBEN proporcionar información sobre todas las decisiones a la hora de no aceptar una contribución.
Las contribuciones DEBERÍAN ajustarse a las normas, la arquitectura y las decisiones establecidas en la codebase para pasar la revisión.
Las revisiones DEBERÍAN incluir la ejecución tanto del código como de las pruebas o tests de la codebase.
Las contribuciones DEBERÍAN ser revisadas por alguien en un contexto diferente al del contribuyente.
Los sistemas de control de versiones no DEBERÍAN aceptar contribuciones no revisadas en las versiones de lanzamiento.
Las revisiones DEBERÍAN realizarse en un plazo de dos días laborables.
Las revisiones PUEDEN ser realizadas por múltiples revisores.
Por qué es importante
Aumenta la calidad de la codebase.
Reduce los riesgos de seguridad y los riesgos operativos.
Crea una cultura de hacer que cada contribución sea de alta calidad.
Detecta los errores más obvios que puedan ocurrir.
Da a los contribuyentes la seguridad de que sus contribuciones sólo se aceptan si realmente añaden valor.
Asegura a los contribuyentes un tiempo garantizado para la retroalimentación o la mejora colaborativa.
Qué no hace
Garantizar la solución adecuada a un problema dado.
Asegurar que los revisores son responsables.
Libera al contribuyente de tener que escribir documentación y pruebas.
Proveer los revisores adecuados.
Cómo probar o hacer tests
Cada commit del historial ha sido revisado por un colaborador diferente en un contexto distinto.
Responsables de políticas y legislaciones: qué necesitan hacer
Instituir una política de “cuatro ojos” en la que se revise todo, no sólo el código.
Utiliza un sistema o metodología de control de versiones que permita la revisión y la retroalimentación.
Profesionales de la dirección de equipos: qué necesitan hacer
Hacer que la entrega de un código de buena calidad sea un objetivo común.
Asegurarse de que la escritura y revisión de las contribuciones al código fuente, las políticas, la documentación y las pruebas o tests se consideren igualmente valiosas.
Crear una cultura en la que todas las contribuciones sean bienvenidas y, en la que todas y todos estén empoderados para revisarlas.
Asegurarse de que ninguna persona colaboradora esté sola al contribuir a la codebase.
Profesionales del desarrollo de software y diseño: qué necesitan hacer
Pedir a otros colaboradores de la codebase que revisen su trabajo, en su organización o fuera de ella.
Intentar responder a las solicitudes de revisión de código de otros con prontitud, proporcionando inicialmente información sobre el concepto del cambio.