การสร้างใหม่เช่นเดียวกับกิจกรรมอื่น ๆ จะต้องมีเป้าหมายที่ชัดเจนสำหรับมัน เมื่อเป้าหมายนั้นชัดเจนแล้วคุณจะพิจารณาสถานะโครงการปัจจุบันและระยะเวลาของวงจรชีวิต สำหรับโครงการพัฒนาที่เสร็จสมบูรณ์ 80% และ 30% ตามกำหนดการคุณควรปรับความพยายามในการปรับโครงสร้างใหม่ตามเป้าหมายที่ตั้งไว้ก่อนหน้านี้ ในตัวอย่างนี้ถ้าชิ้นส่วนของรหัสได้รับการทดสอบหน่วยและทำงานได้ดีในสภาพแวดล้อมการพัฒนามันเป็นเรื่องยากที่จะพิสูจน์การปรับโครงสร้างใหม่
ความจริงที่ว่านักพัฒนาซอฟต์แวร์ 40 คนจากไปอาจไม่น่าทึ่งอย่างที่คิด ฉันคาดหวังว่านักพัฒนาเหล่านั้นจะส่งมอบรหัสการทำงานที่ได้รับการตรวจสอบและทดสอบแล้ว ดังนั้นหากมีปัญหาที่ทราบในรหัสนี้ฉันจะปล่อยให้มันเป็น แนวคิดคือในโครงการขนาดใหญ่เช่นคุณฉันคาดหวังว่าจะมีมาตรฐานและขั้นตอนและรหัสไม่เป็นระเบียบสมบูรณ์
โปรดจำไว้ว่าการปรับโครงสร้างจะทำให้เกิดการทดสอบจำนวนมากหากไม่ใช่การทดสอบทั้งหมดที่ทำซ้ำ นอกจากนี้เนื่องจากการปรับโครงสร้างขนาดนี้ไม่สามารถทำได้โดยสมาชิกอาวุโสหนึ่งหรือสองคนการปรับโครงสร้างอาจแนะนำปัญหาที่ไม่มีอยู่ นี่เป็นความเสี่ยงที่ไม่ควรละเลย
ต้องบอกว่ามันไม่ใช่เรื่องแปลกที่จะเพิ่มงานลงในโครงการเมื่อเกิดเหตุการณ์ไม่คาดฝันขึ้น ดังนั้นหากนักพัฒนาหายตัวไปด้วยเหตุผลบางอย่างนั่นจะถือเป็นเหตุการณ์ที่มีลักษณะพิเศษและการกระทำใด ๆ ที่จะแก้ไขสถานการณ์จะต้องดำเนินการ มันจะได้รับการปฏิบัติเหมือนไฟหรือแผ่นดินไหว ฯลฯ
โดยสรุปฉันจะไม่ refactor รหัสการทำงานขนาดใหญ่ในโครงการขนาดใหญ่ด้วยเหตุผลทางเทคนิคที่ไม่ดีโดยเฉพาะอย่างยิ่งที่เราทุกคนรู้ว่าโครงการส่วนใหญ่มักจะอยู่ในสถานะล่าช้า