Write a Blog >>
Mon 14 - Fri 18 November 2022 Singapore
Mon 14 Nov 2022 14:00 - 15:30 at SRC Auditorium 2 - Invited Tutorial - Andreas Zeller Chair(s): Lionel Briand

Much of our research requires building tools to evaluate and demonstrate new approaches. Yet, tool building can take large amounts of time and resources. And it brings risks: The original idea might not work; rendering all efforts futile. And after the student in charge has left, the tool becomes a maintenance problem.

In this tutorial, I present tools and techniques for the quick creation of prototypes for academic research. Building prototypes in and for Python is at least ten times faster than traditional engineering in and for C or Java; it thus frees lots of time for creating and refining approaches. Using Jupyter Notebooks to code and run experiments saves rationales, settings, examples, and results in self-contained documents that can be read and reused easily by other students and researchers. Once the basics of the new approach are settled (and only then!) can one go and port the new approach to “traditional” languages – or move on to the next challenge.

You don’t believe me? Watch me illustrate this approach by building a symbolic fuzzer (think KLEE) for Python from scratch, live coding the capturing and solving of path conditions in less than 20 minutes. From there, we will determine what it is that makes languages like Python and tools like Jupyter Notebooks so suitable for academic prototyping, and the consequences this has (or should have) for organizing our research.

Andreas Zeller is faculty at the CISPA Helmholtz Center for Information Security, and professor for Software Engineering at Saarland University, both in Saarbrücken, Germany. His research on automated debugging, mining software archives, specification mining, and security testing has been highly influential. Andreas is an ACM Fellow and holds an ACM SIGSOFT Outstanding Research Award.

You can find Andreas on Twitter as @AndreasZeller.

Mon 14 Nov

Displayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change

14:00 - 15:30
Invited Tutorial - Andreas ZellerPlenary Events at SRC Auditorium 2
Chair(s): Lionel Briand University of Luxembourg; University of Ottawa
Academic Prototyping
Plenary Events
Andreas Zeller CISPA Helmholtz Center for Information Security
DOI Pre-print