Stochastic Petri Nets (SPNs) are a graphical tool for the formal description of systems with the features of concurrency, synchronization, mutual exclusion and conflict. SPN models can be described with an input language called CSPL (C-based SPN language). Spin is a generic verification system that supports the design and verification of software systems. PROMELA (Protocol or Process Meta Language) is Spin’s input language. This work provides the translation rules from a subset of PROMELA constructs to CSPL, and also offers an experimental tool PCX (PROMELA to CSPL Translator) and approach to explore the specification and analysis of stochastic properties for systems. The PCX tool translates the formal description, written in PROMELA, into an SPN, represented by CSPL. The approach requires users to add stochastic property information, during (or after) the translation. Translation of the PROMELA model to a CSPL specification will allow the analysis of non-functional requirements such as reliability, availability, and performance through SPNP (Stochastic Petri Net Package), a stochastic analysis tool. This is useful in the design and validation of performance where parameters such as failure rate or throughput are available. Moreover, certain structural and architectural features of software can be evaluated and considered within the context of Spin-verifiable properties. This approach provides additional flexibility to the PROMELA specification-modeling paradigm to include stochastic analysis of structural and non-functional properties. Thus, PCX provides a practical bridge between system verification and system validation.
[1]
Bernd Grahlmann,et al.
Profiting from Spin in PEP
,
1998
.
[2]
Gerard J. Holzmann,et al.
The Model Checker SPIN
,
1997,
IEEE Trans. Software Eng..
[3]
Roger S. Pressman,et al.
Software Engineering: A Practitioner's Approach
,
1982
.
[4]
E. Najm.
Reactive Spin and Promela
,
1995
.
[5]
Wolfgang Reisig,et al.
Combining Petri Nets and Other Formal Methods
,
1992,
Application and Theory of Petri Nets.
[6]
Giuliana Franceschinis,et al.
On the Computation of Performance Characteristics of Concurrent Programs Using GSPNs
,
1994,
Perform. Evaluation.
[7]
L Palumbo Daniel,et al.
Advanced Techniques in Reliability Model Representation and Solution
,
2003
.
[8]
Chang-Yu Wang,et al.
Integration of Specification for Modeling and Specification for System Design
,
1993,
Application and Theory of Petri Nets.
[9]
Dan Craigen,et al.
Formal Methods Adoption: What's Working, What's Not!
,
1999,
SPIN.
[10]
Gianfranco Balbo,et al.
On the success of stochastic Petri nets
,
1995,
Proceedings 6th International Workshop on Petri Nets and Performance Models.