
All posts
Beyond Watching: Next Generation Programming Tutorials Leveraging Interaction Data
Making video tutorials fully interactive by leveraging IDE interaction data

Visualizing Interaction Data Inside & Outside the IDE to Characterize Developer Productivity
Work fragmentation is a common phenomenon in the workspace, and is detrimental to the actual work taking place. To measure and study the impact of work fragmentation in software development, several studies exploited interaction data, i.e., the data generated by the events performed by the developers in the IDE. However, the absence of information on activities performed outside the IDE could lead to a misclassification of development time. In fact, sometimes leaving the IDE is not an interruption of the task at hand, e.g., when consulting API documentation, or when discussing with colleagues in ad-hoc collaboration applications. In this paper, we propose Ferax, a data analytics platform that developers can leverage for retrospection and possibly to improve their productivity. The capabilities of Ferax are twofold: First, it extends Tako, a profiler to record IDE interaction data for Visual Studio Code, with information about which applications were used and which websites were visited. Second, to enable the understanding of productivity and interruptions on developer sessions, Ferax provides interactive visualizations that show the detailed sequence of events inside and outside the IDE, the switches the developer performs by classifying them as productive or possible interruptions, and the time distribution for application usage. As a preliminary evaluation of Ferax we have collected and analyzed real development sessions from a set of master students and two professional developers. We illustrate how a developer can leverage Ferax to characterize her usual habits, to elicit the impact of interruptions, and to better characterize sessions which were only apparently unproductive.

Automatic Classification of Development Artifact Contents
Alexander Fischer · Master of Science in Software & Data Engineering
Software Atelier 4: Software Engineering Project (2018-2020) (2020)
Programming skills are essential but not enough to develop large and complex software systems that require the coordination of a team of specialists. Software engineering is about the development of such moderns software systems. Students will learn to go beyond programming, to coordinate a team, to apply modern methodologies and techniques.
SITRA - Simple Traffic: Support Decision-Making in a Real Context with Traffic Simulation
Valerie Burgener · Master of Science in Software & Data Engineering
Characterizing and Visualizing Development Fragmentation with Interaction Data
Aldo Gabriele Di Rosa · Master of Science in Software & Data Engineering
Firms and tax competition in the digital economy: a data platform for geo-temporal network analysis
Building a data platform on the network of firms that supports geo and temporal analysis

Viralscale: Leveraging Virality to Predict and React to Traffic Spikes
Lucas Pennati · Master of Science in Software & Data Engineering