COLLOQUIUM Department of Computer Science and Engineering University of South Carolina Testing and Assurance of Software for Critical Systems Sanjai Rayadurgam Date: March 25, 2016 Time: 1450-1605 (2:50-4:05pm) Place: Swearingen 2A27 Abstract Abstract: Constructing good test cases and correctly judging their execution on the system under test are particularly challenging for embedded control software in a variety of application domains. Typically, models of these systems are often constructed during development to aid in analysis, simulation, design and code-generation. These models can then also be used as a source for generating test cases and as a reference against which the eventual implementation is to be judged. This talk will cover some recent work along these lines: first, how a notion of observability as a basis for test coverage in concert with dynamic symbolic execution enables an incremental test generation strategy that is efficient and effective; second, how differences between the abstract model and the concrete implementation can be reconciled when judging test executions, using both reactively permissive proactively adaptive strategies. Testing, and more generally, verification activities generate evidence to support important dependability claims about the system being developed. To gain regulatory approval or certification for critical systems, such evidence must be tied to the claims being made through well-justified and structured arguments, often referred to as assurance cases. Demonstrating high confidence that the claims made based on an assurance case can be trusted is crucial to the success of the case. The later part of the talk will cover some recent and ongoing work in the area of quantifying and reasoning about confidence in assurance cases. Bio: Sanjai Rayadurgam is a researcher at the University of Minnesota Software Engineering Center 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 and he has co-authored several papers on these topics. He also has ten years of industrial experience in modeling, development and verification of implantable medical devices. His current research deals with problems in assurance, certification, verification and validation of cyber-physical systems, cyber-security and autonomy applications. Rayadurgam received his PhD degree in Computer Science from the University of Minnesota.