Home | Research | Human-Computer Interaction and Education

Human-Computer Interaction and Education

As a discipline, Human-Computer Interaction focuses on the design, evaluation, and implementation of computing systems–often those that are user facing. The field of HCI sits at the intersection of computer science, psychology, and design. Thus, a practical understanding of software engineering, machine learning, signal processing, and other exciting areas of computer science is combined with knowledge of human factors that influence the design and implementation of technology. As a result, HCI research is highly interdisciplinary and focuses on the entire technology life-cycle including: observing the way humans interact with computing technologies for requirement gathering and needfinding, evaluating hardware and software prototypes using qualitative and quantitative methods, measuring the impact computing technologies have on society, and resolving inequities in access.

Current Faculty

  • Roghayeh (Leila) Barmaki, Assistant Professor: Human-Centered Computing; Future User Interfaces; Augmented, Mixed and Virtual Reality; Educational Technology; Multimodal Machine Learning.
  • Austin Cory Bart, Assistant Professor: Passionate about teaching and developing technology to support education by leveraging the latest learning theory and computational techniques. Equally comfortable as both Software Architect and Educational Researcher, having developed a significant amount of sophisticated software and taught in many contexts. Committed to supporting education and diversity in every discipline, especially Computer Science.
  • Kathleen McCoy,¬†Professor (joint appointment with Linguistics & Cognitive Science): Artificial Intelligence, Computational Linguistics/Natural Language Generation, and Accessibility for People with Disabilities.
  • Matthew Louis Mauriello, Assistant Professor: Software Architecture; Internet-of-Things; Cyber-Physical Systems; Human-Centered Computing; Sensing; Behavior Change; Sustainability; Education; Health & Wellbeing; Human-Building Interactions.
  • Lori Pollock, Professor: Program analysis for building better software maintenance tools; Optimizing compilers for modern computer architectures; Software testing.
  • Debra Yarrington, Assistant Professor, Computer Science Education


  • CISC 482/682: Introduction to Human-Computer Interaction
  • CISC 467/667: Computing for Social Good
  • VIP: VR (CISC187)

Human-Computer Interaction Laboratories


119 South Main Street, Professor Leila Barmaki.

The Human-Computer Interaction Lab at the University of Delaware (HCI@UD) investigates how immersive technologies, such as augmented and virtual reality(AR/VR), can be used and evaluated for elevating user experience. While we use tools and methods from human-computer interaction to create those experiences, we collect user data from wearables, and sensors, and finally apply machine learning and affective computing techniques atop multimodal data to perceive and assess user-centric metrics like emotions and affect, engagements, and self-efficacy.

Sensify Lab

Professor Matthew Louis Mauriello.

The Sensify Lab at the University of Delaware focuses on sensing and data analysis techniques for detecting physical and behavioral phenomena that enable new interactions with technology. Particular emphasis is placed on human-centered design, cyber-physical and software systems that extend user capabilities, and practical applications of technology that address high-value social problems. Areas of interest include: education, health & wellbeing, environmental sustainability, human-building interactions, physical making, and games.

Software Analysis and Compilation Laboratory

213 Smith Hall, Professor Lori Pollock.

Our research focuses on program analysis to automate and semi-automate tedious and error-prone tasks typically performed by software engineers, testers, and scientists. Current research projects include applying natural language processing techniques to perform textual analysis of software artifacts and using that information for automatically generating documentation from source code, improving code search and feature location, and improving other software maintenance tools. We are also investigating various aspects of green software engineering to enable software designers to make energy-conscious design decisions. In software testing, we are developing techniques to automatically generate tests for web applications. Other projects focus on optimizing compilers for modern parallel architectures.