Abbas Heydarnoori, Ph.D.

Abbas Heydarnoori is an Assistant Professor in the Department of Computer Engineering at Sharif University of Technology since 2012. Before joining the Sharif University of Technology, he worked as a software engineer at Xtreme Labs Inc. (acquired by Pivotal), Toronto, Canada in 2011. Before that, in 2010, he was a post-doctoral fellow in the Faculty of Informatics at the University of Lugano, Switzerland working with Prof. Walter Binder. He finished his PhD studies in 2009 under the supervision of Prof. Krzysztof Czarnecki in the School of Computer Science at the University of Waterloo, Canada. The details of his PhD research can be obtained from here. He also received his MSc and BSc degrees from Sharif University of Technology in 2001 and 1999 respectively.

Contact Information

  • Email: heydarnoori@sharif.edu
  • Phone: (+98)-21-66166648
  • Fax: (+98)-21-66019246
  • Address: Sharif Univ. of Tech., Dept of Comp. Eng., P.O. Box 11365-11155, Azadi Avenue, Tehran, Iran

Research Interests

  • Reverse Engineering and Reengineering of Software Systems
  • Mining Software Repositories
  • Recommendation Systems in Software Engineering
  • Application Frameworks
  • Software Engineering for Mobile Applications

Background

Major Awards and Honors

Publications

2016
E. Noei and A. Heydarnoori, "EXAF: A Search Engine for Sample Applications of Object-Oriented Framework-Provided Concepts", Journal of Information and Software Technology, Volume 75, pp. 135-147, July 2016.
 
A. Balalaie, A. Heydarnoori, and P. Jamshidi, "Microservices Architecture Enables DevOps: An Experience Report on Migration to a Cloud-Native Architecture", IEEE Software, Special Issue on Software Engineering for DevOps, Volume 33, No. 3, pp. 42-52, May 2016.
 
M. Tavakoli, A. Heydarnoori, and M. Ghafari, "Improving the Quality of Code Snippets in Stack Overflow", In proceedings of the Software Engineering track at the 31st Annual ACM Symposium on Applied Computing (SAC), Pisa, Italy, Apr. 2016.
 
B. Barati and A. Heydarnoori, "A Semi-Automated Feature Location Approach for Android Applications", In proceedings of the 21st International CSI Computer Conference (CSICC), Iran, Mar. 2016. (in Persian)
 
H. Tahmooresi, A. Heydarnoori, J. Habibi, R. Rasoli, and S. Arbabi, "Improving Bug Localization Using the History of Programmers", In proceedings of the 21st International CSI Computer Conference (CSICC), Iran, Mar. 2016. (in Persian)
 
2015
A. Balalaie, A. Heydarnoori, and P. Jamshidi, "Migrating to Cloud-Native Architectures Using Microservices", In proceedings of the 1st International Workshop on Cloud Adoption and Migration (CloudWay), Taormina, Italy, Sep. 2015.
 
V. Amintabar, A. Heydarnoori, and M. Ghafari, "ExceptionTracer: A Solution Recommender for Exceptions in an Integrated Development Environment", In proceedings of the 23rd IEEE International Conference on Program Comprehension (ICPC), Tool Demonstrations Track, Florence, Italy, May 2015.
 
H. Mirzaei and A. Heydarnoori, "Exception Fault Localization in Android Applications",  In proceedings of the 2nd ACM International Conference on Mobile Software Engineering and Systems (MobileSoft), Poster Session, Florence, Italy, May 2015.
 
M. Ghafari, A. Heydarnoori, and H. Haghighi, "A Safe Stopping Protocol to Enable Reliable Reconfiguration for Component-based Distributed Systems", In proceedings of the 6th IPM International Conference on Fundamentals of Software Engineering (FSEN), Tehran, Iran, April 2015.
 
2014
E. Habibi and A. Heydarnoori. "Studying and Characterizing Aspect-Oriented Programming Languages and Aspect Mining Techniques", CSI Journal on Computer Science and Engineering, Volume 12, No. 3, pp. 2-15, 2014. (in Persian)
 
A. Parvizi-Mosaed, S. Moaven, J. Habibi, and A. Heydarnoori, "Towards a Tactic-Based Evaluation of Self-Adaptive Software Architecture Availability", In proceedings of the 26th International Conference on Software Engineering and Knowledge Engineering (SEKE), Vancouver, Canada, July 2014.
 
