Fall Days on Scalable and Versatile Software Analytics: ML and NLP to the Fore

Beach Resort Ooghduyne, Julianadorp aan Zee (see e.g. Google maps)
October 3 – 7, 2022

The IPA Fall Days are an annual multi-day event, dedicated to a specific theme of current interest to the research community of IPA. This year’s Fall Days are titled Scalable and Versatile Software Analytics: ML and NLP to the Fore.

The programme of the Fall Days has been composed with the help of Michel Chaudron (TU/e), Annibale Panichella (TUD), Ayushi Rastogi (UG), and the IPA PhD council.

Programme

The Fall Days start with registration and lunch on Monday 3 October, and conclude before lunch on Friday 7 October. Most of the sessions are devoted to various themes and topics around Scalable and Versatile Software Analytics including Machine Learning and Natural Language Processing.

On Monday 3 October, we will have a special session around the winner of the IPA Dissertation Award for the best IPA dissertation from 2021.

Monday October 3rd

11:00–12:00 Registration
12:15–13:15 Lunch
13:30–13:40 Opening
13:40–14:40 Alexander Bentkamp, winner of the IPA Dissertation Award for the best IPA dissertation from 2021
Superposition for Higher-Order Logic
Since the 1960s, some researchers have dreamed of computer programs that would find proofs of mathematical conjectures that no human was able to prove before. Despite some successes, today’s automatic theorem provers are still far from achieving this vision. My PhD thesis brings us a step closer, admittedly a tiny one. In my talk, I will give an introduction to the automated theorem proving techniques resolution and superposition. These techniques express theorems and proofs in first-order logic. I will present my PhD project, in which I extended these techniques to operate on the more versatile higher-order logic, which allows us to express mathematics more directly and elegantly.
14:40–15:25 Jasmin Blanchette (VU), supervisor of Alexander Bentkamp
Interactive is Good, Automatic is Better
Interactive proof assistants such as Coq and Isabelle are tools that help developing precise, formally verified mathematical proofs. They build on expressive higher-order logics that support functions as first-class objects, notations for summations, integrals, and set comprehensions as well as lambda-expressions and the big O notation.
Proof assistants are not yet widely used in computer science and mathematics, largely because they have a reputation for being tedious. To change this, (1) I developed connected first-order automatic provers to Isabelle, and (2) I developed a counterexample generator. This greatly increased the level of automation of Isabelle, making formal proof more cost-effective.
15:25–15:55 Coffee break
15:55–16:40 Mairieli Wessel (RU)
Development workflow automation on social coding platforms
Workflow automation takes over manual, repetitive tasks and reduces redundancies and errors, allowing development teams to devote more of their working hours to solving critical challenges. Solutions to automate (part of) the software development workflow, such as CI/CD tools and services, have been successfully used by developers. However, these tools do not support the entire range of project-related activities for which automation could come to the rescue (e.g., welcoming newcomers, keeping dependencies up-to-date, detecting and resolving security vulnerabilities, and assigning code reviewers). To help developers in carrying out these activities, CI/CD solutions have been complemented by novel workflow automation solutions in recent years. This talk will explore development bots and GitHub Actions in the context of software development repositories hosted on GitHub. It provides an extensive survey of the state-of-the-art in this research domain, discusses the opportunities and threats that these solutions entail, and reports on the challenges and future perspectives for researchers as well as software practitioners.
17:00–18:00 Drinks
18:15 Dinner
Afterwards Opportunity to interact, play board & card games etc. in restaurant bar or villa’s

Tuesday October 4th

9:00–9:45 Daniel Feitosa (RUG)
Designing your analysis for open science
9:45–10:45 PhD candidate intro talks
10:45–11:15 Coffee break
11:15–12:00 Fabiano Dalpiaz (UU)
Intelligent Tools for Conversational Requirements Engineering
Natural language processing and machine/deep learning have been widely used by requirements engineering (RE) researchers for the automated analysis of written artefacts, especially requirements specifications, which play a pivotal role in RE processes. Many RE activities, however, are rooted in synchronous conversations rather than written documents: elicitation interviews and workshops, refinement meetings, and validation sessions, to name a few. Limited research exists that applies AI techniques to conversations. Most likely, this has to do with the fact that researchers can more easily gain access to specification documents than to recorded and transcribed conversations. The availability of digital communication tools that allow for automated recording and transcription (e.g., Teams and Zoom), together with the increasing use of these tools in RE activities, offer an opportunity for RE researchers to automatically analyze requirements conversations. This is especially interesting in agile development settings, where minimal documentation is preferred to comprehensive documentation. In this talk, I will present use cases for the analysis of RE conversations, explore the unique challenges of this setting, and discuss ongoing research concerning the identification of requirements-relevant information in RE conversations.
12:15–13:15 Lunch
13:45–14:30 Georgios Gousios (Endor)
14:30–15:15 Guus Ramackers (UL)
Using NLP to synthesise UML models as a basis for prototype generation
15:15–15:45 Coffee break
15:45–17:00 PhD candidate intro talks
18:15 Dinner

Wednesday October 5th

9:00–12:00
with coffee break
Marijn Schraagen (UU)
Tutorial on NLP 
12:15–13:15 Lunch
13:45–14:30 Stef van den Elzen (TU/e)
Visual Analytics for Explainable AI

In this talk I’ll provide an overview of current AI trends. One trend is that AI systems will become more and more learning based. Training of the AI systems will happen more and more without any human involvement. Deployed models will continuously learn and update autonomously. In this talk I argue why this is probably not a good idea and why we need deep integration of the human

