| |
Software development results in a huge amount of data: changes are
recorded in version archives, bugs are reported to issue tracking
system, features are discussed in emails and newsgroups. This course
(Spezialvorlesung, 2V+2Ü, 6 LP) will cover methods and techniques
to mine this data. Additionally, it will feature guest lectures by
pioneers in the field of mining programs and their history.
Specifically, the course will present recent research on software
evolution, bug detection and prediction, guiding software development,
code reuse and search, as well as program analysis techniques such as
impact analysis and feature location. The course will also give an
introduction to empirical software engineering, showing how to conduct
quantitative and qualitative studies.
From this course, students will learn how to analyze programs and
their history and how to run empirical studies.
Lecturers
Guest Lecturers
Grades
- Here are the final grades.
- Remember exercises and project account for 20% each and the exam for 60%.
Reading List for the Exam
- All slides from the Lecture 1 to Lecture 9, including the slides from Rainer Koschke's guest lecture and the invited talks by Andrzej Wasykowski and Stephan Neuhaus.
- W. F. Tichy, "Should Computer Scientists Experiment More?", IEEE Computer, 31, pp. 32-40, May, 1998. [PDF]
- T. Zimmermann and P. Weissgerber, "Preprocessing CVS Data for Fine-grained Analysis," in Procs. of the 1st International Workshop on Mining Software Repositories, (Edinburgh, Scotland), 2004. [PDF]
- T. Zimmermann, P. Weissgerber, S. Diehl, and A. Zeller, "Mining Version Histories to Guide Software Changes," IEEE Transactions on Software Engineering, vol. 31, pp. 429-445, June 2005. [PDF]
- Martin P. Robillard, "Automatic generation of suggestions for program investigation." ESEC/FSE 2005. [PDF]
- R. Holmes and R. J. Walker, "Supporting the Investigation and Planning of Pragmatic Reuse Tasks", ICSE 2007. [PDF]
- Ben Liblit, Mayur Naik, Alice X. Zheng, Alexander Aiken, Michael I. Jordan: Scalable statistical bug isolation. PLDI 2005: 15-26 [PDF]
- Nachiappan Nagappan, Thomas Ball, Andreas Zeller: Mining metrics to predict component failures. ICSE 2006: 452-461 [PDF]
- Sunghun Kim, Thomas Zimmermann, E. James Whitehead Jr., Andreas Zeller: Predicting Faults from Cached History. ICSE 2007: 489-498 [PDF]
- No papers for the guest lectures.
Course Projects
The course projects will in teams of up to four students and focus on bug databases. The deliverables are a 15-min presentation on 19th July, as well as a project report (2-4 pages). Pick one of the following topics:
- Quality of bug reports
- Predicting lifetime of bug reports ** CANCELLED **
Related read:
Lucas D. Panjer: Predicting Eclipse Bug Lifetimes [Mining Challenge 2007]
- Detecting duplicates of bug reports
Related read:
Per Runeson, Magnus Alexandersson and Oskar Nyholm: Detection of Duplicate Defect Reports Using Natural Language Processing [ICSE 2007]
- Triaging bug reports
Related read:
John Anvik, Lyndon Hiew and Gail C. Murphy: Who Should Fix This Bug? [ICSE 2006]
- Visualizing bug reports (networks)
Related read:
Marco D'Ambros and Michele Lanza: Software Bugs and Evolution: A Visual Approach to Uncover Their Relationships [CSMR 2006]
- Predicting defects with spam filters ** CANCELLED **
Related read:
Osamu Mizuno, Shiro Ikami, Shuya Nakaichi, and Tohru Kikuno: Spam Filter Based Approach for Finding Fault-Prone Software Modules [MSR 2007]
Schedule All lectures will take place in Building E1 3,
Hörsaal 002 on Thursdays from 14:00 to 16:00. The schedule is tentative.
Exercises Exercises will be held in the Zeichensaal,
Mathematics Building every Tuesday from 14:00 to 16:00.
Literature
- Foundations of Software Measurement, by Martin Shepperd,
1st edition, 1995.
- Software Metrics: A Rigorous and Practical Approach, by
Norman E. Fenton and Shari L Pfleeger. 2nd edition, 1998
- Selected papers from software engineering as announced on
course website.
Please do not purchase the books since they are meant for
reference purposes only and are available in the library.
Exams
The final grade for this unit will be drawn as follows:
- 20% from Exercises (at least 50% points required to
pass)
- 20% from the Group Project (the project needs to be
completed and presented)
- 60% from the Exam (there will be only one final exam that
must be passed)
Calendar
You can subscribe to the lecture's calendar.
Communication Please subscribe to the mailing list below. All
important announcements will be posted here.
Impressum ● Datenschutzerklärung
<premraj@cs.uni-saarland.de> · http://www.st.cs.uni-saarland.de/edu/softmine2007/ · Stand: 2018-04-05 13:40
|
---|