University of Minnesota
Software Engineering Center

You are here

Dongjiang You

Student/Research Assistant
Dongjiang You graduated with a Ph.D. in Computer Science from the University of Minnesota in 2016. He was a Research Assistant in the Critical Systems Group working with Prof. Mats Heimdahl and Dr. Sanjai Rayadurgam. Before that, he worked with Prof. Zhenyu Chen at Nanjing University. His research interests are broadly in the area of software engineering, including automated test generation, program analysis, symbolic execution, and model checking. He received his Bachelor's degree in Software Engineering from Nanjing University in 2011.

Recent Publications

Executing Model-based Tests on Platform-specific Implementations

Model-based testing of embedded real-time systems is challenging because platform-specific details are often abstracted away to make the models amenable to various analyses. Testing an implementation to expose non-conformance to such a model requires reconciling differences arising from these abstractions. Due to stateful behavior, naive comparisons of model and system behaviors often fail causing numerous false positives.

Efficient Observability-based Test Generation by Dynamic Symbolic Execution

Structural coverage metrics have been widely used to measure test suite adequacy as well as to generate test cases. In previous investigations, we have found that the fault-finding effectiveness of tests satisfying structural coverage criteria is highly dependent on program syntax – even if the faulty code is exercised, its effect may not be observable at the output. To address these problems, observability-based coverage metrics have been defined.

Are We There Yet? Determining the Adequacy of Formalized Requirements and Test Suites

Structural coverage metrics have traditionally categorized code as either covered or uncovered. Recent work presents a stronger notion of coverage, checked coverage, which counts only statements whose execution contributes to an outcome checked by an oracle. While this notion of coverage addresses the adequacy of the oracle, for Model-Based Development of safety critical systems, it is still not enough; we are also interested in how much of the oracle is covered, and whether the values of program variables are masked when the oracle is evaluated.