Chris Murphy

Associate Professor of Practice
Dept. of Computer & Information Science
University of Pennsylvania

Chris Murphy photo

About Me

I have been a teaching-track faculty member at the University of Pennsylvania since 2010, and am co-director of the Online Masters of Computer & Information Technology program.

My current academic interests include diversity, inclusion, and mental health in Computer Science; student contributions to open source software projects; and online learning.

Prior to joining Penn, I completed a PhD in Computer Science at Columbia University, where my research focused on software testing. Before that, I worked as a professional software developer in Boston, San Francisco, and London after earning a BS in Computer Engineering from Boston University.

Somewhere along the way, I also spent two years teaching English in Seoul, but that's not really part of the narrative hahaha...

You can find out more in my CV and on my LinkedIn page!

News

Some recent highlights:

The Daily Pennsylvanian ran an article on how my TAs and I are incorporating diversity and mental health into the CIS 350 Software Design & Engineering course. Thank you to the students and TAs who provided quotes and supported these efforts this semester!

I was humbled and honored to be named one of the recipients of this year's Provost's Awards for Teaching Excellence. I've certainly been fortunate to work with great students, colleagues, and especially TAs over the years!

I facilitated a Birds of a Feather session on supporting students living with mental illness with Linda DuHadway from Weber St. and Matt Hanson from Univ. of Minnesota at the SIGCSE technical symposium in Minneapolis in February 2019. We had over 30 participants and a great discussion about this important topic.

My latest online course, "Computational Thinking for Problem Solving," launched on Coursera on October 15. Such a huge privilege to create this course alongside the amazing Susan Davidson.

Research, Publications, and Presentations

Although I spend most of my time teaching and advising students, I also try to contribute to the field of computer science education through publications and participating in panels and other events at conferences, particularly focusing on issues related to diversity, inclusion, belonging, and student mental health, as well as how to create "real-world" experiences for software engineering students, including having students contribute to open source software projects. Here are some recent publications and other activities in those areas:

  1. "Curious about Student Participation in Humanitarian Open Source Software?" (panelist)
    50th ACM SIGCSE Technical Symposium on Computer Science Education
    Minneapolis MN, Mar 1, 2019.

  2. "Supporting Students Living With Mental Illness" (Birds of a Feather session with L. DuHadway and M. Hanson)
    50th ACM SIGCSE Technical Symposium on Computer Science Education
    Minneapolis MN, Feb 28, 2019.

  3. "Learn About Open Source Software" (Birds of a Feather session with A. Roca)
    2018 ACM Richard Tapia Celebration of Diversity in Computing
    Orlando FL, Sept 21, 2018.

  4. "Bridging the Diversity Gap in Computer Science with a Course on Open Source Software"
    J. Weng and C. Murphy
    In Proc of the 3rd Annual IEEE STCBP Conference on Research on Equity & Sustained Participation in Engineering, Computing, and Technology (RESPECT)
    Baltimore MD, Feb 2018.

  5. "We’re All in This Together: CS students, the tech industry, and mental health" (Birds of a Feather session with J. Akullian)
    49th ACM SIGCSE Technical Symposium on Computer Science Education
    Baltimore MD, Feb 22, 2018.

  6. "Addressing Diversity & Inclusion Issues in Computer Science through Contributions to Free and Open Source Software" (Birds of a Feather session with J. Weng, N. Veilleux, and J. Pearce)
    2017 ACM Richard Tapia Celebration of Diversity in Computing
    Atlanta GA, Sept 21, 2017.

  7. "A Two-Course Sequence of Real Projects for Real Customers"
    C. Murphy, S. Sheth, S. Morton
    In Proc of the 48th ACM SIGCSE Technical Symposium on Computer Science Education
    Seattle WA, Mar 2017, pp. 417-422 (Exemplary Paper Award).

  8. "Community Engagement with Free and Open Source Software" (panel moderator)
    48th ACM SIGCSE Technical Symposium on Computer Science Education
    Seattle WA, Mar 9, 2017.

  9. "Teaching a Standalone FOSS Course: Successes, Challenges, and Future Directions" (presentation)
    POSSE Roundup at SIGCSE 2017
    Seattle WA, Mar 8, 2017.

  10. "A Course on Programming and Problem Solving"
    S. Sheth, C. Murphy, K. Ross, D. Shasha
    In Proc of the 47th ACM SIGCSE Technical Symposium on Computer Science Education
    Memphis TN, Mar 2016, pp. 323-328.

  11. "Mentorship Models in Open Source Software Development Courses" (presentation)
    POSSE Roundup at SIGCSE 2016
    Memphis TN, Mar 2, 2016.

  12. "Motivating Students with 'Real Projects for Real Customers'"
    C. Murphy
    In University of Pennsylvania Almanac
    Vol. 62, No. 11, Oct 2015, p. 12.

