Tool Support and Applications
Briefly explain Tool Support and Applications in program model checking?
Expert
Tool Support and Applications: Environment models are essential for software model checking. The problem of environment generation is difficult and it is the subject of active research. There is little tool support publicly available, most of what is available comes from academia or research labs. One such tool, BEG (BEG website) from Kansas State University, is described in more detail below.
The Bandera Environment Generator (BEG) tool builds environment models for Java components. It uses static analysis to discover the interface of the analyzed component and it uses filters (regular expressions and temporal logic formulas) and available code from the rest of the components to build precise environment models. BEG can be used in conjunction with the Bandera tool set or JPF for model checking. BEG has been applied to Java applications developed at NASA Ames and Fujitsu.
While BEG proved to be quite useful in generating environments for small systems, the tool support is much more valuable when applied to larger software systems. One such application is described in (Tkachuk, Dwyer, and Pasareanu 2003) where BEG was applied to Autopilot, a Swing-based GUI for an MD-11 autopilot simulator used at NASA. The application code consists of more than 3600 lines of code clustered in one class. The system makes intensive use of java.awt and java.swing GUI frameworks that influence the behavior of the system; the main thread of control is owned by the framework and application methods are invoked as application callbacks. To analyze the system, BEG was used to generate stubs for all the GUI framework components and to generate drivers that encode assumptions about user behavior. JPF was used to check for mode confusion properties. JPF detected a mismatch between the user model and the software’s state (encoded as an assertion violation), indicating potential mode confusion. As mentioned in (Tkachuk, Dwyer, and Pasareanu 2003), a previous effort to build an environment for this application required several months of manual work and yielded an environment model that was inconsistent with the actual environment implementation. From relatively simple assumption specifications, BEG generated an environment in less than 4 minutes that was consistent with the implementation.
Explain pipelining: A technique utilized in advanced microprocessors where the microprocessor starts executing a second instruction before the first has been finished. That is, many instructions are in the pipeline simultaneously, each at a distinct p
Program Design Guidelines for Model Checking: Most of the significant software development projects use some kind of design and coding guidelines. There exist many such guidelines, some including tens or even hundreds of rules covering almost all aspe
Normal 0 false false
What happened to Wilson’s “Fourteen Points?” Why?
Write down benefits which commensalism offer to the species.
What did “containment” mean in the context of the Cold War policy? Why did the USA begin the Marshall Plan?
18,76,764
1961341 Asked
3,689
Active Tutors
1440722
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!