Week 1 (Sep 11): Introduction and Course Overview

Admin details
Intro Lecture based on ICSE Tutorial by Ahmed E. Hassan and Tao Xie.
Assigned Reading:The Road Ahead for Mining Software Repositories by Ahmed E. Hassan slides

Week 2 (Sep 18): MSR Tutorial

Mining Software Repositories MSR Tutorial Continued.
Assigned Reading: Future of Mining Software Archives: A Roundtable

Week 3 (Sept 25): Predicting Bugs
Predicting fault incidence using software change history
Todd L. Graves, Alan F. Karr, J. S. Marron, and Harvey P. Siy
Analysis Techniques: Basic linear regression, GLM, R2, model error, exponential decay
Predictors of customer perceived software quality
Audris Mockus, Ping Zhang, and Paul Luo Li
Analysis Techniques: Classification, Logistic Regression (Building and Interpreting Co-efficients), R2, model error
How, and Why, Process Metrics are better
Foyzur Rahman and Premkumar Devanbu
Analysis Techniques: Cost-Effectiveness, Effect size, Wilcoxon test, t-test, multiple test corrections (e.g., Benjamini-Hochberg (BH) correction)
Predicting Bugs from History
Thomas Zimmermann, Nachiappan Nagappan, and Andreas Zeller (Evolution Book)
[READING]
Week 4 (Oct 2): Mining Social Structures and Code Reviews
Will My Patch Make it? and How Fast?: Case Study on the Linux Kernel.
Yujuan Jiang, Bram Adams, Daniel M. German
Analysis Techniques: Decision Tree
The Promises and Perils of Mining Github
Eirini Kalliamvakou, Georgios Gousios, Kelly Blincoe, Leif Singer, Daniel M. German, Daniela Damian
On the Role of Developer's Scattered Changes in Bug Prediction
Dario Di Nucci, Fabio Palomba, Sandro Siravo, Gabriele Bavota, Rocco Oliveto, and Andrea De Lucia
An Empirical Study of the Impact of Modern Code Review Practices on Software Quality
Shane McIntosh, Yasutaka Kamei, Bram Adams, and Ahmed E. Hassan
Analysis Techniques: Bootstrap validation
ASSIGNMENT
Understanding the Rationale for Updating a Function's Comment
Haroon Malik, Hsiao-Ming Tsou, Istehad Chowdhury, and Ahmed E. Hassan
ASSIGNMENT
[READING]
Does Distributed Development Affect Software Quality? An Empirical Case Study of Windows Vista
Christian Bird, Nachiappan Nagappan, Premkumar Devanbu, Harald Gall, and Brendan Murphy
[READING]
Week 5 (Oct 9): Thanksgiving (No Class)
Week 6 (Oct 16): Mining of Non-Structured Data
Assignment Status Update Presentation -- OCT 16 (10 mins presentation)
Software Engineering at the Speed of Light: How Developers Stay Current Using Twitter
Leif Singer, Fernando Figueira Filho, and Margaret-Anne Storey
Analysis Techniques: Grounded Theory, Axial coding
Semantic clustering: Identifying topics in source code
Adrian Kuhn, Stephane Ducasse, and Tudor Girba
Analysis Techniques: LDA, LSI
Listening to programmers Taxonomies and characteristics of comments in operating system code
Yoann Padioleau, Lin Tan, Yuanyuan Zhou
[READING]
Week 7 (Oct 23): Assignment Presentation
Assignment Presentation DUE -- OCT 23 (20 mins presentation)
Assignment Report DUE -- OCT 25 (10 page IEEE report)
Project Proposal DUE -- Oct 26 (2 pages IEEE format)
Week 8 (Oct 30): Project Proposal Presentations
Project Proposal Presentation (10 mins + 10 mins questions)
Week 9 (Nov 6): Mobile Apps and Cloud
Auto-Completing Bug Reports for Android Applications
Kevin Moran, Mario Linares-Vasquez, Carlos Bernal-Cardenas, and Denys Poshyvanyk
Sapienz: multi-objective automated testing for Android applications.
Ke Mao, Mark Harman, and Yue Jia
Understanding Diverse Usage Patterns from Large-Scale Appstore-Service Profiles
Xuanzhe Liu, Huoran Li, Xuan Lu, Tao Xie, Qiaozhu Mei, Feng Feng, and Hong Mei
vPerfGuard: an Automated Model-Driven Framework for Application Performance Diagnosis in Consolidated Cloud Environment
Pengcheng Xiong, Calton Pu, Xiaoyun Zhu, and Rean Griffith
Week 10 (Nov 13): Large Scale Analysis
Improving Software Diagnosability via Log Enhancement
Ding Yuan, Jing Zheng, Soyeon Park, Yuanyuan Zhou, and Stefan Savage
Simple Testing Can Prevent Most Critical Failures: An Analysis of Production Failures in Distributed Data-intensive Systems
Ding Yuan, Yu Luo, Xin Zhuang, Guilherme Renna Rodrigues, Xu Zhao, Yongle Zhang, Pranay U. Jain, Michael Stumm
Capturing, indexing, clustering, and retrieving system history
Ira Cohen, Steve Zhang, Moises Goldszmidt, Julie Symons, Terence Kelly, and Armando Fox
Week 11 (Nov 20): Project Presentations I
Project Presentation I DUE -- Nov 20 (20 mins presentation)
Week 12 (Nov 27): Project Presentations II
Project Presentation II DUE -- Nov 27 (20 mins presentation)
Project Report DUE -- DEC 22 (10 page IEEE report)