Formal modeling and analysis of an audio/video protocol: an industrial case study using UPPAAL

K. Havelund, A. Skou, K. Larsen, Kristian Lund
{"title":"Formal modeling and analysis of an audio/video protocol: an industrial case study using UPPAAL","authors":"K. Havelund, A. Skou, K. Larsen, Kristian Lund","doi":"10.1109/REAL.1997.641264","DOIUrl":null,"url":null,"abstract":"A formal and automatic verification of a real-life protocol is presented. The protocol, about 2800 lines of assembler code, has been used in products from the audio/video company Bang & Olufsen throughout more than a decade, and its purpose is to control the transmission of messages between audio/video components over a single bus. Such communications may collide, and one essential purpose of the protocol is to detect such collisions. The functioning is highly dependent on real-time considerations. Though the protocol was known to be faulty in that messages were lost occasionally, the protocol was too complicated in order for Bang & Olufsen to locate the bug using normal testing. However using the real-time verification tool UPPAAL, an error trace was automatically generated, which caused the detection of \"the error\" in the implementation. The error was corrected and the correction was automatically proven correct, again using UPPAAL. A future, and more automated, version of the protocol, where this error is fatal, will incorporate the correction. Hence, this work is an elegant demonstration of how model checking has had an impact on practical software development. The effort of modeling this protocol has in addition generated a number of suggestions for enriching the UPPAAL language. Hence, it's also an excellent example of the reverse impact.","PeriodicalId":231201,"journal":{"name":"Proceedings Real-Time Systems Symposium","volume":"119 6","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"211","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Real-Time Systems Symposium","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/REAL.1997.641264","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 211

Abstract

A formal and automatic verification of a real-life protocol is presented. The protocol, about 2800 lines of assembler code, has been used in products from the audio/video company Bang & Olufsen throughout more than a decade, and its purpose is to control the transmission of messages between audio/video components over a single bus. Such communications may collide, and one essential purpose of the protocol is to detect such collisions. The functioning is highly dependent on real-time considerations. Though the protocol was known to be faulty in that messages were lost occasionally, the protocol was too complicated in order for Bang & Olufsen to locate the bug using normal testing. However using the real-time verification tool UPPAAL, an error trace was automatically generated, which caused the detection of "the error" in the implementation. The error was corrected and the correction was automatically proven correct, again using UPPAAL. A future, and more automated, version of the protocol, where this error is fatal, will incorporate the correction. Hence, this work is an elegant demonstration of how model checking has had an impact on practical software development. The effort of modeling this protocol has in addition generated a number of suggestions for enriching the UPPAAL language. Hence, it's also an excellent example of the reverse impact.
音频/视频协议的形式化建模和分析:使用UPPAAL的工业案例研究
提出了一种对现实协议进行形式化和自动验证的方法。该协议,大约2800行汇编代码,已经在音频/视频公司Bang & Olufsen的产品中使用了十多年,其目的是通过单个总线控制音频/视频组件之间的消息传输。这种通信可能会发生冲突,而协议的一个基本目的就是检测这种冲突。功能高度依赖于实时考虑。虽然该协议因偶尔丢失消息而被认为是有缺陷的,但该协议过于复杂,以至于Bang & Olufsen无法通过常规测试找到漏洞。但是使用实时验证工具UPPAAL,会自动生成错误跟踪,导致在实现中检测到“错误”。错误得到了纠正,并且该纠正被自动证明是正确的,同样使用了UPPAAL。该协议的未来、更自动化的版本将包含此更正,其中此错误是致命的。因此,这项工作是模型检查如何对实际软件开发产生影响的一个优雅的演示。此外,对该协议进行建模的工作还产生了许多丰富UPPAAL语言的建议。因此,它也是反向影响的一个很好的例子。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信