Seminar: Advanced Software Engineering HS20

NEWS

  • 2020-09-14: This course is a mixed mode, online or in-person class attendance is expected (and required for the discussions).
  • 2020-09-15: Kick-off slides can be found here (PDF, 13 MB).
  • 2020-09-17: All students have been notified about their assigned paper and the (tentative) date of their presentation. If you did not receive a mail, please contact Alexander Lill
  • 2020-10-21: Updated timings for presentations (as announced in email), added links to ACM template & EasyChair submission page, updated room for lectures to "online"
  • 2020-11-03: Made days without classes explicit

Overview

Software requires constant evolution due to changing customer needs, bugs that have to be fixed, or changes in the environment. Lehman’s first law of software evolution states that a software system must be continuously adapted, or it becomes less and less useful. The constant change poses many challenges, and both researchers and practitioners have recognized the importance of studying and supporting software evolution and the humans involved in the process. In this seminar, we will cover some of the most relevant studies, approaches, and techniques that researchers have looked at in this context.

In this seminar, the students will work on a specific research topic in software engineering. By the end of the course, they will be asked to deliver a research proposal. Furthermore, the students will take part in a simulated peer-reviewing process for the proposals. Finally, they will share as a presentation the results of their work and discuss them with the class.

For this seminar, you will be asked to read, analyze and discuss research papers, as well as work on and write a scientific report about a proposed topic in software engineering.

 

Prior Knowledge

content of software engineering, programming

 

Assessment

  • Presentation and moderation of a discussion topic;
  • Response papers for each reading assignment (that one does not moderate) and active participation in discussion sessions;
  • Written proposal, scientific report, and oral presentations and discussions for a topic in software engineering;
  • Feedback on reports written by others (peer review).

 

Learning Objectives

At the end of this course, students should:

  • Have gained a deeper and broader understanding and knowledge of Software Engineering research by reading, analyzing, reflecting and discussing current and classic literature;
  • Be able to identify and discuss research problems and research questions as well as identify relevant related work;
  • Be able to write a scientific report, and present and discuss ideas on an advanced topic in Software Engineering research;
  • Be able to provide constructive feedback on a research proposal

 

Organization

Lecturers Prof. Dr. Thomas FritzAlexander Lill
Time & Location Tuesdays, 10:15 - 11:45, Room BIN-2.A.10
Language English
AP (ECTS) 3 points
Target Audience BSc Informatics and MSc Informatics students
Prerequisites Software Engineering
Registration Registration at the kick-off meeting & Modulbuchung
Contact Please email Alexander Lill for any administrative matters
Tools ZOOM for lectures, OLAT and this course page for material and announcements

Organizational Matters

  1. At the beginning of the course students will be assigned a topic, paper (based on preferences) and a partner to work on this topic.
  2. For each lecture / discussion session,
    • The two teams assigned to the papers/topic will present their paper, another relevant related paper they found, and moderate a discussion about the two papers / topic (the asssigned one and the one they found). The assigned teams also have to make sure to have read the other paper of the topic.
    • All other students: identify one additional paper related and relevant with respect to the topic and the given two papers; write one response paper covering the two papers listed + the one found for the topic.
  3. Each team has to draft a research proposal in the area of their topic and present their draft. The draft should be a maximum of 3 pages (+ pages for references) and should have a motivation, related work section showing the relevance of the research idea/question, and a section on the research question and approach.
  4. Until the end of the course, every team then refines their research proposal, writing a more complete related work section, specifying in more detail how they would go about addressing/answering the research question they pose (study method / study design), and what the motivation is. The final research proposal should be a max. 6 pages (+ pages for references). 
  5. At the end of the course, the proposals are submitted and peer-reviewed by other students.
  6. At the last session the proposals are presented by the respective teams and the proposals will be peer evaluated by the reviewers.

 

 

Schedule and deadlines (tentative)

Date and time, Room Topic/deliverable Material
15.09.2020 10:15 - 11:45
BIN-2.A.10
Kick-off

Kick-off slides (PDF, 13 MB)

Slides: Understanding the Research World (PDF, 11 MB)

