Seminar: Advanced Verification and Validation Tools for Java

Lecturer: Schumann

Location: Clark 226

Times:

Lecture

Date

Time

1

F 7/31

9:00 - 10:30

2

F 7/31

10:45 - 12:00

 

Student Roster:

All students must attend.

Description

Advanced Verification and Validation Tools for Java

Dr. Johann Schumann

As more and more Java software finds it way into areas where quality, reliability, and software safety plays an important role, the verification and validation (V&V) of such code is paramount. Unfortunately, traditional approaches to software  testing are extremely expensive and labor intensive, when a  low software error rate is expected. Therefore, approaches and  tools, which help to find errors and bugs as early as possible,  which help to find hard-to-test errors, and which support the  automatic generation of test suites, are extremely helpful and important. In this seminar, we will focus on advanced tools for V&V of Java  code, some of which have been developed at NASA. All these tools are open source, so the threshold for use by students is low.

In particular, we will cover the following topics:

* The role of V&V in modern Software Engineering

* Early detection of bugs and defects with Findbugs

* Model Checking of Java Programs to find concurrency bugs in    multithreaded programs with Java PathFinder

* Using Model Checking to validate a graphical user interface   (e.g., with Java Swing)

* Automatic generation of Java testcases with SPF (Symbolic Path   Finder)

* Discussion of integration of V&V tools into a software process. 

This course will present a short theoretical background and  will discuss practical examples and technqiues. All tools presented are open-source; Java PathFinder and SPF have been developed at NASA Ames for the V&V of safety-critical code.