Abstract: Software runs many things in our lives and our society. It’s important that software running vital systems works as intended, but ensuring that software works as intended can be a surprisingly difficult task. In this talk, Katz will introduce some of the techniques that software researchers and professionals use to ensure software quality. She will also examine some well-known software failures: why they happened and how they were missed. She will discuss some of her work, including work with finding bugs in robotics and autonomous vehicle software.