基于模块分解技术的软件缺陷检测系统的复杂性分析方法

    公开(公告)号:CN102521126B

    公开(公告)日:2015-11-25

    申请号:CN201110398217.9

    申请日:2011-12-05

    Abstract: 本发明公开一种基于模块分解技术的软件缺陷检测系统(DTS)的复杂性分析方法,包括:A,根据所述DTS缺陷检测原理,将该分析方法的流程包括由前端输入预处理模块完成的前端输入预处理步骤、由预分析模块完成预分析的步骤、由正式分析模块完成正式分析的步骤;B,对所述的前端输入预处理模块、预分析模块和正式分析模块的内部所有分析单元,按其调用顺序及依赖关系依次分析其复杂度,得到每个分析单元复杂性分布的性质和规律;C,根据步骤B的分析结果,统计得出整个DTS系统的复杂性分布情况。采用本发明,通过对每个模块内部的分析单元的复杂性分析,统计得出DTS的复杂性分布情况,克服了现有复杂性分析方法不够系统全面等的缺点。

    基于模块分解技术的软件缺陷检测系统的复杂性分析方法

    公开(公告)号:CN102521126A

    公开(公告)日:2012-06-27

    申请号:CN201110398217.9

    申请日:2011-12-05

    Abstract: 本发明公开一种基于模块分解技术的软件缺陷检测系统(DTS)的复杂性分析方法,包括:A,根据所述DTS缺陷检测原理,将该分析方法的流程包括由前端输入预处理模块完成的前端输入预处理步骤、由预分析模块完成预分析的步骤、由正式分析模块完成正式分析的步骤;B,对所述的前端输入预处理模块、预分析模块和正式分析模块的内部所有分析单元,按其调用顺序及依赖关系依次分析其复杂度,得到每个分析单元复杂性分布的性质和规律;C,根据步骤B的分析结果,统计得出整个DTS系统的复杂性分布情况。采用本发明,通过对每个模块内部的分析单元的复杂性分析,统计得出DTS的复杂性分布情况,克服了现有复杂性分析方法不够系统全面等的缺点。

    循环语句中变量抽象取值的迭代求精方法

    公开(公告)号:CN102495800A

    公开(公告)日:2012-06-13

    申请号:CN201110400173.9

    申请日:2011-12-05

    Abstract: 本发明提供了一种循环语句中变量抽象取值的迭代求精方法,所述方法包括:根据控制流图CFG进行数据流迭代,得到上次迭代区间LastDomain;根据循环头节点LoopHead的循环条件进行循环语句块的数据流迭代,得到本次迭代区间ThisDomain;将LastDomain和ThisDomain进行加宽Widening操作。采用本发明公开的技术方案能够解决循环语句中变量抽象取值迭代计算收敛速度慢或不收敛的技术问题。

    应用程序切片技术的静态缺陷检测方法

    公开(公告)号:CN102110051B

    公开(公告)日:2014-02-05

    申请号:CN201010624200.6

    申请日:2010-12-31

    Abstract: 本发明公开一种应用程序切片技术的静态缺陷检测方法,包括:A.获取待检测缺陷模式的缺陷特征;B.根据所述的缺陷特征,计算所有分支节点的路径条件,并生成切片准则;C.按照所述的切片准则,遍历控制流图进行程序切片,对控制流图进行重构,得到已重构的控制流图;D.利用所述已重构的控制流图,应用缺陷状态迭代算法,进行缺陷模式状态机计算;E.若当前控制流图节点为非汇合节点,则将所有缺陷状态中的状态条件进行汇聚及更新操作;F.如果当前控制流图节点为汇合节点,则按照当前缺陷状态的状态条件进行状态合并。采用该方法能够在一定程度上提高缺陷检测的效率,并减少基于路径合并策略的路径敏感检测方法的误报。

    应用符号分析的软件测试方法

    公开(公告)号:CN101840372A

    公开(公告)日:2010-09-22

    申请号:CN201010185904.8

    申请日:2010-05-28

    Abstract: 本发明公开一种应用符号分析的软件测试方法,该方法包括:A、给出一个符号运算系统,包括符号表达式的表示、化简、运算和计算符号表达式的取值区间;B、给出将程序中各变量间的具体运算映射为符号运算的方法;C、给出程序分支语句对符号取值限定区间的计算方法;D、给出符号分析在程序控制流图上的计算方法。应用本发明的应用符号分析的软件测试方法,能够处理软件静态测试中的变量相关性问题,精确地计算每个程序位置上的变量取值信息,提高软件静态测试的准确性。

    应用程序切片技术的静态缺陷检测方法

    公开(公告)号:CN102110051A

    公开(公告)日:2011-06-29

    申请号:CN201010624200.6

    申请日:2010-12-31

    Abstract: 本发明公开一种应用程序切片技术的静态缺陷检测方法,包括:A、获取待检测缺陷模式的缺陷特征;B、根据所述的缺陷特征,计算所有分支节点的路径条件,并生成切片准则;C、按照所述的切片准则,遍历控制流图进行程序切片,对控制流图进行重构,得到已重构的控制流图;D、利用所述已重构的控制流图,应用缺陷状态迭代算法,进行缺陷模式状态机计算;E、若当前控制流图节点为非汇合节点,则将所有缺陷状态中的状态条件进行汇聚及更新操作;F、如果当前控制流图节点为汇合节点,则按照当前缺陷状态的状态条件进行状态合并。采用该方法能够在一定程度上提高缺陷检测的效率,并减少基于路径合并策略的路径敏感检测方法的误报。

    一种基于别名分析技术的软件测试方法

    公开(公告)号:CN102023923B

    公开(公告)日:2014-07-02

    申请号:CN201010622568.9

    申请日:2010-12-28

    Abstract: 本发明公开一种基于别名分析技术的软件测试方法,通过在控制流上对一些涉及别名关系的语句进行特殊分析,利用空间抽象三元模型将变量声明、值和内存空间进行关联,这个过程迭代到控制流不再扩展为止;并通过定义别名分析的三元模型,区别于传统的二元变量-值模型,增加了内存空间抽象;该方法在软件静态测试过程的前期收集了同一抽象内存空间中所有互为别名的变量,将其值进行有效的关联,并将其应用在控制流图的语句节点上。通过实验证明,本发明的软件测试方法相比未应用别名分析技术的现有测试方法,具有有效解决由别名关系造成变量值不同步所产生的漏报问题,能在一定程度上提高静态测试的精度。

    应用符号分析的软件测试方法

    公开(公告)号:CN101840372B

    公开(公告)日:2012-03-14

    申请号:CN201010185904.8

    申请日:2010-05-28

    Abstract: 本发明公开一种应用符号分析的软件测试方法,该方法包括:A、给出一个符号运算系统,包括符号表达式的表示、化简、运算和计算符号表达式的取值区间;B、给出将程序中各变量间的具体运算映射为符号运算的方法;C、给出程序分支语句对符号取值限定区间的计算方法;D、给出符号分析在程序控制流图上的计算方法。应用本发明的应用符号分析的软件测试方法,能够处理软件静态测试中的变量相关性问题,精确地计算每个程序位置上的变量取值信息,提高软件静态测试的准确性。

    一种基于别名分析技术的软件测试方法

    公开(公告)号:CN102023923A

    公开(公告)日:2011-04-20

    申请号:CN201010622568.9

    申请日:2010-12-28

    Abstract: 本发明公开一种基于别名分析技术的软件测试方法,通过在控制流上对一些涉及别名关系的语句进行特殊分析,利用空间抽象三元模型将变量声明、值和内存空间进行关联,这个过程迭代到控制流不再扩展为止;并通过定义别名分析的三元模型,区别于传统的二元变量-值模型,增加了内存空间抽象;该方法在软件静态测试过程的前期收集了同一抽象内存空间中所有互为别名的变量,将其值进行有效的关联,并将其应用在控制流图的语句节点上。通过实验证明,本发明的软件测试方法相比未应用别名分析技术的现有测试方法,具有有效解决由别名关系造成变量值不同步所产生的漏报问题,能在一定程度上提高静态测试的精度。

Patent Agency Ranking