Skip to content. Skip to main navigation.

avatar

Christoph Csallner

Name

[Csallner, Christoph]
  • Associate Professor, Department of Computer Science & Engineering
  • Associate Professor, Department of Computer Science & Engineering

Biography

Christoph Csallner is an Associate Professor in the Computer Science and Engineering Department at the University of Texas at Arlington (UTA). Before joining UTA, he worked for Google and Microsoft Research and received a Ph.D. degree from the Georgia Institute of Technology (Georgia Tech). 

Dr. Csallner is working on problems that are related to software engineering. Specifically, his research areas include program analysis, automated bug finding, software security, and mobile software development. 

Dr. Csallner has received three Best Paper Awards, i.e., at the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE 2007), at the 21st IEEE International Symposium on Software Reliability Engineering (ISSRE 2010), and at the 4th Program Protection and Reverse Engineering Workshop (PPREW-4).

Dr. Csallner has also received three ACM SIGSOFT Distinguished Paper Awards, i.e., at the 15th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2006), at the 21th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2012), and at the 30th IEEE/ACM International Conference on Automated Software Engineering (ASE 2015).

Professional Preparation

    • 2008 Ph.D. in Computer ScienceGeorgia Institute of Technology
    • 2002 M.S. in Computer ScienceGeorgia Institute of Technology
    • 2003 Dipl.-Inf. in Software EngineeringUniversität Stuttgart

Appointments

    • Sept 2014 to Present Associate Professor
      University of Texas at Arlington   Engineering   CSE
    • Sept 2008 to Aug 2014 Assist Professor
      University of Texas at Arlington   Engineering   CSE
    • Aug 2003 to Aug 2008 Graduate Research Assistant
      Georgia Institute of Technology   Computing
    • Aug 2006 to Dec 2006 Intern
      Microsoft   Microsoft Research
    • May 2006 to Aug 2006 Test Intern
      Google   Software Engineering

Awards and Honors

    • Nov  2015 ACM SIGSOFT Distinguished Paper Award sponsored by ACM SIGSOFT
      Achievements:

      "Reverse engineering mobile application user interfaces with REMAUI" by Tuan A. Nguyen and Christoph Csallner. In Proc. 30th IEEE/ACM International Conference on Automated Software Engineering (ASE), Nov. 2015, pp. 248-259.

    • Dec  2014 Best Paper Award sponsored by Program Protection and Reverse Engineering Workshop
    • Jan  2013 ACM TOSEM Distinguished Referee sponsored by ACM
    • Jul  2012 ACM SIGSOFT Distinguished Paper Award sponsored by ACM SIGSOFT
      Achievements:

      "Residual investigation: Predictive and precise bug detection" by Kaituo Li, Christoph Reichenbach, Christoph Csallner, and Yannis Smaragdakis. In Proc. ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), July 2012, pp. 298-308.

    • Nov  2010 Best Paper Award sponsored by IEEE International Symposium on Software Reliability Engineering
      Achievements:

      "Is data privacy always good for software testing?" by Mark Grechanik, Christoph Csallner, Chen Fu, and Qing Xie. In Proc. 21st IEEE International Symposium on Software Reliability Engineering (ISSRE), Nov. 2010, pp. 368-377.

    • Nov  2007 Best Paper Award sponsored by IEEE/ACM International Conference on Automated Software Engineering
      Achievements:

      "Scalable automatic test data generation from modeling diagrams" by Yannis Smaragdakis, Christoph Csallner, and Ranjith Subramanian. In Proc. 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE), Nov. 2007, pp. 4-13.

    • Jul  2006 ACM SIGSOFT Distinguished Paper Award sponsored by ACM SIGSOFT
      Achievements:

      "DSD-Crasher: A hybrid analysis tool for bug finding" by Christoph Csallner and Yannis Smaragdakis. In Proc. ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), July 2006, pp. 245-254.

      Award Details

Research and Expertise

  • Research Interest
    software engineering, especially in program analysis and automated testing

