Pictured at 10/2016 Haipeng Cai
Assistant Professor
School of Electrical Engineering and Computer Science (EECS)
Washington State University, Pullman, WA
EME B47 | hcai dot eecs dot wsu dot edu
LinkedIn Profile      Personal Blog      SourceForge Profile
Github Profile      Recent projects on Bitbucket

  • For Prospective Students: I am looking for self-motivated and qualified PhD students who are interested in software engineering research, with particular focus on program analysis and its applications for the reliability and security of evolving software systems. Please email me with your CV if interested.

    Research Interests 
    Software engineering, program analysis, software security and reliability, software evolution, software analytics.

    Teaching
    CptS581 Software Quality: Fall 2017
    CptS322 Software Engineering Principles I: Fall 2016, Spring 2017

    Research Projects
    EvoSEC: Incremental Security Defense for Evolving Mobile Software Applications
    DistSEC: Multivariate Dependence Abstraction for Securing Distributed Systems
    DistPerf: Distributed Systems Performance Diagnosis with Dynamic Program Approximation
    DroidCat: Unified Android Malware Detection
    DroidFax: Dynamic Study of Android Application Programming Paradigms and their Security Implications

    Selected Publications (Full List)
    Hybrid Program Dependence Approximation for Effective Dynamic Impact Prediction. Haipeng Cai. IEEE Transactions on Software Engineering (TSE), 2017. [pdf, project]
     
    Method-Level Program Dependence Abstraction and Its Application to Impact Analysis. Haipeng Cai and Raul Santelices. Journal of Systems and Software (JSS), volume 122, pp. 311-326, December 2016. [pdf, project]
     
    DistIA: A Cost-Effective Dynamic Impact Analysis for Distributed Programs. Haipeng Cai and Douglas Thain. 31st IEEE/ACM International Conference on Automated Software Engineering (ASE '16), pp. 344-355, September 2016. [pdf, technical report, slides, project, acceptance rate=19.1%]
     
    DIAPRO: Unifying Dynamic Impact Analyses for Improved and Variable Cost-Effectiveness. Haipeng Cai, Raul Santelices, and Douglas Thain. ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 25, Issue 2, Article No. 18, 2016. [pdf, project]
     
    Prioritizing Change-Impact Analysis via Semantic Program-Dependence Quantification. Haipeng Cai, Raul Santelices, and Siyuan Jiang. IEEE Transactions on Reliability (TRE), Volume 65, Issue 3, 2016. [pdf, project]
     
    A Comprehensive Study of the Predictive Accuracy of Dynamic Change-Impact Analysis. Haipeng Cai and Raul Santelices. Journal of Systems and Software (JSS), volume 103, pp. 248-265, February 2015. [pdf, project]

    Patents
    Haipeng Cai, Zhigeng Pan, and Jianping Han. Partition video monitoring method based on multipath network video stream parallel processing. Classification: G08B 13/196; G06T 7/20; H04N 7/18, Application No.: CN 200810063001.5, Publication No.: CN 101320505 B. State Intellectual Property Office of China, Sept. 2010.

    Professional Activities
    Conference committee/journal reviewer:
  • Journal of Computer Virology and Hacking Techniques (JICV), 2016, 2017
  • Frontiers of Information Technology & Electronic Engineering, 2017
  • Journal of Systems and Software (JSS), 2016, 2017
  • IEEE Transactions on Information Forensics and Security (TIFS), 2017
  • IEEE Transactions on Dependable and Secure Computing (TDSC), 2016
  • Empirical Software Engineering (EMSE), 2016, 2017
  • IEEE Transactions on Reliability (TRE), 2016
  • International Conference on Software Maintenance and Evolution (ICSME) - Tool Track, 2017
  • International Conference on Software Engineering and Applications (SEA), 2017
  • International Workshop on Program Debugging (IWPD), 2015, 2016, 2017
  • International Conference on Software Engineering Advances (ICSEA), 2015, 2016, 2017
  • International Conference on Virtual Reality and Visualization (ICVRV), 2016
  • International Conference on Fundamentals and Advances in Software Systems Integration (FASSI), 2015, 2016
  • Conference/journal subreviewer:
  • Computers & Security (CS), 2015
  • The Computer Journal (COMPJ), 2014
  • Software Quality Journal (SQJ), 2014
  • IEEE Transactions on Reliability (TRE), 2014
  • Science of Computer Programming (SCP), 2014
  • Journal of Object Technology (JOT), 2013
  • Software Testing, Verification and Reliability (STVR), 2013
  • Journal of Systems and Software (JSS), 2012
  • ACM Conference on Security and Privacy in Wireless and Mobile Networks (WiSec), 2017
  • ACM Conference on Computer and Communications Security (CCS), 2016
  • Annual Computer Security Applications Conference (ACSAC), 2016
  • IEEE Conference on Communications and Network Security (CNS), 2016
  • ACM Symposium on Information, Computer and Communications Security (AsiaCCS), 2016
  • ACM Conference on Data and Applications Security (CODASPY), 2016
  • International Conference on Software Maintenance and Evolution (ICSME) - Tool Track, 2015
  • International Computers, Software & Applications Conference (COMPSAC), 2014
  • International Workshop on Program Debugging (IWPD), 2012

  • Released Software (Code repository)
    DistIA: A simple impact analyzer for distributed systems
    DiaPro: A dynamic impact analysis framework with customizable cost-effectiveness
    Diver: Hybrid program dependence approximation and trace-based online impact prediction
    MDG: A method-level static dependence abstraction
    TracerJD: A fine-grained Java program tracer and dynamic dependence analyzer
    DEAM: A toolkit for comprehensive study of predictive accuracy of dynamic impact analysis
    SensA: Quantitative semantic dependence approximation and prioritized impact analysis