AI for Software Engineering
Details
Location: Collegezaal C, Aula.
+++
Setup: two research talks (30 minutes each), and snacks & drinks afterwards, sponsored by Delft Data Science.
+++
The first speaker is Georgios Gousios. He is an assistant professor at TU Delft, where he researches data-driven and static analysis techniques to solve problems in large-scale software engineering. He is the main author of the GHTorrent platform that creates the world's largest dataset of software activity and collaboration data and the principal investigator of the FASTEN project that aims to make dependency management better by making package managers more intelligent. In 2019, he spent a sabbatical at Facebook (Menlo Park), where he applied many of the techniques he will be describing in his talk.
Title: NLP + SE = ❤️
Abstract: When PL researchers talk about program analysis, they usually mean heavy-weight, full program techniques that strive to be sound at the expense of being precise. This need not be so: recent works are using NLP models able to capture naming relations between program elements (e.g. function arguments and their uses) by analyzing large bodies of source code. Examples of applications include annotating Javascript code with types learned from partially type-annotated examples, finding bugs by examining "unnatural" variable names
and learning bug finders by training on artificially injected bugs. In our
talk, we will provide a high-level overview of the current state of the art of applying NLP techniques to solve software engineering problems.
+++
Assistant Prof. Annibale Panichella (TU Delft) will give the second talk on the topic of "Testing Autonomous Cars for Feature Interaction Failures using Evolutionary Intelligence".
Abstract: Complex systems such as autonomous cars are typically built as a composition of features that are independent units of functionality. Features tend to interact and impact one another’s behavior in unknown ways. A challenge is to detect and manage feature interactions, in particular, those that violate system requirements, hence leading to failures. In this talk, I will present a technique to detect feature interaction failures using evolutionary intelligence approaches.
I will present a set of hybrid test objectives (distance functions) that combine traditional coverage-based heuristics with new heuristics specifically aimed at revealing feature interaction failures. I will discuss the results of the proposed technique on two versions of an industrial self-driving system and compare it with state-of-the-art software testing techniques. Besides, I will also present feedback from domain experts and showing some of the feature interaction failures found with evolutionary intelligence techniques.
