形式化验证是通过自动证明程序来确保计算机程序按预期运行的过程。给定函数行为的数学规范以及代码执行环境的假设(如操作系统行为和合理输入),形式化验证能确定代码是否会在任何符合假设的输入下违反规范。
尽管形式化验证能产生更安全、更少错误的代码,但很少用于大型商业软件项目。开发人员缺乏时间编写详细的函数规范,而验证团队又不熟悉正在开发的软件。
在某机构云服务的自动推理团队中,通过以下六个关键组件将形式化验证集成到软件开发流程中:
在某机构C通用库的开发中,应用该方法取得了显著成效:
正在扩展该方法的应用代码库和自动验证功能范围,同时评估可验证代码的长期维护最佳实践,以及如何让新开发者快速掌握现有可验证代码库。
该方法成功证明了形式化验证在大型商业软件开发中的可行性,为提升代码质量和安全性提供了有效途径。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。