Javascript must be enabled to continue!
Debugging Parallel DEVS
View through CrossRef
To this day, debugging support for the DEVS formalism has been provided, at best, in an ad-hoc way. The intricacies of dealing with the interplay of different notions of (simulated) time, formalism semantics, and user input have not been thoroughly investigated. This paper presents a visual modeling, simulation, and debugging environment for Parallel DEVS, which builds on a theoretical foundation for debugging DEVS models. We take inspiration from both code debugging and the simulation world to model our environment; we transpose a set of useful code debugging concepts onto Parallel DEVS, and combine those with simulation-specific operations, such as as-fast-as-possible simulation and (scaled) real-time execution. Apart from these common debugging operations, we introduce new features to the debugging of Parallel DEVS models, such as “god events,” which can alter the model state during simulation, and reversible debugging, which allows one to go back in time. To achieve this, the PythonPDEVS simulator is deconstructed and reconstructed: the modal part of the simulator–debugger, as well as the debugging operations, are modeled using the Statecharts formalism. These models are combined, resulting in a model of the timed, reactive behavior of a debuggable simulator for Parallel DEVS. The code for the simulator is automatically synthesized from this model. To improve usability, we combine the simulator with a visual modeling environment, allowing for visual and interactive live debugging.
Title: Debugging Parallel DEVS
Description:
To this day, debugging support for the DEVS formalism has been provided, at best, in an ad-hoc way.
The intricacies of dealing with the interplay of different notions of (simulated) time, formalism semantics, and user input have not been thoroughly investigated.
This paper presents a visual modeling, simulation, and debugging environment for Parallel DEVS, which builds on a theoretical foundation for debugging DEVS models.
We take inspiration from both code debugging and the simulation world to model our environment; we transpose a set of useful code debugging concepts onto Parallel DEVS, and combine those with simulation-specific operations, such as as-fast-as-possible simulation and (scaled) real-time execution.
Apart from these common debugging operations, we introduce new features to the debugging of Parallel DEVS models, such as “god events,” which can alter the model state during simulation, and reversible debugging, which allows one to go back in time.
To achieve this, the PythonPDEVS simulator is deconstructed and reconstructed: the modal part of the simulator–debugger, as well as the debugging operations, are modeled using the Statecharts formalism.
These models are combined, resulting in a model of the timed, reactive behavior of a debuggable simulator for Parallel DEVS.
The code for the simulator is automatically synthesized from this model.
To improve usability, we combine the simulator with a visual modeling environment, allowing for visual and interactive live debugging.
Related Results
How developers debug
How developers debug
Debugging software is an inevitable chore, often difficult and more time-consuming than expected, giving it the nickname the “ dirty little secret of computer science.” Surprisingl...
DEVSim++ Toolset for Defense Modeling and Simulation and Interoperation
DEVSim++ Toolset for Defense Modeling and Simulation and Interoperation
Discrete Event Systems Specification (DEVS) formalism supports the specification of discrete event models in a hierarchical and modular manner. Efforts have been made to develop th...
Repurposed endogenous virus-like vesicles mediate dendritic cell long-range antigen presentation and T cell activation for enhanced cancer vaccination
Repurposed endogenous virus-like vesicles mediate dendritic cell long-range antigen presentation and T cell activation for enhanced cancer vaccination
Summary
Dendritic cells (DCs) release extracellular vesicles (DEVs) that amplify antigen presentation while incorporating patient-derived, rapidl...
What is reverse debugging? Classification of reverse debugging methods
What is reverse debugging? Classification of reverse debugging methods
Abstract
The article discusses an approach to speeding up the search complex errors in software – reverse debugging. In this approach, debugging is divided into two ...
A Debugging Game for Probabilistic Models
A Debugging Game for Probabilistic Models
One of the major advantages of model checking over other formal methods is its ability to generate a counterexample when a model does not satisfy is its specification. A counterexa...
Strategi Teknik Debugging untuk Sistem Operasi Windows
Strategi Teknik Debugging untuk Sistem Operasi Windows
The debugging process is a critical step in software development, especially for the Windows operating system, which offers various tools and techniques to address software issues....
Oldest Population of Caucasus According to Mythological Data
Oldest Population of Caucasus According to Mythological Data
According to mythological data ancient population of Caucasus was represented by Giants. Among them are one-eyed Goliaths also. Theymainly appear as shepherds. Goliaths obtained al...
Streamlining Debugging with MDugger: Catching the Uncaught
Streamlining Debugging with MDugger: Catching the Uncaught
<p>This article is about our latest development in the field of automated software debugging. As experienced developers in the software industry, we have encountered the chal...