M. Ghafari and A. Heydarnoori, "Towards a Visualized Code Recommendation for APIs Enriched with Specification Mining", In proceedings of the 4th International IEEE/ACM Workshop on Recommendation Systems for Software Engineering (RSSE@ICSE2014), Hyderabad, India, June 2014.
 
R. Boghrati, A. Heydarnoori, and M. Kazemitabaar, "Activities Performed by Programmers While Using Framework Examples as a Guide", In proceedings of the Software Engineering track at the 29th Annual ACM Symposium on Applied Computing (SAC), Gyeongju, Korea, Mar. 2014.
 
S. Gharravy, A. Heydarnoori, and J. Habibi, "Understanding an Object-Oriented Framework’s Evolution via Analyzing the Evolution of its Concepts across Different Versions of that Framework", In proceedings of the 19th International CSI Computer Conference (CSICC), Iran, Mar. 2014. (in Persian)

 

2013
M. Ghafari and A. Heydarnoori, "Partial Scalability to Ensure Reliable Dynamic Reconfiguration", In proceedings of the 3rd Awareness Workshop on Challenges for Achieving Self-Awareness in Autonomic Systems@SASO2013, Philadelphia, USA, Sep. 2013.
 
E. Farahani, A. Heydarnoori, and J. Habibi. "An Overview of the Methods and Opportunities for Creating Software Product Line via Reengineering Legacy Systems", CSI Journal on Computer Science and Engineering, Volume 11, No. 1, pp. 30-43, 2013. (in Persian)
 
E. Darmanki Farahani, A. Heydarnoori, and J. Habibi. "Analysis of Challenges and Opportunities of Reengineering Legacy Systems into Software Product Lines", In proceedings of the 5th International Conference on Information and Knowledge Technology, Shiraz, Iran, May 2013. (in Persian)
 
E. Darmanki Farahani, A. Heydarnoori, and J. Habibi. "A Survey of Different Techniques for Reengineering of Legacy Systems into Software Product Lines", In proceedings of the 5th International Conference on Information and Knowledge Technology, Shiraz, Iran, May 2013. (in Persian)
 
