School of Computer Engineering, Iran University of Science and Technology, Tehran, Iran
In recent years, formal methods have been used as an important tool for performance evaluation and verification of a wide range of systems. In the view points of engineers and practitioners, however, there are still some major difficulties in using formal methods. In this paper, we introduce a new formal modeling language to fill the gaps between object-oriented programming languages (OOPLs) used by engineers and the formalisms used for evaluation and verification purposes. We propose the syntax and semantics of a new object-oriented modeling language for discrete-event systems called RayLang. We have designed the syntax of RayLang similar to OOPLs. In RayLang models, objects that are instantiated from classes, run concurrently and can communicate with each other by requesting services. Every object in RayLang models has some internal state variables and some service handlers for executing the requests of other objects. We have shown that Markovian RayLang models can be transformed into continuous-time Markov chains (CTMCs) and then can be solved by existing solution techniques. For modeling, discrete-event simulation and analytic solution of RayLang models, we have implemented these models in the PDETool framework.