Skip to Main Content
One of today's challenges is understanding the behavior of complex software. A major challenge here is that libraries, classes, and other components are often not well understood and can easily be used incorrectly. Our system, CHET, lets developers define specifications that describe how a component should be used and checks these specifications statically in real Java systems. Unlike previous systems, CHET is able to check a wide range of complex conditions in large software systems without programmer intervention. CHET comes with an interactive front end that makes both defining specifications and understanding the results of the checks intuitive and easy.