2012
A. Heydarnoori, K. Czarnecki, W. Binder, and T. Tonelli Bartolomei, "Two Studies of Framework-Usage Templates Extracted from Dynamic Traces", IEEE Transactions on Software Engineering, vol. 38, issue 6, 12/2012. [pdf]
Ansaloni, D., W. Binder, A. Heydarnoori, and L. Y. Chen, "Deferred Methods: Accelerating Dynamic Program Analysis on Multicores", International Symposium on Code Generation and Optimization (CGO) , San Jose, USA, ACM, 04/2012. [pdf]
2011
A. Heydarnoori, and W. Binder, "A Graph-based Approach for Deploying Component-based Applications into Channel-based Distributed Environments", Journal of Software, vol. 6, issue 8, 08/2011.
2010
Moret, P., W. Binder, A. Heydarnoori, and D. Ansaloni, "Effective Runtime Exploration of the Inter-Procedural Control Flow in Java Applications", 8th ACM SIGAPP/SIGPLAN International Conference on the Principles and Practice of Programming in Java, Vienna, Austria, ACM Press, 09/2010. [pdf]
Ansaloni, D., W. Binder, A. Heydarnoori, and L. Y. Chen, Exploiting Under-Utilized Cores with Deferred Methods, , no. USI-INF-TR-2010-7, Lugano, Switzerland, Faculty of Informatics, University of Lugano, 08/2010. [pdf]
Moret, P., W. Binder, A. Villazón, D. Ansaloni, and A. Heydarnoori, "Visualizing and Exploring Profiles with Calling Context Ring Charts", Software: Practice and Experience, vol. 40, issue 9, 08/2010. [pdf]
2009
A. Heydarnoori, K. Czarnecki, and T. Tonelli Bartolomei, "Supporting Framework Use via Automatically Extracted Concept-Implementation Templates", 23rd European Conference on Object-Oriented Programming (ECOOP), vol. 5653, Genova, Italy, Springer-Verlag, pp. 344-368, 07/2009. [pdf][pdf]
A. Heydarnoori, "Supporting Framework Use via Automatically Extracted Concept-Implementation Templates", School of Computer Science, PhD Thesis, Waterloo, University of Waterloo, pp. 178, 04/2009. [pdf]
2008
A. Heydarnoori, "Deploying Component–Based Applications: Tools and Techniques", Software Engineering Research, Management and Applications, vol. 253, Prague, Czech Republic, Springer-Verlag, pp. 29-42, 2008. [pdf]
2007
A. Heydarnoori, and K. Czarnecki, "Comprehending implementation recipes of framework-provided concepts through dynamic analysis", OOPSLA Companion, Poster Session, Montreal, Quebec, Canada, ACM Press, pp. 819–820, 10/2007.
A. Heydarnoori, and K. Czarnecki, "Mining Implementation Recipes of Framework-Provided Concepts in Dynamic Framework API Interaction Traces", OOPSLA Companion, Tool Demonstration Track, Montreal, Quebec, Canada, ACM Press, pp. 876-877, 10/2007.
2006
A. Heydarnoori, Feature Slicing: An Automated Approach for Locating Features in Source Code, , Waterloo, Canada, Department of Computer Science, University of Waterloo, 12/2006.
A. Heydarnoori, Caspian: A QoS-Aware Deployment Approach for Channel-based Component-based Applications, , no. CS-2006-39, Waterloo, School of Computer Science, University of Waterloo, 10/2006. [pdf]
A. Heydarnoori, F. Mavaddat, and F. Arbab, "Towards an Automated Deployment Planner for Composition of Web Services as Software Components", Electronic Notes in Theoretical Computer Science, vol. 160, pp. 239–253, 08/2006. [pdf]
A. Heydarnoori, and F. Mavaddat, "Reliable Deployment of Component-based Applications into Distributed Environments", Proceedings of the 3rd International Conference on Information Technology: New Generations, Washington, DC, USA, IEEE Computer Society, 04/2006. [pdf]
A. Heydarnoori, F. Mavaddat, and F. Arbab, "Deploying Loosely Coupled, Component-based Applications into Distributed Environments", Proceedings of the 13th Annual IEEE International Symposium and Workshop on Engineering of Computer Based Systems, Washington, DC, USA, IEEE Computer Society, 03/2006. [pdf]
2004
A. Heydarnoori, and F. Mavaddat, "On Software Components Characterization and Specification", 9th International CSI Computer Conference, Tehran, Iran, 02/2004.
Habibi, J., H. Younesy, and A. Heydarnoori, "Using the Opponent Pass Modeling Method to Improve Defending Ability of a (Robo)Soccer Simulation Team", RoboCup’2003 International Symposium, vol. 3020, Italy, Springer-Verlag, 2004.
2002
Jamzad, M., B. S. Sadjad, V. S. Mirrokni, M. Kazemi, H. Chitsaz, A. Heydarnoori, M. Hajiaghayi, and E. Chiniforooshan, "A Fast Vision System for Middle Size Robots in RoboCup", RoboCup 2001: Robot Soccer World Cup V, vol. 2377: Springer-Verlag, pp. 159-203, 2002.
Habibi, J., E. Chiniforooshan, A. Heydarnoori, M. Mirzazadeh, M. Safari, and H. Younesy, "Coaching a Soccer Simulation Team in RoboCup Environment", 1st EurAsian Conference on Advances in Information and Communication Technology, vol. 2510, Shiraz, Iran, Springer-Verlag, 10/2002.
Veloso, M. M., T. Balch, P. Stone, H. Kitano, F. Yamasaki, K. Endo, M. Asada, M. Jamzad, B. S. Sadjad, V. S. Mirrokni, et al., "RoboCup-2001- The Fifth Robotic Soccer World Championships", AI Magazine, vol. 23, issue 1, 2002.
2001
A. Heydarnoori, "Design and Implementation of an Intelligent System for Coaching a Team of Players in the RoboCup Soccer Simulation Environment", Department of Computer Engineering, Master's Thesis, Tehran, Iran, Sharif University of Technology, 07/2001.
Habibi, J., A. Heydarnoori, and H. Younesy, "Designing an Intelligent Online Coach for a Soccer Simulator Team", 7th International CSI Computer Conference, 02/2001.
Jamzad, M., A. Foroughnassiraei, M. Hajiaghayi, V. S. Mirrokni, R. Ghorbani, A. Heydarnoori, M. Kazemi, H. Chitsaz, F. Mobasser, M. Ebrahimi, et al., "A Goal Keeper for Middle Size Robocup", RoboCup 2000: Robot Soccer World Cup IV, vol. 2019: Springer-Verlag, pp. 583-586, 2001.
 
1999
A. Heydarnoori,, Design and Implementation of a Web-based Library Automation System, Bachelor's Thesis, Tehran, Iran, Sharif University of Technology, 07/1999.