Abstract: Software is omnipresent. It is key to successful businesses and has become key to our social activities. As many systems, also software systems need to change in order to stay successful on the market. However, these changes cause software systems to become larger in size and more complex as described by Lehman’s Laws of Software Evolution. As a consequence, more resources are needed to maintain, or in general, evolve a software system. Evolving software systems is therefore mastering change and system complexity. The goal of my research and teaching is to provide software engineers with means to master this challenge.
In this inauguration lecture, I outline several challenges of evolving software systems and present the ideas and findings from my recent research to address them. In particular, I show how we can use the history of software projects to identify critical parts of a software system and how we can use visualization techniques to help software engineers to understand the implementation of large, complex software systems including large spreadsheets.
CV: Martin Pinzger is Professor of Software Engineering and head of the Software Engineering Research Group at the University of Klagenfurt. His research interests cover various topics in designing and evolving software systems. He holds a PhD in Computer Science from the Vienna University of Technology, worked as a Senior Research Associate at the University of Zurich, and as an Assistant Professor at the Delft University of Technology. He is a recipient of the prestigious Dutch NWO Vidi grant and co-founder of the TU Delft start-up Infotron.