Software requires constant evolution due to changing customer needs, bugs that have to be fixed or changes in the environment. This has been formulated in Lehman’s first law of software evolution, which states that a software system must be continuously adapted, or it becomes less and less useful. This constant change poses many challenges, for instance, on the reliability of the software as well as on the software developers that continuously have adapt. Both researchers and practitioners have recognized the importance to study and support software evolution and the humans involved in the process. In this seminar, we will cover some the most relevant studies, approaches and techniques that researchers have looked at in this context.
This course will be a combination of the traditional writing and presenting of a report on a chosen topic, as well as three sessions in the beginning of the term to discuss some research undertaken on each of the seminar topics. The three sessions will already cover research articles that can be used in the seminar report as well and should provide you a good start for writing the report. Short response papers for each of these sessions will also be required by each student to ensure the papers were read and stimulate an interesting discussion in class.
At the end of this course, students should be able to:
- find and identify relevant related work,
- reflect on a topic and discuss it,
- explain the selected subtopic and area of research,
- critically analyze and reflect on research articles (especially on the selected subtopic),
- review and summarize the current state of the art of the selected subtopic,
- reflect on the impact on the broader topic of the seminar and on software engineering in general,
- apply techniques and ideas found in the surveyed research to novel cases,
- reflect on possible future directions,
- provide constructive feedback on a research report
Update: After the delay caused by the issues with the submission system, the upcoming deadlines have been adjusted.
|Lecturers:||Dr. Fabio Palomba, Dr. Sebastian Proksch, Dr. Pasquale Salza|
|Time & Location||Mondays, 12:15pm to 1:45pm, Room BIN-0-K.11|
|AP (ECTS):||3 points|
|Target Audience:||BSc Informatics and MSc Informatics Students|
|Registration:||Registration for a topic at and after the kick-off meeting & Modulbuchung|
Please consult the Kick-Off Slides for more details about the organization of the course, like the course structure, the requirements on the response papers/reports, or the grading.
Schedule & Deadlines (Tentative)
|Date and Time||Topic / Deliverable|
|16.09., 12:15pm, BIN-0-K.11||Kick-off meeting (Slides)|
|20.09., 11:59pm||Send your topic preferences and your first response paper by email|
|23.09., 12:15pm, BIN-0-K.11||Mandatory class discussion (Topic 1)|
|30.09., 12:15pm, BIN-0-K.11||Mandatory class discussion (Topic 2)|
|7.10., 12:15pm, BIN-0-K.11||Mandatory class discussion (Topic 3)|
|14.10., 12:15pm, BIN-0-K.11||Latex Tutorial & Mandatory feedback meeting (Topic 3)|
|04.11., 11:59pm||Deadline for Report Submission (via EasyChair)|
|10.11., 11:59pm||Deadline for Paper "Bidding" (indicate which reports you would like to review)|
|11.11.||Paper assignments, Reviews start|
|17.11., 11:59pm||Reviews are due, Discussion Period Starts|
|20.11., 11:59pm||End of discussion period, Notifications for authors|
|29.11., 11:59pm||Final submission of reports (via email)|
|02.12., 12:15pm, BIN-0-K.11||Presentation Day (details to be announced)|
The extra papers are only listed to give you some context. Don't take one of these as the additional paper for the response papers.
Please note: To have access to the papers hosted by ACM or IEEE, you need to be in the university network, either pysically, through Wi-Fi, or via VPN.
Topic 1: Software Development Process (Cont. Integration, Cont. Delivery, DevOps)
- Elazhary et al. Do as I Do, Not as I Say: Do Contribution Guidelines Match the GitHub Contribution Process?, Preprint, 2019.
- Extra: Kalliamvakou et al. The promises and perils of mining GitHub, International Conference on Mining Software Repositories, 2009.
Topic 2: Source-Code Quality
- Palomba et al. Beyond Technical Aspects: How Do Community Smells Influence the Intensity of Code Smells?, Transactions on Software Engineering, 2018.
- Extra: Eck et al. Understanding Flaky Tests: The Developer’s Perspective, Symposium on Foundations of Software Engineering, 2019.
Topic 3: Artificial Intelligence for SE
- Salza et al. Speed Up Genetic Algorithms in the Cloud Using Software Containers, Future Generation Computer Systems, 2019.
- Extra: Tufano et al. Deep Learning Similarities from Different Representations of Source Code, International Conference on Mining Software Repositories, 2018.