He received his Ph.D. degree in computer science from Vanderbilt University in 2004. He received his M.S. degree from Institute of Metal Research, Chinese Academy of Science and his BS degree in physics from Jilin University. Before joining Indiana University South Bend, he was a visiting assistant professor at Tennessee Tech University. His research areas include software coupling, software maintenance and software evolution, empirical software engineering, open-source development, and software engineering education. He is also interested in social network analysis, knowledge management, and complex systems.