We identify and demonstrate a weakness of Petri Nets (PN) in specifying composite behavior of reactive systems. Specifically, we show how, when specifying multiple requirements in one PN model, modelers are obliged to specify mechanisms for combining these requirements. This yields, in many cases, over-specification and incorrect models. We demonstrate how some execution paths are missed, and some are generated unintentionally. To support this claim, we analyze PN models from the literature, identify the combination mechanisms, and demonstrate their effect on the correctness of the model. To address this problem, we propose to model the system behavior using behavioral programming (BP), a software development and modeling paradigm designed for seamless integration of independent requirements. Specifically, we demonstrate how the semantics of BP, which define how to interweave scenarios into a single model, allow avoiding the over-specification. Additionally, while BP maintains the same mathematical properties as PN, it provides means for changing the model dynamically, thus increasing the agility of the specification. We compare BP and PN in quantitative and qualitative measures by analyzing the models, their generated execution paths, and the specification process. Finally, while BP is supported by tools that allow for applying formal methods and reasoning techniques to the model, it lacks the legacy of PN tools and algorithms. To address this issue, we propose semantics and a tool for translating BP models to PN and vice versa.
翻译:我们发现并展示了Petri Nets(Petri Nets)在具体描述反应系统的综合行为方面的弱点。 具体地说, 我们提出, 当在一个PN模型中指定多重要求时, 模型人必须如何指定组合这些要求的机制。 在许多情况下, 这产生了超分和不正确的模型。 我们展示了某些执行路径如何被错失, 有些执行路径是如何无意生成的。 为了支持这一主张, 我们从文献中分析Petri Nets (Petri Nets) 模型, 确定组合机制, 并展示其对模型正确性的影响。 为了解决这个问题, 我们提议使用行为编程(BP)、 软件开发和模型设计模型模型模型模型模型来模拟系统行为模式的行为模式。 具体地说, 我们展示了BP的语义学, 如何将各种设想的情景编织成单一模型, 避免过于具体化。 此外, 虽然BPP保持与 PN相同的数学数学数学数学性质, 提供了动态改变模型的方法, 从而提高规格的易性。 我们建议, 在定量和定性措施中, 将BPL 和规格模型 工具 用于我们使用SLAL 的翻译工具 。