Track Introduction by Wolfgang Ahrend and Klaus Havelund: AI Assisted Programming

Neural program synthesis, using large language models (LLMs) which are trained on open source code, are quickly becoming a popular addition to the software developer’s toolbox. Services like, for instance, ChatGPT and GitHub Copilot, and its integrations with popular IDEs, can generate code in many different programming languages from natural language requirements. This opens up for fascinating new perspectives, such as increased productivity and accessibility of programming also for non-experts. However, neural systems do not come with guarantees of producing correct, safe, or secure code. They produce the most probable output, based on the training data, and there are countless examples of coherent but erroneous results. Even alert users fall victim to automation bias: the well studied tendency of humans to be over-reliant on computer generated suggestions. The area of software development is no exception to this automation bias.

This track is devoted to discussions and exchange of ideas on questions like:

  • What are the capabilities of this technology when it comes to software development?
  • What are the limitations?
  • What are the challenges and research areas that need to be addressed? - How can we facilitate the rising power of code co-piloting while achieving a high level of correctness, safety, and security?
  • What does the future look like? How should these developments impact future approaches and technologies in software development and quality assurance?
  • What is the role of models, tests, specification, verification, and documentation in conjunction with code co-piloting?
  • Can quality assurance methods and technologies themselves profit from the new power of LLMs?

Topics of relevance to this track include the interplay of LLMs with the following areas:

  • Program synthesis
  • Formal specification and verification
  • Model driven development
  • Static analysis
  • Testing
  • Monitoring
  • Documentation
  • Requirements engineering
  • Code explanation
  • Library explanation
  • Coding tutorials

Program 🔗

Submission 🔗

Please submit your contributions via EquinOCS

Track Organizers 🔗

Wolfgang AhrendtChalmers University of Technology, SE
Klaus HavelundNASA Jet Propulsion Laboratory, US