Modeling
1. Reverse engineering class diagram from code (ICPC 2014 paper)
2.
Software Testing
1. Longer is Better: On the Role of Test Sequence Length in Software Testing (ICST’2010) http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5477052
Recommender Systems in SE
- Introduction to Recommender Systems course (University of Minnesota) on Coursera
- Recommender Systems
- Recommeder Systems for Software Engineering Robillard, M.P.; Walker, R.J.; Zimmermann, T., "Recommendation Systems for Software Engineering," Software, IEEE , vol.27, no.4, pp.80,86, July-Aug. 2010.
- Recommender Systems Part-1: Introduction to approaches and Algorithms, and Part-2: Introducing Open Source options to build recommendation systems from IBM DeveloperWorks.
- Evaluating Recommeder Systems - Microsoft Research
- Resources in Recommendation Systems for Software Engineering, a course offered by M Robillard at McGill University Canada.
- An Example: Which Crashes Should I Fix First?: Predicting Top Crashes at an Early Stage to Prioritize Debugging Efforts, Dongsun Kim; Xinming Wang; Sunghun Kim; Zeller, A; Cheung, S.C.; Sooyong Park, "Which Crashes Should I Fix First?: Predicting Top Crashes at an Early Stage to Prioritize Debugging Efforts," Software Engineering, IEEE Transactions on , vol.37, no.3, pp.430,447, May-June 2011
Mining Software Repositories
- Software intelligence: the future of mining software engineering data, Ahmed E. Hassan and Tao Xie. 2010. Software intelligence: the future of mining software engineering data. In Proceedings of the FSE/SDP workshop on Future of software engineering research (FoSER '10). ACM, New York, NY, USA, 161-166.
- Applications of Mining Software Repositories (Fall 2014), MCIS,
- The road ahead for Mining Software Repositories, Hassan, AE., "The road ahead for Mining Software Repositories," Frontiers of Software Maintenance, 2008. FoSM 2008. , vol., no., pp.48,57, Sept. 28 2008-Oct. 4 2008.
- CISC 880: Mining Software Engineering Data (Fall 2011)
- Researcher bias: The use of machine learning in software defect prediction [pdf]
Fault Diagnostics and Debugging
- The Probabilistic Program Dependence Graph and Its Application to Fault Diagnosis, Baah, G.K.; Podgurski, A; Harrold, M.J., "The Probabilistic Program Dependence Graph and Its Application to Fault Diagnosis," Software Engineering, IEEE Transactions on , vol.36, no.4, pp.528,545, July-Aug. 2010.
- DARWIN: An approach to debugging evolving programs, Dawei Qi, Abhik Roychoudhury, Zhenkai Liang, and Kapil Vaswani. 2012. DARWIN: An approach to debugging evolving programs. ACM Trans. Softw. Eng. Methodol. 21, 3, Article 19 (July 2012), 29 pages.
- Are automated debugging techniques actually helping programmers? Chris Parnin and Alessandro Orso. 2011. Are automated debugging techniques actually helping programmers?. In Proceedings of the 2011 International Symposium on Software Testing and Analysis (ISSTA '11). ACM, New York, NY, USA, 199-209.
- HOLMES: Effective statistical debugging via efficient path profiling, Chilimbi, T.M.; Liblit, B.; Mehra, K.; Nori, AV.; Vaswani, K., "HOLMES: Effective statistical debugging via efficient path profiling," Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on , vol., no., pp.34,44, 16-24 May 2009.
Testing of concurrent programs
- Reachability Testing of Concurrent Programs, Yu Lei and Richard H. Carver. 2006. Reachability Testing of Concurrent Programs. IEEE Trans. Softw. Eng. 32, 6 (June 2006), 382-403.
- Race directed random testing of concurrent programs, Koushik Sen. 2008. Race directed random testing of concurrent programs. In Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation (PLDI '08). ACM, New York, NY, USA, 11-21.
Gamification in Education
- Gamification in Education: Top 10 Gamification Case Studies that will Change our Future
- Gamifying learning experiences: Practical implications and outcomes
- Raising engagement in e-learning through gamification
- From game design elements to gamefulness: defining "gamification"
Reverse Engineering
1. Reverse Engineering in Object-Oriented Design
1a. Reverse engineering of design patterns from java source code
1b Toward the reverse engineering of UML sequence diagrams for distributed Java software
1c Using relational topic models to capture coupling among classes in object-oriented software systems [G]
1d New conceptual coupling and cohesion metrics for object-oriented systems
2, Achievements and challenges in software reverse engineering
3.Software systems as cities: A controlled experiment [ICSE-11] [pdf copy is here]
Traceability in Software Engineering
1. Requirements traceability for object oriented systems by partitioning source code [pdf copy is here]
2.
Formal Specifications
1. Specification and verification: the Spec# experience [pdf copy is here]
2.