AI-Assisted Software Engineering
AI Roundtable in Cooperation with INFORTE PhD Seminar on
AI-Assisted Software Engineering
Objectives
The objective of the seminar is to provide an in-depth understanding of AI-assisted software engineering and its potential applications and benefits. This includes language models like GPT and software engineering development tools such as Github’s Copilot. Through the seminar, attendees should gain a thorough understanding of the key concepts and techniques in AI-assisted software engineering, as well as an overview of the current state-of-the-art and recent advances in the field. The hands-on lab sessions should provide attendees with practical experience using AI for various tasks such as software testing and debugging or code generation and optimization. Additionally, the seminar should foster discussions about the ethical and societal implications of AI in software engineering and provide attendees with insights into industry applications and research frontiers. Ultimately, the objective of the seminar is to equip attendees with the knowledge and skills to leverage AI to enhance their software engineering and data analytics practices and stay up-to-date with the latest developments in the field.
Registration
Registration open until May 7th, 2023.
Speakers
Responsible for the seminar are:
Professor Pekka Abrahamsson, Tampere University
Professor Tarmo Lipping, Tampere University
Invited speakers, experts, and practitioners to present the newest findings and results will include:
Professor Niklas Lavesson, Blekinge Institute of Technology, Sweden
Associate professor Dominik Siemon, LUT University
Postdoctoral researcher Waseem Muhammad, University of Jyväskylä
Senior Data Scientist Petteri Ranta, Tietoevry
Agenda (preliminary)
Day 1
09-12 Morning Session
Lecture 1: Introduction to AI-assisted software engineering
- Key concepts and techniques in AI-assisted software engineering
- Overview of recent advances and current state-of-the-art in the field
- How AI can be used to improve software design, development, and testing
- Potential other applications and benefits of AI in software engineering
Lecture 2: Introduction to Transformer networks
- Transformer networks Basics
- Overview of the architecture and components of Transformer networks
- Applications of Transformer networks in natural language processing and other fields
- Comparison of Transformer networks to other types of neural networks
- History of the development of Transformer networks
- Overview of the research and papers that led to the development of Transformer networks
- Discussion of key innovations and breakthroughs in the field
- Comparison of early versions of Transformer networks to BERT and GPT-4
12-13 Lunch (at own cost)
13-15.30 Hands-on session
Track 1: Hands-on Session (using AI for technical software engineering – part I)
- Hands-on lab session: using AI for technical software engineering including testing and debugging
- Overview of existing tools and frameworks for AI-assisted software suitable for the task
- Implementation and experimentation with selected tools and frameworks
- Discussion and review of lab results
Track 2: Hands-on Session (using AI for software engineering management)
- Hands-on lab session: using AI for software engineering management including project management, estimation, people management, software engineering processes
- Overview of existing tools and frameworks for AI-assisted software suitable for the task
- Implementation and experimentation with selected tools and frameworks
- Discussion and review of lab results
Track 3: Fine-tuning a transformer model based on a text corpus
- Getting an overview on the implementations of transformer networks
- Overview of available pretrained networks
- Selecting the task and corpus for fine-tuning a transformer
- Performing the fine-tuning and analyzing the results
- Discussion and review
15.30-17 Late-Afternoon Session (Q&A, panel), coffee break included
- Guest speaker talk: industry applications of AI in software engineering
- Discussion and Q&A session with the guest speaker
19-22 Joint seminar dinner
Day 2
09-12 Morning session
3 Parallel tracks
Track 1: Hands-on-lab session: using AI for technical software engineering – part II
- Hands-on lab session: using AI for code generation and optimization
- Overview of existing tools and frameworks for AI-assisted code generation and optimization
- Implementation and experimentation with selected tools and frameworks
- Discussion and review of lab results
Track 2: Morning Session II (using ChatGPT for software engineering research)
- Includes hands-on lab exercises
- Topics include items such as writing research papers, reviewing papers, summarizing key points, generating ideas and language checking among others.
- Overview of other tools than ChatGPT for AI-assisted software engineering research
- Implementation and experimentation
- Discussion and review of lab results
Track 3: Developing custom transformer architecture
- Overview of BERT model and its architecture
- How to implement transformer architecture in PyTorch
- Hands-on session: using the data produced on day 1, designing custom transformer model
- Discussion and review
12-13 Lunch (at own cost)
13-15 Workshop and panel discussion: ethical and societal implications of AI in software engineering and in software engineering research
- Panelists from academia and industry discuss the ethical and societal implications of AI-assisted software engineering
- Audience Q&A session with panelists
15-16 Final Session
- Guest speaker talk: research frontiers in AI-assisted software engineering
- Discussion and Q&A session with the guest speaker
16-16:30 Closing of the seminar
Location
The seminar is held physically. There is no online participation opportunity.
Pori University Campus
Pohjoisranta 11, 28100 Pori
Finland
Saapumisohje Porin yliopistokeskukselle
Contact info
Professor Pekka Abrahamsson, Tampere University
pekka.abrahamsson@tuni.fi