Seminar in Advanced Software Engineering, HS 11
Theme: Software Evolution and Quality
The only constant in software is that it changes: Software must be continuously tailored to fit new or updated requirements. This has been formulated in Lehman’s first law of software evolution, which states that a software system must be continuously adapted, or become less and less useful. Software evolution is a multifaceted issue and the ability to understand it and rapidly and reliably control it is a major software engineering challenge. Over the years, both researchers and practitioners have recognized the need to study and understand its several aspects. This seminar will cover some the most relevant approaches and techniques.
Organization
Lecturer: | Prof. Dr. Thomas Fritz, Prof. Dr. Harald Gall |
Assistant: | Giacomo Ghezzi |
Time and Place: | Kick off meeting: 21 February 2012, 9:00, Room 1.D.07 |
Language: | English |
AP (ECTS): | 3 points |
Target Audience: | BSc Informatics and MSc Informatics Students |
Prerequisites: | Software Engineering |
Registration: | Registration for a topic after kick-off meeting & Modulbuchung |
Schedule & Deadlines
Deadline | Date |
---|---|
Kick-off meeting | 21 February 2012, 9:00, Room 1.D.07, |
E-mail with 3 preferences | 4 March 2012 (at the latest by midnight) |
Topics assignment | 5 March 2012 |
Report submission | 6 April 2012 (at the latest by midnight) |
Reviews start | 7 April 2012 |
Reviews end | 16 April 2012 |
Notification | 17 April 2012 |
Corrected report submission | 27 April 2012 (at the latest by midnight) |
Presentation Day | 15 May 2012, room TBA |
Topics
The following list shows all the available topics. Please pick three preferences and send them on email (including your full name and ID/Matrikel-Nr.) to Giacomo Ghezzi by March 4th (at the latest by midnight). Based on those preferences, we will then take care of assigning the topics which will then be announced on this web page.
- Supporting Crosscutting Concerns
Selected papers: - Code Recommendation
Selected papers: - Tool Support for Tasks/Bugs
Selected papers: - Software Quality Tools
Selected papers: - Refactoring
Selected papers: - Software Architecture
Selected papers: - APIs
Selected papers:
Rules
For the final grade we will take into account a written report, a presentation of the report, the reviewing of the other participants' work and the active participation in the lectures
Written Report
The written report represents the first task of the seminar. It has to be 12-15 pages long (not counting the cover sheet and the table of contents) and in the Lecture Notes in Computer Science format. Both the MS Word ("word.zip") and LaTeX format ("llncs2e.zip") are available here for downloading, even though we strongly suggest anyone to use the LaTeX format. Eventually the report will have to be delivered as PDF.
Please pay attention to the tips in the format template, in particular:
- the correct structure of a scientific research article,
- the right use of figures and tables,
- the correct citation of other works.
Below you can find two very good seminar reports of the past year that you can use as blueprints while writing your report.
For any other question or doubt please contact the Teaching Assistant.
Literature Search
Each student should investigate and cite at least 7-10 articles in his/her own work.
The ACM Digital Library, IEEE Digital Library, Citeseer and GoogleScholar are very good online catalogues for technical literature search. Both the ACM and the IEEE publications can be downloaded for free from within the Uni Zürich domain.
Another good starting point are the proceedings of major conferences, such as:
- International Conference in Software Engineering (ICSE)
- Symposium on the Foundations of Software Engineering (FSE)
- International Conference on Automated Software Engineering (ASE)
- Working Conference on Mining Software Repositories (MSR)
- International Conference on Program Comprehension (ICPC)
- International Conference on Software Maintenance (ICSM)
Review
The report of each student goes through a first review phase, done by the teaching assistant and 2-3 other students. The goal of this first reviews is to give some useful feedback on the report, which should then be improved and modified accordingly.
The reviews take the following criteria into account:
- Technical quality (critical analysis of the topic)
- Logical structure (the structuring of the work)
- Presentation (the use of graphics and tables)
- Style (orthography and typos)
- References (significant selection of relevant literature)
Each category is graded on an A to D scale:
- A: An excellent work.
- B: A good work with just a couple of small weaknesses.
- C: An average work with clear weaknesses.
- D: Insufficient work with many substantial weaknesses.
Every participant has to review two other participants' reports. The whole reviewing process (the reports and their subsequent reviews submission) will be done through the EasyChair online platform. An email with all the necessary instructions will be sent after the seminar kick-off.
Delivery
The delivery website (Easy Chair) can be found here.
On that, you have to create a new user account and then you can easily upload your report with the appropriate menu option.
Presentation Day
All the participants will present their work on a special presentation day (TBA).
Every presentation consists of a 20 minutes talk followed by a 10 minutes discussion.
All the participants need to have the presentation in electronic format (MS Powerpoint, Apple Keynote or slides in PDF/PS). We provide both a beamer and a laptop to be used (in case you don't want to use your own laptop).
Attendance to all the presentations is mandatory. Exceptions are made only if a proper, official excuse (e.g. doctor's excuse note) is given.
Presentation Guidelines
- Make sure that your talk includes enough background material and motivation so that it can be understood by those who are not specialists in what is being presented.
- Design your slides using large text and diagrams such that they can be read by anyone in the room. The person far away in the corner may be the one with central insights to your work, so make sure he/she gets the message, too.
- Do not place text on the slides that you will speak aloud anyway. The audience will read the text faster than you speak, and continuously experience lags. Slides and spoken word should support each other, and not be redundant representations of each other.
- Modern presentation programs can switch the laptop screen in presenter mode, showing the upcoming slides or presenter notes. Make use of these tools to ensure fluid transitions between slides and a smooth information flow.
- Spend at least one slide to clearly motivate your work, explicitly stating the problem you are addressing.
- Spend at least one slide on related work, such that the audience can place your work in a greater context.
- Do not end with a slide saying nothing but "Thank you!" or "Questions?" Instead, on the last slide, summarize your talk (problem, approach, results). Have this slide stay on the screen during the discussion; people will be able to recall your talk and provide insightful questions and comments.
- Presentations are allotted 20 minutes: 15 minutes for talk, 5 minutes for questions & answers. These limits will be strictly enforced.