As a graduate student at Columbia University, I investigated software testing techniques for programs that do not have a "test oracle," i.e. for which it is difficult to know in advance what the correct output should be. I am no longer actively conducting research in this area, but here are some of my relevant publications:

  1. "Dynamic Inference of Likely Metamorphic Properties to Support Differential Testing"
    F.-H. Su, J. Bell, C. Murphy, G. Kaiser
    In Proc of the Tenth IEEE/ACM International Workshop on Automation of Software Test (AST)
    Firenze, Italy, May 2015.

  2. "Metamorphic Runtime Checking of Applications without Test Oracles"
    J. Bell, C. Murphy, G. Kaiser
    In CrossTalk: The Journal of Defense Software Engineering
    Volume 28, Issue 2, Mar/Apr 2015, pp. 9-13.

  3. "On Effective Testing of Health Care Simulation Software"
    C. Murphy, M. S. Raunak, A. King, S. Chen, C. Imbriano, G. Kaiser, I. Lee, O. Sokolsky, L. Clarke, L. Osterweil
    In Proc of the 3rd International Workshop on Software Engineering in Health Care (SEHC)
    Honolulu HI, May 2011.

  4. "Testing and Validating Machine Learning Classifiers by Metamorphic Testing"
    X. Xie, J. W. K. Ho, C. Murphy, G. Kaiser, B. Xu, T.Y. Chen
    In Journal of Systems and Software
    Volume 84, Issue 4, Apr 2011, pp. 544-558.

  5. "Automatic Detection of Previously-Unseen Application States for Deployment Environment Testing and Analysis"
    C. Murphy, M. Vaughan, W. Ilahi, G. Kaiser
    In Proc of the 5th International Workshop on Automation of Software Test (AST)
    Cape Town, South Africa, May 2010.

  6. "Metamorphic Testing Techniques to Detect Defects in Applications without Test Oracles"
    C. Murphy
    PhD Thesis
    Columbia University Dept of Computer Science tech report cucs-010-10, Apr 2010

  7. "Application of Metamorphic Testing to Supervised Classifiers"
    X. Xie, J. Ho, C. Murphy, G. Kaiser, B. Xu, T.Y. Chen
    In Proc of the 9th International Conference on Quality Software (QSIC)
    Jeju, South Korea, Aug 2009, pp. 135-144 (Best Paper Award).

  8. "Automatic System Testing of Programs without Test Oracles"
    C. Murphy, K. Shen, G. Kaiser
    In Proc of the 2009 ACM International Symposium on Software Testing and Analysis (ISSTA)
    Chicago IL, Jul 2009, pp. 189-199.

  9. "Using JML Runtime Assertion Checking to Automate Metamorphic Testing in Applications without Test Oracles"
    C. Murphy, K. Shen, G. Kaiser
    In Proc of the Second IEEE International Conference on Software Testing, Verification and Validation (ICST)
    Denver CO, Apr 2009, pp. 436-445.

  10. "Properties of Machine Learning Applications for Use in Metamorphic Testing"
    C. Murphy, G. Kaiser, L. Hu, L. Wu
    In Proc of the 20th International Conference on Software Engineering and Knowledge Engineering (SEKE)
    Redwood City CA, Jul 2008, pp. 867-872.
    (tech report with additional findings is here)

A full list of publications is available in my CV.

Courses Taught

I primarily teach courses related to software development and systems programming, at both the undergraduate and graduate level.

Here are the websites of recent course offerings:

I also have created three online courses:

A full list of the courses I've taught is available in my CV.

Contact Me

Levine 162 (3330 Walnut St)
cdmurphy@seas.upenn.edu
215-898-0382

Top