ฉันต้องทำสิ่งนี้เมื่อเร็ว ๆ นี้ด้วยโครงการกว่า 100,000 LOC แนวคิดแรกของฉันคือการดูรูปแบบจากกราฟของ 100 หรือ 1,000 โหนดได้ง่ายกว่าจากข้อความ 100,000 บรรทัด
ดังนั้นฉันใช้เวลา 45 นาทีและเขียนโปรแกรม Python (<100LOC) สั้น ๆ เพื่อแยกสิ่งที่ฉันต้องการจากนั้นและวาดความสัมพันธ์ของวัตถุ ฉันสร้างซอร์สGraphvizซึ่งเป็นภาษาที่ง่ายต่อการสร้าง (ไม่มีอะไรพิเศษเกี่ยวกับ Python ที่นี่: Ruby หรือ C # หรือ Lisp สามัญหรืออะไรก็ได้ที่ทำได้เช่นกัน)
ในโครงการอื่น ๆ ฉันเคยเห็นผู้คนใช้ Graphviz สำหรับการอ้างอิงโมดูลกราฟการโทรประวัติรุ่นทุกสิ่ง เครื่องมือสร้างภาพเครื่องมือที่ยอดเยี่ยมที่สุดที่เคยมีมา
(อาจเป็นเพราะฉันใช้คอมไพเลอร์แต่ฉันคิดว่ามันแปลกที่เมื่อโปรแกรมเมอร์ประสบปัญหาคำตอบดูเหมือนจะเป็น "เขียนโปรแกรม!" ยกเว้นเมื่อปัญหาเกี่ยวข้องกับซอร์สโค้ดไปยังโปรแกรม: - )