17.09.2020 10:00 Submission of 3 paper preferences and partner via Mail to Alexander Lill List of topics and papers, see below

Presentation of 2 topics by their teams, discussion moderated by respective teams, submission of response papers by everyone except the presenters until midnight before class via mail to Alexander Lill and Thomas Fritz

Sample response papers see here

22.09.2020 10:15 - 11:45
BIN-2.A.10
Topic 1: Productivity (see below)
29.09.2020 10:15 - 11:45
BIN-2.A.10
Topic 2: Sensing (see below)
06.10.2020 10:15 - 11:45
BIN-2.A.10
Topic 3: Bias & Inclusiveness (see below)
13.10.2020 10:15 - 11:45
BIN-2.A.10
Topic 4: Open Source Software (see below)

20.10.2020 10:15 - 11:45
online

Topic 5: End User Programming (see below)
Proposal and Report Phase
26.10.2020 23:59

Submission of draft proposals on EasyChair

The proposal should be max. 3 pages double column format plus max. 2 for references, ACM Format

Sample draft proposal see here
27.10.2020 10:15 - 11:45
online

Presentation of draft proposals (per team max. 5 minutes presentation + 2 minutes Q&A)

 
03.11.2020 No class  
10.11.2020 No class  
17.11.2020 No class  
24.11.2020 No class  
01.12.2020 10:15 - 11:45
online

Submission of final proposal on EasyChair

The proposal should be max. 6 pages double column format plus max. 2 for references, ACM Format

Sample proposals see here

08.12.2020 10:15 - 13:45
online
Presentation of the proposals (per team max. 7 minutes presentation + 3 minutes Q&A)  
15.12.2020 10:15 - 13:45
online
No class

 

Topics

Topic Papers
Productivity
  1. A Tale of Two Cities: Software Developers Working from Home During the COVID-19 Pandemic. Ford, Storey, Zimmermann, Bird, Jaffe, Maddila, Butler, Houck, Nagappan. https://arxiv.org/abs/2008.11147
  2. Software Developers’ Perceptions of Productivity. Meyer, Fritz, Murphy, Zimmermann. FSE'14. http://www.merlin.uzh.ch/publication/show/9943
Sensing
  1. Recognizing Developers' Emotions while Programming. Girardi, Novielli, Fucci, Lanubile. ICSE'20.  https://arxiv.org/abs/2001.09177
  2. Using (Bio)Metrics to Predict Code Quality Online. Müller, Fritz. ICSE'16. https://www.merlin.uzh.ch/contributionDocument/download/9186
Bias & Inclusiveness
  1. A Tale from the Trenches: Cognitive Biases and Software Development. Chattopadhyay, Nelson, Au, Morales, Sanchez, Pandita, & Sarma. ICSE'20 https://nomatic.dev/docs/icse20-chattopadhyay.pd

  2. Investigating the effects of gender bias on GitHub. Imtiaz, Middleton, Chakraborty, Robson, Bai, Murphy-Hill. ICSE'19 https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8812110

Open Source Software
  1. Cheating Death: A Statistical Survival Analysis of Publicly Available Python Projects. Ali, Parlett-Pelleriti, & Linstead. MSR'20 http://www1.chapman.edu/~linstead/aliMSR2020.pdf

  2. Gender, representation and online participation: A quantitative study of stackoverflow. Vasilescu, Capiluppi, Serebrenik. SocInfo'20 https://bura.brunel.ac.uk/bitstream/2438/7110/2/main-6pages.pdf

End User Programming
  1. Better Code, Better Sharing: On the Need of Analyzing Jupyter Notebooks. Wang, Li, Zeller. ICSE'20 https://arxiv.org/pdf/1906.05234.pdf

  2. Code smells in spreadsheet formulas revisited on an industrial dataset. Jansen, Hermans. ICSME'15 https://www.fast-standard.org/wp-content/uploads/2017/08/Jansen-B.-and-Hermans-F.-2015.-Code-Smells-in-Spreadsheet-Formulas-Revisited-on-an-Industrial-Dataset.pdf