Herramientas y / o métodos para la revisión regular del Código del equipo de desarrollo remoto

7

Estamos externalizando un desarrollo a un pequeño equipo de desarrolladores offshore. Nuestro proceso interno para la revisión del código es manual, basado en papel, basado en un modelo de cascada que requiere entrega "big bang". No se puede cambiar. La experiencia pasada es que estos desarrolladores son competentes y confiables; sin embargo, es hora de entregarlos, los gastos generales de las revisiones se convierten en una carga difícil para todos los involucrados y los problemas se encuentran demasiado tarde.

Usamos CVS para nuestro repositorio de fuentes. Ellos toman una copia del repositorio de CVS, reciben actualizaciones periódicas de la base de código más reciente y usan GIT localmente para administrar sus cambios. Cuando esté listo para entregar, envíenos un archivo de un clon actualizado de CVS con su trabajo combinado en él. Luego codificamos la revisión y la registramos.

Estamos buscando una cadena de herramientas para respaldar un proceso de revisión de código en el que podamos realizar revisiones regulares y ligeras fuera de nuestro proceso interno, de modo que cuando comience el proceso interno, podamos hacerlo en el modo "ir rápido" a medida que Ya hemos revisado la mayor parte del código.

Las limitaciones son que los sistemas y los nuestros están desconectados. Usamos sneaker net para transferir archivos entre nosotros. Lo mejor que podemos hacer es tener una máquina interna que VPN en su sistema.

La fuente es un código comercial y no se puede colocar en ningún lugar donde esté expuesta a Internet.

Una opción que han sugerido es Gerrit, que planean usar en su sitio. ¿Hay una manera de compartir y sincronizar la base de datos gerrit entre sitios, dada la limitación de la red de zapatillas? ¿Alguien más tiene una solución para este tipo de problema?

    
pregunta mattnz 11.08.2011 - 12:21

2 respuestas

4

yuk, cascada - > cvs - > git ... suena como si fuera un desastre esperando que suceda, pero ...

Su mejor enfoque para las revisiones de códigos IMHO es Redmine con el complemento de revisión de códigos. Crea un proyecto en Redmine y le dice al repositorio donde vive el código, luego puede ver el código usando el navegador de repositorio incorporado.

El beneficio aquí es que solo mirando el repositorio vinculado al proyecto muestra los conjuntos de cambios y las diferencias entre los cambios. Con el complemento de revisión de código, puede marcar fácilmente secciones de código con comentarios. Esto genera un ticket (es decir, un error) en el proyecto.

Esto es rápido y simple, terminas con un conjunto de tickets que se pueden asignar y rastrear. No es necesario compartir su código fuente ya que se enlaza directamente a su repositorio local de CVS. Sin embargo, los tickets pueden ser difíciles de ver si el sistema redmine no está disponible para el equipo de subcontratación, pero puede exportarlos a Excel o PDF y correo electrónico.

    
respondido por el gbjbaanb 11.08.2011 - 13:01
4

Este problema me parece extraño debido a la extraña relación que tiene con su organización de desarrollo offshore.

Mi experiencia al trabajar con un equipo de desarrollo offshore SUCESAMENTE es que se integran al 100% en su equipo de proyecto existente, y esto incluye:

  • Herramientas : el equipo offshore debe trabajar en el mismo entorno de control de fuente que tú. Ir a Git es una opción mucho mejor que CVS, pero deberían integrarse mejor en SU control de fuente. Eres su cliente después de todo.
  • Entornos : ¿por qué estás VPN en tu red? Debería ser al revés y deberían hacer esto para verificar el código de forma remota en SU control de fuente. Esto brinda el beneficio adicional de deshacerse del desorden manual que está sufriendo a partir de ahora.
  • Comunicación : esta es difícil y no tiene una respuesta fácil. Las diferencias de zona horaria siempre son un gran obstáculo.

En resumen, la única respuesta a su dolor es el proceso político que les impide integrarse completamente en SU equipo de desarrollo que usted identificó como "no se puede cambiar". Cualquier sugerencia para mejorar esta desordenada situación será como dar Tylenol por una pierna rota. No se solucionará hasta que se superen estos supuestos obstáculos imposibles.

    
respondido por el maple_shaft 11.08.2011 - 13:05