Presentation: Tweet"Embrace the Past: How Software Evolution Lets You Understand Large Codebases"
To understand large software systems we need to look beyond the current structure of the code. We need to understand both how the system evolves and how the people building it collaborate. In this session you'll learn to mine social information such as communication paths, developer knowledge and hotspots. It's information you use to improve both the design and the people-side of your codebase. The techniques you'll learn are based on software evolution. They use data from the most underused informational source that we have in our industry: our version-control systems.
You'll see how that information lets you identify code that's hard to maintain, code at risk for defects and even detect architectural decay. Each point is illustrated with a case study from a well-known codebase like Roslyn, ASP.NET MVC, Scala or Clojure. This is a new perspective on software development that will change how you work with legacy systems. Come join the hunt for better code!
Prerequisite attendee experience level: advancedDownload slides