Publications

      Conference Proceeding 2017
      • Reverse engineering object-oriented applications into high-level domain models with Reoom. By Tuan A. Nguyen and Christoph Csallner. In 39th IEEE/ACM International Conference on Software Engineering Companion (ICSE-C), Poster track, May 2017. To appear.

        {Conference Proceeding }

      Journal Article 2016
      • RUGRAT: Evaluating program analysis and testing tools and compilers with large generated random benchmark application. By Ishtiaque Hussain, Christoph Csallner, Mark Grechanik, Qing Xie, Sangmin Park, Kunal Taneja, and B.M. Mainul Hossain. Software -- Practice & Experience, vol. 46, no. 3, Mar. 2016, pp. 405-431.

        {Journal Article }

      Conference Proceeding 2016
      • Detecting rootkits with the RAI runtime application inventory. By Shabnam Aboughadareh and Christoph Csallner. In Proc. 6th Software Security, Protection, and Reverse Engineering Workshop (SSPREW), Dec. 2016, pp. 3:1-3:12.

        {Conference Proceeding }
      2016
      • CyFuzz: A differential testing framework for cyber-physical systems development environments. By Shafiul Azam Chowdhury, Taylor T. Johnson, and Christoph Csallner. In Proc. 6th Workshop on Design, Modeling and Evaluation of Cyber Physical Systems (CyPhy), Oct. 2016, pp. 46-60.

        {Conference Proceeding }

      Conference Paper 2015
      • Reverse engineering mobile application user interfaces with REMAUI. By Tuan A. Nguyen and Christoph Csallner. In Proc. 30th IEEE/ACM International Conference on Automated Software Engineering (ASE), Nov. 2015, pp. 248-259.

        {Conference Paper }

      Journal Article 2014
      • A distributed framework for demand-driven software vulnerability detection. By Dazhi Zhang, Donggang Liu, Christoph Csallner, David Kung, and Jeff Lei. Journal of Systems and Software (JSS), vol. 87, no. 1, Jan. 2014, pp. 60-73.

        {Journal Article }
      2014
      • Generating test cases for programs that are coded against interfaces and annotations. By Mainul Islam and Christoph Csallner. ACM Transactions on Software Engineering and Methodology (TOSEM), vol. 23, no. 3, May 2014, pp. 21:1-21:38.

        {Journal Article }
      2014
      • Residual investigation: Predictive and precise bug detection. By Kaituo Li, Christoph Reichenbach, Christoph Csallner, and Yannis Smaragdakis. ACM Transactions on Software Engineering and Methodology (TOSEM), vol. 24, no. 2, Dec. 2014, pp. 7:1-7:32, ACM.

        {Journal Article }

      Conference Paper 2014
      • Mixed-mode malware and its analysis. By Shabnam Aboughadareh, Christoph Csallner, and Mehdi Azarmi. In Proc. 4th Program Protection and Reverse Engineering Workshop (PPREW), Dec. 2014, pp. 1:1-1:12.

        {Conference Paper }

      Conference Paper 2013
      • SEDGE: Symbolic example data generation for dataflow programs. By Kaituo Li, Christoph Reichenbach, Yannis Smaragdakis, Yanlei Diao, and Christoph Csallner. In Proc. 28nd IEEE/ACM International Conference on Automated Software Engineering, pages 235-245. IEEE, November 2013.

        {Conference Paper }
      2013
      • Automatic profiling of evasive mixed-mode malware with SEMU. By Shabnam Aboughadareh, Christoph Csallner, and Mehdi Azarmi. In 33rd IEEE Symposium on Security and Privacy, Poster session. May 2013.

        {Conference Paper }
      2013
      • GROPG: A graphical on-phone debugger. By Tuan A. Nguyen, Christoph Csallner, and Nikolai Tillmann. In Proc. 35th ACM/IEEE International Conference on Software Engineering, New Ideas and Emerging Results (NIER) track, pages 1189-1192. IEEE, May 2013.

        {Conference Paper }

      Conference Paper 2012
      • Evaluating program analysis and testing tools with the RUGRAT random benchmark application generator. By Ishtiaque Hussain, Christoph Csallner, Mark Grechanik, Chen Fu, Qing Xie, Sangmin Park, Kunal Taneja, and B.M. Mainul Hossain. In Proc. 10th International Workshop on Dynamic Analysis (WODA), pages 1-6. ACM, July 2012.
        {Conference Paper }
      2012
      • CarFast: Achieving higher statement coverage faster. By Sangmin Park, Ishtiaque Hussain, Christoph Csallner, Kunal Taneja, B.M. Mainul Hossain, Mark Grechanik, Chen Fu, and Qing Xie. In Proc. 20th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE), pages 35:1-35:11. ACM, Nov 2012.
        {Conference Paper }
      2012
      • Dynamic analysis of evasive modular malware. By Shabnam Aboughadareh, Christoph Csallner, and Mehdi Azarmi. In 28th Annual Computer Security Applications Conference (ACSAC), Works in Progress (WiP) Track. December 2012.
        {Conference Paper }
      2012
      • Residual investigation: Predictive and precise bug detection. By Kaituo Li, Christoph Reichenbach, Christoph Csallner, and Yannis Smaragdakis. In Proc. ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), pages 298-308. ACM, July 2012.
        {Conference Paper }
      2012
      • An experiment in developing small mobile phone applications comparing on-phone to off-phone development. By Tuan A. Nguyen, Sarker T.A. Rumee, Christoph Csallner, and Nikolai Tillmann. In Proc. 1st International Workshop on User Evaluation for Software Engineering Researchers (USER), pages 9-12. IEEE, June 2012.
        {Conference Paper }

      Journal Article 2012
      • SimFuzz: Test case similarity directed deep fuzzing. By Dazhi Zhang, Donggang Liu, Yu Lei, David Kung, Christoph Csallner, Nathaniel Nystrom, and Wenhua Wang. Journal of Systems and Software (JSS), volume 85, issue 1, pages 102-111, January 2012.
        {Journal Article }

      Conference Paper 2011
      • A combinatorial approach to detecting buffer overflow vulnerabilities. By Wenhua Wang, Yu Lei, Donggang Liu, David Kung, Christoph Csallner, Dazhi Zhang, Raghu Kacker, and Rick Kuhn. In Proc. 41st Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), pages 269-278. IEEE, June 2011.
        {Conference Paper }
      2011
      • Managing performance testing with release certification and data correlation. By Tuli Nivas and Christoph Csallner. In 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE), Industry Track. September 2011.
        {Conference Paper }
      2011
      • New Ideas Track: Testing MapReduce-style programs. By Christoph Csallner, Leonidas Fegaras, and Chengkai Li. In Proc. 19th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE),  New Ideas Track, pages 504-507. ACM, September 2011.
        {Conference Paper }

      Conference Paper 2010
      • D. Zhang, D. Liu, J. Lei, D. Kung, C. Csallner, and W. Wang. "Detecting vulnerabilities in C programs using trace-based testing," presented at 40th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), June 2010.
        {Conference Paper }
      2010
      • M. Grechanik, C. Csallner, C. Fu, and Q. Xie. "Is data privacy always good for software testing?," presented at 21st IEEE International Symposium on Software Reliability Engineering (ISSRE), November 2010.
        {Conference Paper }
      2010
      • I. Hussain and C. Csallner. "Dynamic symbolic data structure repair," presented at 32nd ACM/IEEE International Conference on Software Engineering (ICSE), Emerging Results Track, May 2010.
        {Conference Paper }
      2010
      • I. Hussain and C. Csallner. "DSDSR: A tool that uses dynamic symbolic execution for data structure repair," presented at 8th International Workshop on Dynamic Analysis (WODA), July 2010.
        {Conference Paper }
      2010
      • M. Islam and C. Csallner. "Dsc+Mock: A test case + mock class generator in support of coding against interfaces," presented at 8th International Workshop on Dynamic Analysis (WODA), July 2010.
        {Conference Paper }
      2010
      • C. Li and C. Csallner. "Dynamic symbolic database application testing," presented at 3rd International Workshop on Testing Database Systems (DBTest), June 2010.
        {Conference Paper }

      Journal Article 2009
      • Y. Smaragdakis, C. Csallner, and R. Subramanian. "Scalable satisfiability checking and test data generation from modeling diagrams," Automated Software Engineering, vol. 16, no. 1, pp. 73--99, March 2009.
        {Journal Article }

      Conference Paper 2008
      • C. Csallner, N. Tillmann, and Y. Smaragdakis. "DySy: Dynamic symbolic execution for invariant inference," presented at 30th ACM/IEEE International Conference on Software Engineering (ICSE), May 2008.
        {Conference Paper }

      Journal Article 2008
      • C. Csallner, Y. Smaragdakis, and T. Xie. "DSD-Crasher: A hybrid analysis tool for bug finding," ACM Transactions on Software Engineering and Methodology (TOSEM), vol. 17, no. 2, pp. 1--37, April 2008.
        {Journal Article }

      Conference Paper 2007
      • Y. Smaragdakis, C. Csallner, and R. Subramanian. "Scalable automatic test data generation from modeling diagrams," presented at 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE), November 2007.
        {Conference Paper }
      2007
      • Y. Smaragdakis and C. Csallner. "Combining static and dynamic reasoning for bug detection," presented at International Conference on Tests And Proofs (TAP), February 2007.

        {Conference Paper }

      Conference Paper 2006
      • C. Csallner and Y. Smaragdakis. "Dynamically discovering likely interface invariants," presented at 28th ACM/IEEE International Conference on Software Engineering (ICSE), May 2006.
        {Conference Paper }
      2006
      • C. Csallner and Y. Smaragdakis. "DSD-Crasher: A hybrid analysis tool for bug finding," presented at ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA), July 2006.
        {Conference Paper }

      Conference Paper 2005
      • C. Csallner and Y. Smaragdakis. "Check 'n' Crash: Combining static checking and testing," presented at 27th ACM/IEEE International Conference on Software Engineering (ICSE), May 2005.
        {Conference Paper }

      Journal Article 2004
      • C. Csallner and Y. Smaragdakis. "JCrasher: An automatic robustness tester for Java," Software--Practice & Experience, vol. 34, no. 11, pp. 1025--1050, September 2004.
        {Journal Article }

      Conference Paper 2003
      • C. Csallner, M. Handte, O. Lehmann, and J. Stasko. "FundExplorer: Supporting the diversification of mutual fund portfolios using Context Treemaps," presented at 9th IEEE Symposium on Information Visualization (InfoVis), October 2003.
        {Conference Paper }

