University of Minnesota
Software Engineering Center
/

You are here

Sanjai Rayadurgam

Photo of Sanjai Rayadurgam
Director of the Software Engineering Center
Phone Number: 
612-625-0331
Office Location: 
6-202 Keller Hall
Education: 
B.Sc. in Mathematics, University of Madras, Chennai (1989)
M.E. in Computer Science and Engineering, Indian Institute of Science, Bengaluru (1993)
Ph.D. in Computer and Information Sciences, University of Minnesota, Minneapolis (2004)
Biography: 

Sanjai Rayadurgam is the director of the University of Minnesota Software Engineering Center and is a Research Project Specialist in the Department of Computer Science and Engineering. His research interests are in software testing, formal analysis and requirements modeling, with particular focus on safety-critical systems development. Prior to his work at the University of Minnesota, he worked at Boston Scientific, performing advanced tools development, systems engineering, and verification and validation of implantable cardiac device. He For his doctoral dissertation he developed techniques to automatically derive tests from behavioral models of software that could meet stringent coverage criteria. He has co-authored several research papers and articles in software engineering. He was a co-organizer of Dagstuhl seminar on Software and Systems Traceability for Safety-Critical Projects in 2015, was a program co-chair for the NASA Formal Methods Symposium in 2016 and is in the program committees of various workshops and conferences in software engineering.

Research: 
His recent research areas include contract-discovery and coverage techniques for black-box object-code components funded by a NSF grant, test generation and verification of plan executions for autonomy platforms funded by a NASA grant, testing techniques of learning enabled components for assuring autonomous systems funded under a DARPA project and model based fuzz testing funded under an ONR project.
Interests: 
Software Engineering, Formal Methods, Automated Testing, High Assurance Autonomy

Recent Publications

Domain Modeling for Development Process Simulation

Simulating agile processes prior to adoption can reduce the risk of enacting an ill-fitting process. Agent-based simulation is well-suited to capture the individual decision-making valued in agile. Yet, agile's lightweight nature creates simulation difficulties as agents must fill-in gaps within the specified process. Deliberative agents can do this given a suitable planning domain model. However, no such model, nor guidance for creating one, currently exists.

Representation of Confidence in Assurance Cases using the Beta Distribution

Assurance cases are used to document an argument that a system---such as a critical software system---satisfies some desirable property (e.g., safety, security, or reliability). Demonstrating high confidence that the claims made based on an assurance case can be trusted is crucial to the success of the case. Researchers have proposed quantification of confidence as a Baconian probability ratio of eliminated concerns about the assurance case to the total number of identified concerns.

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.

Pages