In this chapter, you learned about the concept of code churn. We used code churn to re-engineer your coding process from version-control data. That technique lets you investigate potential process loss from how you work as a team.
We then transitioned to calculate code churn for individual modules. You learned to use this information to supplement temporal coupling analyses. You also saw how we can measure churn on an architectural level. We then looked into code churn as an alternative to change frequencies in hotspot analyses. You also learned about the differences between absolute and relative churn.
This chapter completes our tour of software evolution and forensic code investigations. You’ve come a long way since you identified your first hotspot. But before I leave you on your own, we’ll take a step back and reflect on how all these techniques fit together. We’ll also share a look into the crystal ball to see what the future may look like. So, let’s turn the page and find out what the next steps are!