He heredado 200K líneas de código de espagueti, ¿y ahora qué?

470

Espero que esto no sea una pregunta demasiado general; Realmente podría usar algunos consejos experimentados.

Soy un nuevo empleado como el único "Ingeniero SW" en una tienda bastante pequeña de científicos que han pasado los últimos 10 a 20 años formando una gran base de códigos. (Fue escrito en un idioma virtualmente obsoleto: G2 : piense en Pascal con gráficos). El programa en sí es un modelo físico de una planta de procesamiento químico complejo; el equipo que lo escribió tiene un conocimiento del dominio increíblemente profundo, pero poca o ninguna capacitación formal en los fundamentos de la programación. Recientemente aprendieron algunas lecciones difíciles sobre las consecuencias de la administración de configuraciones inexistentes. Sus esfuerzos de mantenimiento también se ven obstaculizados en gran medida por la vasta acumulación de "lodos" indocumentados en el propio código. Le ahorraré la "política" de la situación (¡hay siempre política!), Pero basta con decir que no hay un consenso de opinión sobre lo que se necesita para el camino a seguir.

Me han pedido que comience a presentar al equipo algunos de los principios del desarrollo de software moderno. Quieren que presente algunas de las prácticas y estrategias estándar de la industria relacionadas con las convenciones de codificación, la gestión del ciclo de vida, los patrones de diseño de alto nivel y el control de fuente. Francamente, es una tarea bastante desalentadora y no estoy seguro de por dónde empezar.

Inicialmente, me inclino a enseñarles algunos de los conceptos centrales de El programador pragmático , o Refactoring de Fowler ("Olores de código", etc.) . También espero introducir una serie de metodologías ágiles. Pero en última instancia, para ser efectivo, creo que voy a tener que concentrarme en los fundamentos básicos de 5 a 7; en otras palabras, ¿cuáles son los principios o las prácticas más importantes que pueden comenzar a implementar de manera realista y que les darán el máximo beneficio?

Así que esa es mi pregunta: ¿Qué usted incluiría en su lista de las estrategias más efectivas para ayudar a enderezar los espaguetis (y prevenirlos en el futuro)?

    
pregunta kmote 22.04.2013 - 21:34
fuente

0 respuestas

Lea otras preguntas en las etiquetas