ระบบควบคุมแหล่งข้อมูลรุ่นที่ 2 จำนวนมากทำงานโดยใช้ "การชำระเงิน" ที่เชื่อมต่อซึ่งแจ้งเซิร์ฟเวอร์ว่าคุณต้องการแก้ไขไฟล์ ตัวอย่างเช่น TFS, SourceGear Vault และอื่น ๆ อีกมากมาย ด้วยวิธีนี้คุณสามารถทำตามข้อกำหนดทางเทคนิคของคุณได้ อดัมบัตเลอร์ชี้ให้เห็นว่าเครื่องมือประเภทนี้มาพร้อมกับปัญหาของตัวเอง (โดยไม่ต้องมีการถกเถียงกันยาว - จำกัด การสนับสนุนสำหรับการทำงานออฟไลน์
ฉันขอแนะนำวิธีการลำดับชั้นบางอย่างในการจัดสรรงานการปรับโครงสร้างใหม่ ผู้พัฒนาสามารถจัดกลุ่มแบบลอจิคัลเป็นกลุ่มย่อยโดยแต่ละคนรับผิดชอบพื้นที่เฉพาะของรหัส ขึ้นอยู่กับว่าคุณชอบจัดโครงสร้างทีมแต่ละคนจะมีบทบาท "นำ" ซึ่งรับผิดชอบการออกแบบระดับสูงของพื้นที่ของทีม โครงสร้างนี้ควรเป็นที่รู้จักของนักพัฒนาและควรทำให้การสื่อสารเพื่อการปรับโครงสร้างนั้นง่ายขึ้น ฉันแน่ใจว่าวิธีการนี้ดูเหมือนเป็นทางการมากเกินไปและย้อนกลับไปบ้าง แต่ฉันคิดว่าการใช้นักพัฒนามากกว่า 20+ คนใช้วิธี "ฟรีสำหรับทุกคน" เพื่อสร้างระบบขนาดใหญ่ขึ้นมาใหม่ การรีแฟคเตอร์บางอย่างจะเกิดขึ้นในระดับสูง (เช่นโมดูล X จะสื่อสารกับโมดูล Y ได้อย่างไร) ในกรณีนี้คุณจะต้องมีคนที่สามารถโทรออกในระดับที่เหมาะสม ไม่ใช่นักพัฒนาทุกคนในทีมควรทำการตัดสินใจทางสถาปัตยกรรมดังนั้นจึงมีการกำหนดลำดับชั้นไว้เกือบทุกกรณีแม้ว่าจะเลือกที่จะไม่รู้ก็ตาม
โดยพื้นฐานแล้วมีเครื่องมือที่จะตอบสนองความต้องการขั้นพื้นฐานที่คุณระบุไว้ แต่ไม่มีเครื่องมือใดที่จะมาแทนที่การสื่อสารที่เหมาะสมและมีผู้คนจำนวนน้อยขับสถาปัตยกรรมทั่วไปของโครงการของคุณ