The PerPlex Software Engineering Lab

Background and Objectives

In 2008, Microsoft, Avanade, and TU Delft, started a long term collaboration in the field of software engineering. The goals of this collaboration are to stimulate

  1. Research in advanced software engineering topics
  2. Education of software engineering at the master level
  3. Valorization of research results in, e.g., spinoff companies and industrial collaboration
  4. Outreach of the joy of software engineering to the wider public


Founding sponsors of the Perplex lab are:

Additional collaborators of the Perplex Lab include:

Organizations interested in participating in the Perplex Lab are invited to contact Arie van Deursen

People Involved

People involved in the Perplex Lab include

For more information on the Perplex Lab, contact Arie van Deursen.


Domain-Specific Languages

A first result of the Perplex Lab has been an empirical assessment of the success of the domain-specific language ACA.NET, developed and used by Avanade, and building upon the Microsoft platform. The corresponding paper Domain-specific languages in practice: A user study on the success factors has been published at MODELS 2009, the leading conference in the field of model-driven engineering.

Spreadsheet Analysis and Visualization

Example Dataflow Derived from Spreadsheet

Since 2010, the focus on research is on supporting end user programmers working on spreadsheets. Research results include

  • the generation of class diagrams from spreadsheets, showing how data and computations are organized in spreadsheets
  • the generation of data flow diagrams from spreadsheets, showing dependencies between groups of cells, worksheets, and formulas
  • the detection of design flaws (smells), both at the level of formulas and at the level of high level data flows
  • the detection of suspicious copies of computed data.

The techniques have been implemented in a spreadsheet analysis tool. The tool is available on line (as a service). The techniques have been evaluated with professional spreadsheet users from a range of different organizations (including Robeco and the Dutch Voedselbank).

This research has resulted in a series of publications, including three subsequent research papers (2011--2013) in the International Conference on Software Engineering (ICSE), the most prestigious conference in the field of software engineering (with acceptance rates below 20%).


Software engineering education at TU Delft was boosted by the appointment of Erik Meijer from Microsoft (Redmond) as a part time professor at the Software Engineering Research Group.

Erik has set up two new successful MSc courses, one in the area of Functional Programming (building upon Erik's expertise in Haskell), the other on Reactive Programming (covering LINQ and the Rx Reactive Extensions framework).

Furthermore, a series of student projects have been conducted within the context of the Perplex Lab, usually via an internship at one of the affiliated companies.


A key success of the project is the founding in 2010 of Infotron, a company offering tools and services in the area of spreadsheet analysis and visualization based on research conducted within the Perplex lab.


Outreach activites include involvement in various editions of the Imagine Cup, in Devnology as well as the First Lego League.

Furthermore, Perplex Lab members appeared at TEDxDelft in 2011:

Subsequently, both also appeared on the Dutch TV Show "De Wereld Draait Door" (with approximately 1 million spectators).

Scientific Publications

  • Felienne Hermans (2013). Improving Spreadsheet Test Practices. In Center for Advanced Studies on Collaborative Research, CASCON. IBM / ACM. [ Bibtex ]
  • Hermans, Felienne (2009). Gathering domain knowledge from spreadsheets. In ESEC/FSE Doctoral Symposium '09: Proceedings of the doctoral symposium for ESEC/FSE on Doctoral symposium, pp. 37--38, Amsterdam, The Netherlands. ACM. [ Bibtex ]

Revision: r1.3 - 05 Dec 2012 - 11:34 - ArieVanDeursen
Main > ResearchProjects > PerplexLab
Copyright © 2003-2017, Software Engineering Research Group, Delft University of Technology, The Netherlands