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
- Due to a room conflict, the lecture will take place in room BIN-1.D.29 from now on (Mar 6)
|Lecturers:||Dr. Fabio Palomba, Dr. Sebastian Proksch|
|Time & Location||Mondays, 12:15pm to 1:45pm, Room 2.A.10|
|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|
|18.02., 12:15pm, 1.D.29||Kick-off meeting (Slides)|
|21.02., 11:59pm, 1.D.29||Send your three topic preferences for the report by email|
|25.02., 12:15pm, 1.D.29||Mandatory class discussion (Topic 1 & 2)|
|04.03., 12:15pm, 1.D.29||Mandatory class discussion (Topic 3 & 4)|
|11.03., 12:15pm, 1.D.29||Mandatory class discussion|
|18.03., 12:15pm, 1.D.29||Mandatory feedback meeting|
|01.04., 12:15pm, 1.D.29||Optional feedback meeting|
|23.04., 11:59pm||Deadline for Report Submission (via EasyChair)|
|25.04., 11:59pm||Deadline for Paper "Bidding" (indicate which reports you would like to review)|
|26.04.||Paper assignments, Reviews start|
|02.05., 11:59pm||Reviews are due, Discussion Period Starts|
|04.05., 11:59pm||End of discussion period|
|16.05., 11:59pm||Final submission of reports (via email)|
|20.05., 12:00pm, 1.D.22||Presentation Day (slots 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: Source-Code Quality
- Spadini et al On The Relation of Test Smells to Software Code Quality, ICSME, 2018.
- Extra: Tufano et al. An empirical investigation into the nature of test smells, ASE, 2016.
Topic 2: Human-Aspects of SE
- Palomba et al. Beyond technical aspects: How do community smells influence the intensity of code smells?, TSE, 2018.
- Extra: Tamburri et al. Social debt in software engineering: insights from industry, JISA, 2015.
Topic 3: DevOps (Continuous Integration/Continuous Delivery)
- Hilton et al. Usage, costs, and benefits of continuous integration in open-source projects, ASE, 2016.
- Extra: Ståhl and Bosch. Modeling Continuous Integration Practice Differences in Industry Software Development, JSS, 2014.
Topic 4: Recommender Systems for SE
- Murphy-Hill and Murphy Recommendation Delivery: Getting the User Interface Just Right, Book Chapter, 2010.
- Extra: Ponzanelli et al. Supporting Software Developers with a Holistic Recommender System, ICSE, 2017.