Software Engineering

lines of code on a computer screen

Software-intensive systems play a variety of critical roles throughout society:  they support human decision making in medical, transportation, and legal domains and, over the coming years they will increasingly operate autonomously – without a human in the loop. The critical role that software plays means that individuals, organizations, and institutions must determine whether to trust that its operation is safe, secure, and fair. Using current approaches to developing software-intensive systems, it is essentially impossible to understand them well enough to make sound judgements about whether to trust them. This situation will only get worse as systems continue to increase in scale, complexity, and the diversity technologies used to build them. Through a new collaborative research focus, UVA Computer Science faculty from software engineering (SE), formal methods (FM), security, machine learning (ML), and cyber-physical systems (CPS) seek to address this challenge. Our department’s strength in formal methods and program analysis allows us to advance the state of the art in all these areas, ensuring that these systems operate correctly and securely.

Software Engineering Core Faculty

Lu Feng

Associate Professor, Computer Science, Systems & Information Engineering
Lu Feng is an Associate Professor of Computer Science at the University of Virginia. She is also a member of the Link Lab - the center of research excellence in Cyber-Physical Systems. Her research focuses on assuring the safety and trustworthiness of cyber-physical systems, with applications…

Yonghwi Kwon

Visiting John Knight Career Enhancement Assistant Professor, Computer Science
My research interests include software systems security (i.e., securing software to prevent cyber attacks), cyber forensics (i.e., recovering cyber forensic evidence from data/programs), and software engineering (software testing and reverse engineering).

Chang Lou

Assistant Professor, Computer Science

Chang Lou is a tenure-track assistant professor in Department of Computer Science at University of Virginia. His research interests are distributed systems, operating systems, and cloud computing. His work centers on improving system reliability and availability. 

Yuan Tian

Visiting Assistant Professor, Computer Science
Research interests include: Security and Privacy, Cyber-Physical System, Machine Learning, Human-Computer Interaction My research interests involve security and privacy and its interactions with system, networking, machine learning, and human-computer interaction. My current research focuses on…