in AI methods. How can we achieve symbiosis, where both the AI and human benefit?

14:30–15:30 PhD candidate intro talks
15:30–16:00 Coffee break
16:00–16:45 Lina Ochoa Venegas (TU/e)
Supporting Evidence-backed Decisions About Library Evolution
“Shall I refactor my code to improve its design? How is this change going to affect my clients? Maybe it would be best to postpone it.” It is difficult for library maintainers to answer these questions when evolving their libraries. Library maintainers are always facing the dilemma of whether introduce changes at the risk of breaking some of their clients or avoid them at the cost of immobility and growing technical debt. We claim that the lack of evidence and tool support leaves maintainers with an arbitrary perception of how evolution can impact their community. This talk shows an overview of how static analysis tools and mining software repository techniques are combined to extract actionable insights to support software evolution.
16:45–17:00 Slot for PhD council and organizer announcements
18:15 Dinner
19:30–23:00 Social event organized by PhD council

Thursday October 6th

9:00–9:45 Sangeeth Kochanthara (TU/e)
Analysing the Changing Landscape of Automotive Software: Safety and Open-Source
Automotive is a 3 trillion dollar software-intensive safety-critical industry. The ongoing paradigm shift from electro-mechanical systems to software-intensive systems and the move toward automated and connected driving set the automotive industry apart from other safety-critical industries. The talk will explore the different dimensions of the safety of automotive software and its development in open source.
9:45–10:30 Andrea Capiluppi (RUG)
Discovering Antipatterns in Software Classification Taxonomies using NLP
10:30–11:00 Coffee break
11:00–12:15 Peter Dieleman (Rijkswaterstaat)
The need for verification of the correctness of the designs of tunnel control systems
Kevin Jilissen (TU/e)
Verification of the control systems of the ventilation of traffic tubes and the overpressure of emergency exits
12:15–13:15 Lunch
13:45–14:30 Jacob Krüger (TU/e)
Platform Engineering with Machine-Learning Components
Software platforms are used in most organizations that develop a system in multiple variants, customized for individual customers or requirements. While more challenging to initiate and test than an individual system, a platform promises many benefits when it comes to reusing software, configuring a system, managing components, and enabling continuous software engineering. When developing machine-learning components, practices of platform engineering are not only helpful when reusing the components, but also when developing or extending individual ones, for instance, to trace, configure, and model adaptations during machine-learning experiments (e.g., enabling or disabling the use of individual model features on demand). In this talk, we will provide an overview of the core concepts of platform engineering that enable developers to reuse and manage their software. We combine this perspective with a view on the development of machine-learning components to understand how platform-engineering practices can helpful develop such components.
14:30–17:00 Excursion, PhD skills supply & demand matching, further interaction
18:15 Dinner

Friday October 7th

9:00–9:45 Vladimir Kovalenko (JetBrains)
Towards Intelligent Collaboration Tools: Promises and Challenges
In modern teams, software engineers and their less technical colleagues spend about half of their time communicating with each other or working collaboratively. 

While collaborative work in software engineering is supported by dedicated tools (issue trackers, code review tools, CI servers, messengers…), most of these tools are not much smarter than Internet forum engines from the 2000’s. 

In contrast, individual developer tools — IDEs — offer an impressive set of functionality, mostly rooted in deep and detailed analysis of source code.

Our mission at the Intelligent Collaboration Tools Lab at JetBrains is to make the collaboration tools of tomorrow smarter and more helpful.
In this talk, I will present a few prominent endeavours, of our own and others, towards this goal. I will also discuss some of the underlying fundamental challenges.
9:45–10:30 Ana Oprescu (UvA)
A tale of two adventures: Leveraging ML to name and test software
Two heroes of the Software Engineering guild set out to conquer the land of Machine Learning. In one story, we learn of the woes (and joys) of forcing ML to generate unit tests. In the other, we seek an answer to the ere long question “What’s in a name?”. Finally, this author ponders what superpowers could have helped the heroes become kings of the ML-lands.
10:30-11:00 Closing and coffee and tea
Social Events

On Monday, drinks will be on IPA between the last session and dinner.
On Wednesday evening, an edition of the by now famous IPA social events will once again be organised by the IPA PhD council.

Registration

Registration is now closed.

Beware that if you register, but then do not participate for the period as indicated in your registration, while failing to either provide reasonable ground for this (e.g. illness, family emergency) or to cancel well in advance (by registration closure latest), IPA will have to bill you for the costs incurred.

To make maximal use of the available capacity, we process applications on the following basis: Registrations are treated “first come, first served”. In principle, all PhD students (IPA and non-IPA) will share a room. Others may also be asked to share if we run out of rooms. As long as space is available and the registration deadline has not yet passed, we will accept participants.

New PhD students

PhD students new to IPA Fall Days are expected to give a brief talk in a slot of ca. 10–12 minutes. The purpose of such talks is to introduce your research and yourself to the IPA community. You can briefly introduce your research (research area, initial and future research directions), but also yourself (who you are, what your background is, but also e.g. you like or don’t like to do in your spare time). The Fall Days provide a friendly, open, and informal atmosphere to do this, and you will surely be welcomed into the IPA community and receive constructive feedback or get into follow-up discussions.

Travel

The venue can be reached by pubic transport as follows: Travel to train station Den Helder Zuid (not Den Helder main station). From there, you take bus line 30 or 32 to Julianadorp and get off at the Middelzand stop (7 minute ride). Continue on foot (following the bicycle path) for approximately 10 minutes / 850m.

Please use e.g. Google Maps or 9292ov.nl to plan your travel.