[发明专利]一种线性时态逻辑规范的通用并行挖掘方法在审
申请号: | 201710139684.7 | 申请日: | 2017-03-09 |
公开(公告)号: | CN106886417A | 公开(公告)日: | 2017-06-23 |
发明(设计)人: | 何积丰;熊家文;史建琦;黄滟鸿;李昂;方徽星 | 申请(专利权)人: | 华东师范大学;上海丰蕾信息科技有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京辰权知识产权代理有限公司11619 | 代理人: | 郎志涛 |
地址: | 200062 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 线性 时态 逻辑 规范 通用 并行 挖掘 方法 | ||
技术领域
本发明涉及一种计算机技术领域,尤其是模型检测领域中的线性时态逻辑的规范挖掘技术,具体涉及一种线性时态逻辑规范的通用并行挖掘方法。
背景技术
与其他工程产品不同的是,软件产品在其整个生命周期中会不断地变化演进。而在对软件进行维护、更新的过程中,为保持系统原有功能的正确性,维护人员通常需要付出极大的努力。据统计,软件的维护成本占据了软件开发成本的90%。因此,研究如何降低软件维护成本具有十分现实的意义。
而软件维护成本之中的绝大部分,都源于对遗留源代码理解吸收所产生的成本。有研究表明,为理解原有代码付出的代价超过了总维护代价的50%。通常,开发人员会选择阅读软件规范文档来辅助软件程序的理解。然而,在许多企业中,开发人员迫于市场应用的时效性,疏忽了规范文档的编写与维护,以至于很大部分的软件规范文档并没有随着软件程序的演化得到及时的更新。这样,经过若干次演化周期,最新版本的软件程序早就与原始的规范文档大相径庭。因此,如何及时地更新软件规范,成为了一个值得探索的问题。
另外,为了保证软件系统的正确性,人们提出了模型检测技术。例如申请号为201510395404.X,发明名称为安全交换协议模型检测方法的中国发明专利,公开了一种安全交换协议模型检测方法,该方法的步骤包括:1)构建安全交换协议模型;2)构建安全属性模型;3)构建攻击者模型;4)状态约简以及模型检测。
模型检测技术主要通过对软件系统进行抽象建模,并采用一系列的形式化性质来验证模型是否符合特定性质,以研究系统是否具有某种性质,或违反某种约束。线性时态逻辑通常用于形式化定义模型所该具备的性质和约束。然而,构造形式化性质的困难一直阻碍了模型检测技术的广泛应用。
因此,有必要寻找一种方法,能够自动地从软件系统中获取软件系统具备的性质或约束。正如人们观察自然现象来了解自然规律,可以采用某种自动化的方法,根据软件系统的运行日志,运行轨迹来学习、挖掘软件系统所具备的性质。
发明内容
为解决以上问题,本发明公开了一种线性时态逻辑规范的通用并行挖掘方法,主要用于从软件系统的日志文件中挖掘日志中各种事件之间所具备的线性时序关系,用于获取日志中事件之间的规律,以推测出软件程序中可能具备的线性时态性质,从而辅助对程序的理解分析,也可用于通信协议分析。
具体的,本发明公开了一种线性时态逻辑规范的通用并行挖掘方法,包括如下步骤:
预处理步骤,对日志文件进行分割,分离出日志文件中的独立轨迹,获取日志文件中所有事件的集合以及每个事件在独立轨迹中出现的位置;
规范实例生成步骤,根据输入的规范模板集合,将其中的变量与日志事件集合中的事件依次进行绑定,以获取规范实例候选集合;
规范实例验证步骤,依次对规范实例候选集合中的规范实例进行验证,计算其在日志中的支持度、置信度情况;
结果筛选步骤,根据输入的挖掘要求,从规范实例候选集合中去除支持度、置信度不符合要求的规范实例。
优选的,如上所述的线性时态逻辑规范的通用并行挖掘方法,所述预处理步骤包括如下子步骤:
轨迹分离步骤,通过文本处理,将日志中的数据读取到内存中,按照分隔符进行分离,获取一个元素为单条轨迹所组成的集合;
事件集合获取步骤,分别扫描每条轨迹,以上述分隔符对轨迹进行分割处理,获取原子事件集合;
事件位置信息获取步骤,扫描每条轨迹,记录事件在轨迹中出现的位置信息。
优选的,如上所述的线性时态逻辑规范的通用并行挖掘方法,所述预处理步骤的实现过程为:顺序地从日志文件中读取字符串,在遇到分隔符时,识别并判断该分隔符为事件分隔符或者是轨迹分隔符,若为轨迹分隔符,则当前轨迹终止并新建一个轨迹存储对象;若为事件分隔符,则记录新的事件位置信息,并将该事件加入到事件集合之中。
优选的,如上所述的线性时态逻辑规范的通用并行挖掘方法,所述规范实例生成步骤包括如下三个子步骤:
规范模板分析步骤,对输入的规范模板进行语法分析,获取规范模板中的变量;
变量绑定步骤,用事件集合中的事件,对规范模板中的变量进行替换,即将规范模板中的变量绑定为特定的事件;
实例生成步骤,规范模板中的变量都绑定事件后,则成为一个具体的规范实例,不同规范模板变量绑定不同的事件,以生成不同的规范实例。
优选的,如上所述的线性时态逻辑规范的通用并行挖掘方法,所述规范实例验证步骤包括如下三个子步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东师范大学;上海丰蕾信息科技有限公司,未经华东师范大学;上海丰蕾信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710139684.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:多用户空间处理方法及装置
- 下一篇:HTML界面控件贴