thomas fritz

News

I have moved to Zurich where I am now an Assistant Professor in the Software Evolution and Architecture Lab at the University of Zurich since November 2011. Find my new web site here (http://seal.ifi.uzh.ch/fritz/).


Research Stages and Projects

My research focuses on software engineering, in particular on supporting software developers by understanding what they need and how we can help them to better manage the information and systems they have to deal with.
Despite advances in programming languages, software systems continue to grow larger and more complex. As a result, developers are facing large amounts of new information each day, such as changes to the code, bug reports and documentation. My research considers how we can enhance tools, through the addition of developer-centric models, to tackle a developer's information needs, such as answering questions over integrated information and identifying relevant information. Finding and accessing the relevant information is not an endeavour specific to software developers, but occurs for information workers in general, for which my approaches may be applicable as well.

In the beginning I focused on research for Aspect-Oriented Programming, in particular on an aspect language supporting sequences of events. In my PhD research, I now focus less on the technique and more on the actual developers, how we can help and support them and how much they value the support.

A list of publications can be found on my publications page.


Using a Model of Information Fragments to Integrate Information

Part of my PhD research focuses on supporting developers to integrate information and answer the questions they face. This research introduces an information fragment model (and prototype tool) that automates the composition of different kinds of information and that provides flexibility for developers to project composed information to suit their different interpretations of questions and needs.
This research is still ongoing.


A Degree-of-Knowledge Model to Capture Source Code Familiarity

Continuing the previous research on building a model of what a programmer knows about a code base, we introduce a degree-of-knowledge (DOK) model. As we found from data on two professional software development teams, both, a developer's authorship history of code, as well as the interaction information on how a developer interacts with the code are important in characterizing a developer's knowledge of code. The degree-of-knowledge model takes into account both of these two components and we used this model in an experiment to determine the relative effect of each component and in exploratory case studies for possible uses of a DOK.


Does a programmer's activity indicate knowledge of code?

In January 2007, I went for a month and a half to IBM Ottawa (Center for Advanced Studies) to perform an experimental study that investigates whether a programmer's activity can be used to build a model of what a programmer knows about a code base.
This study was a really good experience, in particular because of all the people I met and the chance to observe great developers at work.


An expressive aspect language with Arachne

In June 2005 I completed my Diploma degree at the Ludwig-Maximilians-University Munich, Germany. During my studies, I conducted my diploma thesis at the OBASCO (Objects, Aspects and Components) group at the Ecole des Mines de Nantes in France under the supervision of Prof. Mario Suedholt (EMN) and Prof. Dr. Martin Wirsing (LMU). The topic was An Expressive Aspect Language with Arachne (Development of an Expressive Aspect Language for C based on Sequences of Execution Events, in particular Control-Flow and Dataflow Relationships . During that time I had the pleasure to work a lot with Marc Segura-Devillechaise and Nicolas Loriant, two PhD students at the EMN at that time.


Hot-Deployment of Aspects

From September 2003 until March 2004 I was a working student at department of Corporate Technology for Systems & Engineering at Siemens, where I worked under the supervision of Christa Schwanninger and Egon Wuchner in the research group on Aspect-Oriented Software Development. Amongst other things I was helping to develop a weaver for the hot-deployment of aspects in .Net. During that time I had the pleasure to work with Rainer Burgstaller, a student working on his Diploma Thesis at Siemens in that period.


Refactoring to Aspects

In 2002/03 I spent a year as a visiting student at the University of British Columbia. After my second term, Gail Murphy offered me the chance to be a summer research assistant under her supervision. During that period, I worked on a project that aimed at facilitating the refactoring of crosscutting code into aspects using a dialogue-based approach. This, as well as the three courses about software engineering I have taken from Gail, were my starting point into research work. During that time I gained and developed a lot of enthusiasm and motivation for research work and I am very grateful that I got this chance.

Last updated: January 25, 2011

Assistant Professor

Software Evolution and Architecture Lab

University of Zurich

Email
Thomas Fritz