Communicating sequential processes
Communicating sequential processes
Checking safety properties using compositional reachability analysis
ACM Transactions on Software Engineering and Methodology (TOSEM)
Checking progress with action priority: is it fair?
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Concurrency: state models & Java programs
Concurrency: state models & Java programs
Graphical animation of behavior models
Proceedings of the 22nd international conference on Software engineering
The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
Fluent model checking for event-based systems
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
Incremental elaboration of scenario-based specifications and behavior models using implied scenarios
ACM Transactions on Software Engineering and Methodology (TOSEM)
Behavioral interface specification languages
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
A model is a simplified representation of the real world and, as such, includes only those aspects of the real-world system relevant to the problem at hand. The paper reviews a modelling approach to the design of concurrent programs in which models represent the behaviour of concurrent Java programs. A notation based on CSP is used to model behaviour. Tool support enables both interactive model exploration and the mechanical verification of required safety and liveness properties. Models are systematically translated into Java programs. The approach, supported by a textbook, forms the basis of a course at the authors' institution and has also been widely adopted elsewhere. With the benefit of five years hindsight, we examine the strengths and weaknesses of the approach and look at some of the subsequent remedies and directions.