Courses

      • CSE 3311-002 OBJECT-ORIENTED SOFTWARE ENGINEERING

        Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: C or better in each of the following: CSE 1325 and CSE 2320, Co-requisite: CSE 3310

        Spring - Regular Academic Session - 2019 Download Syllabus Contact info & Office Hours
      • CSE 3311-001 OBJECT-ORIENTED SOFTWARE ENGINEERING

        Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: C or better in each of the following: CSE 1325 and CSE 2320, Co-requisite: CSE 3310

        Fall - Regular Academic Session - 2018 Download Syllabus Contact info & Office Hours
      • CSE 6324-001 ADVANCED TOPICS IN SOFTWARE ENGINEERING

        This course is a hands-on introduction to automatic program analysis. That is, we will discuss how a software tool can automatically analyze software programs. The course has a team project.

        Fall - Regular Academic Session - 2018 Download Syllabus Contact info & Office Hours
      • CSE 3311-002 OBJECT-ORIENTED SOFTWARE ENGINEERING

        Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: C or better in each of the following: CSE 1325 and CSE 2320, Co-requisite: CSE 3310

        Spring - Regular Academic Session - 2018 Download Syllabus Contact info & Office Hours
      • CSE 6324-001 ADVANCED TOPICS IN SOFTWARE ENGINEERING

        This course is a hands-on introduction to automatic program analysis. That is, we will discuss how a software tool can automatically analyze software programs. The course has a team project.

        Fall - Regular Academic Session - 2017 Download Syllabus Contact info & Office Hours
      • CSE 3311-001 OBJECT-ORIENTED SOFTWARE ENGINEERING

        Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: C or better in each of the following: CSE 1325 and CSE 2320, Co-requisite: CSE 3310

        Fall - Regular Academic Session - 2017 Download Syllabus Contact info & Office Hours
      • CSE 6324-002 Advanced Topics in Software Engineering

        This course is a hands-on introduction to automatic program analysis. That is, we will discuss how a software tool can automatically analyze software programs. The course has a team project.

        Spring - Regular Academic Session - 2017 Download Syllabus Contact info & Office Hours
      • CSE 3311-002 OBJECT-ORIENTED SOFTWARE ENGINEERING

        Study of an agile unified methodology and its application to object-oriented software development. Topics include requirements acquisition, use case derivation, modeling and design of interaction behavior and state behavior, introduction to design patterns, derivation of design class diagrams, implementation considerations and deployment. Team project. Prerequisite: C or better in each of the following: CSE 1325 and CSE 2320, Co-requisite: CSE 3310

        Spring - Regular Academic Session - 2017 Download Syllabus Contact info & Office Hours
      • CSE 4322-002 Software Project Management

        Introduction to software project management. Issues include effort estimation and costing, project planning and scheduling, option analysis, software quality assurance, and formal technical reviews. Prerequisite: CSE 3310.

        Fall - Regular Academic Session - 2016 Download Syllabus Contact info & Office Hours
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING

        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

        Spring - Regular Academic Session - 2015 Download Syllabus Contact info & Office Hours
      • CSE 6324-001 ADVANCED TOPICS IN SOFTWARE ENGINEERING

        This course is a hands-on introduction to automatic program analysis.
        That is, we will discuss how a software tool can automatically analyze
        software programs. The course has a team project.

        Spring - Regular Academic Session - 2015 Download Syllabus Contact info & Office Hours
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING

        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

        Spring - Regular Academic Session - 2014 Download Syllabus Contact info & Office Hours
      • CSE 6324-001 Advanced Topics in Software Engineering

        This course is a hands-on introduction to automatic program analysis.
        That is, we will discuss how a software tool can automatically analyze
        software programs. The course has a team project.

        Spring - Regular Academic Session - 2014 Download Syllabus Contact info & Office Hours
      • CSE 4322-001 SOFTWARE PROJECT MANAGEMENT

        Introduction to software project management. Issues include effort estimation and costing, project planning and scheduling, option analysis, software quality assurance, and formal technical reviews. Prerequisite: CSE 3310.

        Fall - Regular Academic Session - 2012 Download Syllabus Contact info & Office Hours1 Link
      • CSE 5325-001 Software Engineering: Management, Maintenance, and Quality Assurance

        Issues and principles for software management; managerial and support aspects of software projects, including: processes, estimation techniques, planning and scheduling, risk analysis, metrics, and quality assurance. Other topics include: configuration management, verification and validation, and maintenance; team project.

        Fall - Regular Academic Session - 2012 Download Syllabus Contact info & Office Hours1 Link
      • CSE 5325-001 Software Engineering: Management, Maintenance, and Quality Assurance
        Issues and principles for software management; managerial and support aspects of software projects, including: processes, estimation techniques, planning and scheduling, risk analysis, metrics, and quality assurance. Other topics include: configuration management, verification and validation, and maintenance; team project.
        Spring - Regular Academic Session - 2012 Download Syllabus 1 Link
      • CSE 4322-001 SOFTWARE PROJECT MANAGEMENT
        Introduction to software project management. Issues include eort estimation and costing, project planning and scheduling, option analysis, software quality assurance, and formal technical reviews. Prerequisite: CSE 3310.
        Spring - Regular Academic Session - 2012 Download Syllabus 1 Link
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING

        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

        Spring - Regular Academic Session - 2012 Download Syllabus Contact info & Office Hours1 Link
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING

        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

        Fall - Regular Academic Session - 2011 Download Syllabus Contact info & Office Hours1 Link
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING

        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

        Spring - Regular Academic Session - 2011 Download Syllabus Contact info & Office Hours1 Link
      • CSE 6329-001 Special Topics in Advanced Software Engineering

        This course is a hands-on introduction to automatic program analysis. I.e., we will discuss how a software tool can automatically analyze user programs.

        Spring - Regular Academic Session - 2011 Download Syllabus Contact info & Office Hours1 Link
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING

        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.

        Fall - Regular Academic Session - 2010 Download Syllabus Contact info & Office Hours1 Link
      • CSE 5324-001 SOFTWARE ENGINEERING: ANALYSIS, DESIGN, AND TESTING
        Motivations, principles, and goals of software engineering; technical aspects of software projects, including: review of structured analysis and structured design, emphasis on object-oriented methods of requirements analysis and specification, design, and implementation; software testing concepts; team project.
        Spring - Regular Academic Session - 2010 Download Syllabus 1 Link
      • CSE 6329-001 Special Topics in Advanced Software Engineering
        This course is a hands-on introduction to program analysis. We experiment with cutting-edge program analysis tools and work through the techniques they are built on. This should give us a good grasp of the fundamental properties of static program analysis, dynamic program analysis, and their combinations. The course targets both Master and Ph.D. students.
        Fall - Regular Academic Session - 2008 Download Syllabus 1 Link