- 嵌入式軟件系統測試:基于形式化方法的自動化測試解決方案
- 殷永峰 姜博編著
- 497字
- 2021-02-22 15:46:19
3.1.5 基于Petri網模型
Petri網模型可以較好地描述并發系統,它用一組狀態和帶token的遷移表示控制流。Petri網是一種系統的基于數學和圖形的描述和分析工具。對于具有并發、異步、分布、并行、不確定性或隨機性的信息處理系統,利用該方法可以方便地進行分析,從而得到有關系統結構和動態行為的信息。Petri網已廣泛應用于復雜系統仿真建模及測試領域。
用于實時系統建模的Petri網變體包括時間Petri網(Timed Petri Net)、ER-nets等,在這些變體中,位置、token、遷移等可以和時間約束相關聯。時間Petri網對Petri網進行了改進,在遷移中引入了遷移實施的相對時間因素,使得它們能夠被應用于實時系統分析。時間Petri網對于系統行為和時間屬性都可以進行分析,其中可達性(Reachability)和可調度性(Schedulability)可以同時作為系統性能參考,分析實時并發的復雜系統性能較為有效。時間Petri網的典型代表有Merlin的時間Petri網、Coolahan的時延Petri網、國內學者林闖的高級隨機Petri網等,其中以Merlin的時間Petri網最為常用。
基于Petri網模型的測試方法可以高度抽象地描述系統行為,屏蔽系統硬件實施細節,主要用于驗證系統設計的正確性、安全性和可靠性。但基于該模型的用例生成存在的問題是:它只能生成事件序列的時序信息,而不能生成實際測試輸入數據(如定量的時間信息數據)。
推薦閱讀
- FuelPHP Application Development Blueprints
- Java加密與解密的藝術(第2版)
- Python高效開發實戰:Django、Tornado、Flask、Twisted(第2版)
- Python機器學習經典實例
- Redis Essentials
- Learning Modular Java Programming
- 監控的藝術:云原生時代的監控框架
- Hacking Android
- Python硬件編程實戰
- Java并發實現原理:JDK源碼剖析
- Java程序設計實用教程(第2版)
- Professional JavaScript
- 你好!Java
- Backbone.js Patterns and Best Practices
- Spring Boot 2+Thymeleaf企業應用實戰