¿Cuál es la mejor manera de pasar el software de un ingeniero de software a otro?

Las otras respuestas a esta pregunta se centran en la documentación. Sin embargo, este enfoque rara vez funciona porque la mayoría de los desarrolladores de software odian escribir documentación y es probable que produzcan a regañadientes documentación pobre o inútil en esta situación. En cambio, primero considere la programación de pares.

En mi experiencia, obtienes más valor al hacer que el ingeniero de reemplazo pase el mayor tiempo posible, durante el período de aviso de dos meses, empareja la programación con el ingeniero que se va. Al pasar mucho tiempo juntos, haciendo el trabajo real, pueden discutir continuamente cómo funciona el software, intercambiando mucha más información de la que la documentación puede capturar.

Utilice la limpieza del código como tarea del par, ya que esto les da una razón para revisar todo el código fuente en detalle. Si esto va bien, terminarán discutiendo la estructura y el diseño del código, y cómo funciona.

Tenga en cuenta que los desarrolladores no pueden emparejar el programa todo el día, por lo que debe cubrir sus apuestas y utilizar también las otras estrategias, incluida la documentación.

Haga que el nuevo empleado le ayude en la limpieza y documentación; No hay otra manera de enseñarle a la nueva persona el sistema. Y deben pagar sus cuotas, como otros, o arriesgarse a ser despreciados por empleados más experimentados.

Además, mientras el nuevo empleado está en ello, debe mejorar la cobertura de la prueba. Ayudará a asegurarse de que el proceso de limpieza no dañe inadvertidamente nada …

Por ejemplo, al realizar una mejora “menor” del sistema anoche, mi socio comercial terminó rompiendo media docena de pruebas, luego tuvo que corregir 4 errores que no conocíamos antes.

Sin ese “trabajo gruñido menor”, no habríamos atrapado ni corregido los errores. Las buenas pruebas no son serviles; Es fundamental para las aplicaciones críticas para la vida. En tales aplicaciones, cualquier error puede ser literalmente letal.

Es importante para cualquier producto que los clientes valoren lo suficiente como para gastar su dinero; aproveche la mejor experiencia del cliente que una buena prueba garantiza por su cuenta y riesgo. La alta calidad solo se garantiza cuidando cada pequeño detalle.

1. El buen diseño es muy importante. ¿Su código sigue el principio de diseño SÓLIDO?

2. ¿Tiene un diseño de alto nivel o un diagrama de arquitectura de software

3. ¿Tiene SRS detallado y casos de uso?

4. El documento de diseño detallado sería bueno (opcional)

5. Es mejor tener wiki para todas las demás ayudas

More Interesting

¿Cómo sentir personalmente sobre el mantenimiento del software? Lo disfrutarias

¿Cuánto más productiva es la programación de pares en comparación con la programación individual en la industria de desarrollo de software?

¿Debo comprar una computadora portátil con Windows y descargar el sistema operativo Linux, o debo comprar una computadora portátil con sistema operativo Linux?

¿Un desarrollador web gana más que un ingeniero de software?

¿Cuál es el salario medio para un ingeniero de software principiante?

¿Puedo hacerme un tatuaje y trabajar en una empresa de software como Google?

¿Qué es más importante, el conocimiento del dominio versus el conocimiento técnico en el campo de TI?

¿Cuáles son las habilidades más importantes necesarias para ser un ingeniero de software exitoso?

¿Es realista perseguir proyectos personales mientras trabajas a tiempo completo como ingeniero de software?

¿Cuándo vale la pena contratar programadores en el extranjero? ¿Cuáles son los recursos para encontrarlos? Solo estoy interesado en contratar a tiempo completo, no a tiempo parcial o trabajadores independientes.

Ingenieros de software: ¿Su trabajo le proporciona teclados deficientes o tiene un buen teclado mecánico?

¿Es un ingeniero de desarrollo de software (SDE) una posición más prestigiosa que un ingeniero de software en pruebas (SDET)?

¿Qué puede hacer un estudiante de primer año en ascenso para convertirse en ingeniero de software en una gran empresa tecnológica en los Estados Unidos?

Si conoces un lenguaje de programación, ¿eres técnicamente un programador?

¿Cuáles son las especificaciones mínimas requeridas en una computadora portátil para un ingeniero de software?