- This event has passed.
Colloquium – Danny Dig
January 7 @ 3:00 pm - 4:00 pm
University of Colorado Boulder
January 7, 2020
lecture – 3:00pm
Host: Mary Hall
Lessons from the Exponential Growth of Refactoring Research in the Last Decade
Refactoring is an important software engineering practice for changing the internal structure of software to make it easier to understand and modify without changing its observable behavior. In the last decade, refactoring research has seen exponential growth. I will attempt to map this vast landscape and the advances that the community has made by answering questions such as who does what, why, and how. I will muse on some of the factors contributing to the growth of the field (e.g., refactoring the definition of refactoring), the adoption of research into industry, and the lessons that we are learning along this journey.
I will present several cases studies from my own research group’s effort to advance the frontier of refactoring. For example, we are designing a new breed of analysis and transformation tools to refactor ultra-large code bases of hundreds of millions lines of code, for which none of the current techniques work. Our empirical evaluation using the largest Java code base in the world shows that our approach is applicable, safe, useful, and scalable. Many of these case studies show the value of focusing on students and people, and that one is too small of a number to achieve significance. This will inspire and equip you so that you can make a difference, with people who make a difference, at a time when it makes a difference. I will conclude with the lessons we are learning from working with industry, colleagues at CU and OSU, to develop a new NSF Center on Intelligence for IoT systems: http://ppicenter.org
Bio: Danny Dig is a freshly appointed associate professor at U of Colorado, and an adjunct professor at University of Illinois. He enjoys doing research in Software Engineering, with a focus on interactive program analysis and transformations that improve programmer productivity and software quality. He successfully pioneered the field of refactoring in cutting-edge domains including mobile, concurrency and parallelism, component-based, testing, and end-user programming. He earned his Ph.D. from the University of Illinois at Urbana-Champaign where his research won the best Ph.D. dissertation award, and the First Prize at the ACM Student Research Competition Grand Finals. He did a postdoc at MIT.
He (co-)authored 50+ journal and conference papers that appeared in top places in SE/PL. His research was recognized with 8 best or distinguished paper awards at the flagship conferences in SE, 4 award runner-ups, and 1 most influential paper award. He received the NSF CAREER award, the Google Faculty Research Award (twice), and the Microsoft SE Innovation Award (twice). With his students, they released dozens of software systems, among them the world’s first open-source refactoring tool. Some of the techniques they developed are shipping with the official release of the popular Eclipse, NetBeans, and Visual Studio development environments which are used daily by millions of developers. He has started two popular workshops: Workshop on Refactoring Tools, and Hot Topics On Software Upgrades, each had at least seven instances. He chaired or co-organized 14 workshops and 1 conference, and served as a member of 40 program committees for all top conferences in his area. His research is funded by NSF, Boeing, IBM, Intel, Google, and Microsoft.