Search engine for discovering works of Art, research articles, and books related to Art and Culture
ShareThis
Javascript must be enabled to continue!

Evolution of a course on model checking for practical applications

View through CrossRef
Although model checking is expected as a practical formal verification approach for its automatic nature, it still suffers from difficulties in writing the formal descriptions to be verified and applying model checking tools to them effectively. The difficulties are found mainly in grasping the exact system behaviors, representing them in formal languages, and using model checking tools that fit the best to the verification problems. Even capable software developers need extensive education to overcome the difficulties. In this paper, we report our education course of practical applications of model checking in our education project called Top SE. Our approach consists of the following two features. First, we adopt UML as the design specification language and create the descriptions for each specific model checking tool from the UML diagrams, to enable easy practical application of model checking. Second, we build taxonomies of system behaviors, in particular behaviors of concurrent systems that are main targets of model checking. We can organize the knowledge and the techniques of practical model checking according to the taxonomies. The taxonomies are based on several aspects of system behaviors such as synchronization of transitions, synchronization of communications, and modeling of system environments. In addition, we make clear which model checking tools fit which types of systems. We treat the three different model checking tools: SPIN, SMV, and LTSA. Each tool has its specific features that make the tool easier or more difficult to be applied to specific problems than others. In our education course, we explain the taxonomies, the knowledge, and the techniques using very simple examples. We also assign the students exercises to apply the knowledge and the techniques to more complicated problems such as the dining philosopher problem, data copying between a DVD recorder and a hard disk recorder, and the alternating bit protocol.
Title: Evolution of a course on model checking for practical applications
Description:
Although model checking is expected as a practical formal verification approach for its automatic nature, it still suffers from difficulties in writing the formal descriptions to be verified and applying model checking tools to them effectively.
The difficulties are found mainly in grasping the exact system behaviors, representing them in formal languages, and using model checking tools that fit the best to the verification problems.
Even capable software developers need extensive education to overcome the difficulties.
In this paper, we report our education course of practical applications of model checking in our education project called Top SE.
Our approach consists of the following two features.
First, we adopt UML as the design specification language and create the descriptions for each specific model checking tool from the UML diagrams, to enable easy practical application of model checking.
Second, we build taxonomies of system behaviors, in particular behaviors of concurrent systems that are main targets of model checking.
We can organize the knowledge and the techniques of practical model checking according to the taxonomies.
The taxonomies are based on several aspects of system behaviors such as synchronization of transitions, synchronization of communications, and modeling of system environments.
In addition, we make clear which model checking tools fit which types of systems.
We treat the three different model checking tools: SPIN, SMV, and LTSA.
Each tool has its specific features that make the tool easier or more difficult to be applied to specific problems than others.
In our education course, we explain the taxonomies, the knowledge, and the techniques using very simple examples.
We also assign the students exercises to apply the knowledge and the techniques to more complicated problems such as the dining philosopher problem, data copying between a DVD recorder and a hard disk recorder, and the alternating bit protocol.

Related Results

Model-checking ecological state-transition graphs
Model-checking ecological state-transition graphs
AbstractModel-checking is a methodology developed in computer science to automatically assess the dynamics of discrete systems, by checking if a system modelled as a state-transiti...
Clock monitoring is associated with age-related decline in time-based prospective memory
Clock monitoring is associated with age-related decline in time-based prospective memory
AbstractIn laboratory time-based prospective memory tasks, older adults typically perform worse than younger adults do. It has been suggested that less frequent clock checking due ...
Establishment and Application of the Multi-Peak Forecasting Model
Establishment and Application of the Multi-Peak Forecasting Model
Abstract After the development of the oil field, it is an important task to predict the production and the recoverable reserve opportunely by the production data....
Probabilistic Model Checking for Biology
Probabilistic Model Checking for Biology
Probabilistic model checking is an automated method for verifying the correctness and performance of probabilistic models. Property specifications are expressed in probabilistic te...
A distributed model to expand the reach of drug checking
A distributed model to expand the reach of drug checking
Purpose While there is increasing interest in implementing drug checking within overdose prevention, we must also consider how to scale-up these responses so that they have signifi...
Bounded Model Checking of Continuous Stochastic Logic
Bounded Model Checking of Continuous Stochastic Logic
Model checking continuous stochastic logic has been proven to be a powerful technique for analyzing the dependability and performance of stochastic systems. The state space explosi...
Bounded Correctness Checking of the Universal Fragment of eCTL
Bounded Correctness Checking of the Universal Fragment of eCTL
Bounded model checking as a complementary approach to BDD based symbolic model checking applies satisfiability checking to the verification of temporal properties, especially, for ...
The motivation and consequence of fact-checking behavior: An experimental study
The motivation and consequence of fact-checking behavior: An experimental study
In a series of online experiments, we asked people to evaluate news veracity and varied two experimental conditions: (1) the opportunity to receive fact-checking results and (2) bo...

Back to Top