Back To Schedule
Friday, April 21 • 09:25 - 10:10
Understanding Software Faster: Automated Code Simplification via Program Slicing (Alan Shreve)

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Conceptualization and understanding are prerequisites for changing software. But they become harder to achieve as software becomes more complex and expands in scope. We have many tools for writing software, but few at all for reading and understanding it. What if there were tools that helped us conceptualize systems so that we could change them with greater confidence? What would they look like and how would we use them?
I will describe a new approach that helps developers rapidly build understanding of new software systems by generating an Idealized Commit Log: a simplified step-by-step deconstruction of a working software system. I will explain how the tool works by touching upon a diverse set of topics including type analysis, code coverage tools, AST transformations and a much-ignored topic of academic computer science pioneered nearly forty years ago called program slicing.

Learning Outcomes:
  • A better understanding of the problem of software comprehensibility
  • History and foundations of program slicing
  • A new approach for understanding software

avatar for Alan Shreve

Alan Shreve

Founder, ngrok
Creator of ngrok.com

Friday April 21, 2017 09:25 - 10:10 EDT
  Sessions, Talk