Page tree
Skip to end of metadata
Go to start of metadata

这个页面展示CISQ/OMG质量测量规则在系统技术层面的覆盖,这些应用基于JEE技术和CAST AIP支持的Oracle SQL。JEE和Oracle SQL是许多应用中使用的常见技术堆栈的一个例子。必要时CAST可以帮助为其它技术组合创建CISQ覆盖率的概述。

OMG 特征OMG 规则和名称级别AIP QR IdAIP QR 名称说明源技术
可维护性ASCMM-MNT-02: 类元素过度继承类元素的具体实现技术N/A

JEE
可维护性ASCMM-MNT-02: 类元素过度继承类元素的具体实现技术N/A

不适用于数据库技术环境。关系数据库不处理对象(因此也不处理继承)——它们处理实体和关系。

SQL
可维护性ASCMM-MNT-04: 可调用和方法控制外部调用的元素数系统 / 技术 / 单元7778避免输出端处的工件

直接执行规则。

然而对于JEE, OMG要求输出端数阈值的默认值为5,而AIP中的默认值为4。

JEE / SQL
可维护性ASCMM-MNT-07: 模块间依赖周期技术7292避免包之间的循环调用和继承直接执行规则。JEE
可维护性ASCMM-MNT-07: 模块间依赖周期技术N/A
不适用于数据库技术环境。这些模块通常使用编程语言开发。SQL
可维护性ASCMM-MNT-09: 水平层数过多系统AC架构检查器在定义架构时,会检测到过多的层。JEE
可维护性ASCMM-MNT-09: 水平层数过多系统N/A
不适用于DBMS技术。SQL
可维护性ASCMM-MNT-10: 命名可调用和方法控制元素的多层跨度系统AC架构检查器在定义架构时,将检测跨多个层的组件。JEE
 可维护性ASCMM-MNT-10: 命名可调用和方法控制元素的多层跨度系统N/A
不适用于DBMS技术。SQL
可维护性ASCMM-MNT-12: 命名可调用和方法控制元素的多层跨度系统AC架构检查器使用架构检查器定义架构并指定层之间的授权链接允许使用跳过层的调用精确定位组件。JEE
可维护性ASCMM-MNT-12: 命名可调用和方法控制元素的多层跨度系统N/A
不适用于DBMS技术。SQL
可维护性ASCMM-MNT-17: 类元素过度继承级别技术7802避免使用高层次的继承树直接执行规则。JEE
可维护性ASCMM-MNT-17: 类元素过度继承级别技术N/A
不适用于数据库技术环境。SQL
可维护性ASCMM-MNT-18: 类元素的子元素过多技术7792避免数量较多的子类直接执行规则。JEE
可维护性ASCMM-MNT-18: 类元素的子元素过多技术N/A
不适用于数据库技术环境。SQL
可维护性ASCMM-MNT-20: 无法访问的命名为可调用的或方法控制元素系统 / 技术7860避免未引用的函数

JEE:规则的直接实现。

SQL:此规则列出所有未引用的函数、过程和包函数和过程。

JEE / SQL
可维护性ASCMM-MNT-20: 无法访问的命名为可调用的或方法控制元素系统 / 技术7908避免未引用的方法直接执行规则。JEE
性能效率ASCPEM-PRF-04: 数据资源读写访问过于复杂系统 / 技术 / 单元7808避免使用包含子查询的SQL语句的工件

子查询增加了SQL查询的复杂性。这个AIP规则检查嵌套的SQL查询。

JEE
性能效率ASCPEM-PRF-04: 数据资源读写访问过于复杂系统 / 技术 / 单元7130避免具有嵌套子查询深度的工件嵌套子查询增加了SQL查询的复杂性。这个AIP规则检查嵌套的SQL查询。JEE
性能效率ASCPEM-PRF-05: 索引元素不支持数据资源的读访问系统 / 技术 / 单元-

JEE
性能效率ASCPEM-PRF-05: 索引元素不支持数据资源的读访问系统 / 技术 / 单元7902避免任何索引都不支持的SQL查询直接执行规则。SQL
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7206避免使用InstanceOf内部循环OMG规则应用于循环内部类型检查的情况。JEE
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7200避免在循环中串接字符串OMG规则是为循环内部的连接而实现的。JEE
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7210避免在循环中实例化OMG规则是为循环中的类实例化实现的。JEE
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7954避免在循环内部间接串接字符串OMG规则用于在循环中调用的函数中进行连接。JEE
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7204避免在循环终止表达式中调用方法OMG规则是为循环条件下的方法调用实现的。JEE
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7424避免在循环中使用SQL查询SQL查询在资源方面可能很昂贵。这个AIP规则检查在循环中执行的查询。JEE / SQL
性能效率ASCPEM-PRF-08: 控制流循环块中需要重要资源元素的控制元素系统 / 技术 / 单元7962避免在循环中直接或间接地远程调用OMG规则是为循环中的EJB或SAL调用实现的。JEE
性能效率ASCPEM-PRF-09: 具有过多数据资源访问的非存储SQL可调用控件元素技术 / 单元7914避免直接访问数据库表OMG规则的严格实现:禁止在Java代码中使用非存储的SQL过程JEE
性能效率ASCPEM-PRF-09: 具有过多数据资源访问的非存储SQL可调用控件元素技术 / 单元-

SQL
性能效率ASCPEM-PRF-10: 非SQL命名的可调用和方法控件元素,具有过多的数据资源访问系统8110

当需要多个数据访问时,使用专用存储过程

OMG规则在Java代码中为SQL调用实现。它考虑了通过显式SQL命令和存储过程进行的任何数据库访问。JEE
性能效率ASCPEM-PRF-10: 非SQL命名的可调用和方法控件元素,具有过多的数据资源访问系统-

SQL
性能效率ASCPEM-PRF-11: 来自外部指定数据管理器组件的数据访问控制元素系统 / 技术AC架构检查器使用架构检查器定义架构并指定层之间的授权链接允许使用跳过层的调用精确定位组件。JEE
性能效率ASCPEM-PRF-11: 来自外部指定数据管理器组件的数据访问控制元素系统 / 技术N/A
不适用于DBMS技术。SQL
性能效率ASCPEM-PRF-12: 可存储以及成员数据元素可存储和成员数据元素的聚合过多技术 / 单元7424避免在循环中使用SQL查询SQL查询在资源方面可能很昂贵。这个AIP规则检查在循环中执行的查询。JEE
性能效率ASCPEM-PRF-12: 可存储以及成员数据元素可存储和成员数据元素的聚合过多技术 / 单元N/A
不适用于数据库技术环境。SQL
性能效率ASCPEM-PRF-14: 可存储以及成员数据元素内存分配缺少反分配控制元素技术 / 单元N/A
不适用于Java环境中,在Java环境中内存是完全管理的。JEE / SQL
性能效率ASCPEM-PRF-15: 可存储以及成员数据元素引用缺少去引用控件元素技术 / 单元7562避免类型集合的静态字段OMG规则是为静态集合变量实现的,这些静态集合变量是具有潜在增加内存的存储结构,它们是在应用的生命周期中创建的,不可能被解除引用。JEE
性能效率ASCPEM-PRF-15: 可存储以及成员数据元素引用缺少去引用控件元素技术 / 单元N/A
不适用于数据库技术环境。SQL
可靠性ASCRM-CWE-120: 不检查输入大小的缓冲区复制技术 / 单元-

JEE / SQL
可靠性ASCRM-CWE-252-data: 未选中的返回指定可调用和方法控制元素的参数值,该元素具有对数据资源的读、写和管理访问权限系统 / 技术 / 单元8112避免数据处理操作执行状态处理不当通过检查数据访问操作期间异常触发器的正确处理,在Java上下文中实现OMG规则。JEE
可靠性ASCRM-CWE-252-data: 未选中的返回指定可调用和方法控制元素的参数值,该元素具有对数据资源的读、写和管理访问权限系统 / 技术 / 单元-

SQL
可靠性ASCRM-CWE-704: 类型转换或CAST不正确技术 / 单元-

JEE / SQL
可靠性ASCRM-CWE-772: 在有效生命周期之后缺少资源的释放技术 / 单元8108

尽快关闭外面的流

OMG规则是在Java流的情况下实现的JEE
可靠性ASCRM-CWE-772: 在有效生命周期之后缺少资源的释放技术 / 单元8104尽快关闭数据库资源为Java DB访问(JDBC、JPA和Hibernate)实现的OMG规则JEE
可靠性ASCRM-CWE-772: 在有效生命周期之后缺少资源的释放技术 / 单元-

SQL
可靠性ASCRM-CWE-788: 缓冲区结束后的内存位置访问技术 / 单元N/A
在Java中,语言检测到超绑定访问,并将抛出异常JEE / SQL
可靠性ASCRM-RLB-02: 没有序列化控制元素的可序列化存储数据元素技术 / 单元-
不适用于数据库技术环境。JEE / SQL
可靠性ASCRM-RLB-03: 具有非序列化项元素的可序列化存储数据元素技术 / 单元7650可序列化类的所有类型都必须是可序列化的直接执行规则。JEE
可靠性ASCRM-RLB-03:具有非序列化项元素的可序列化存储数据元素技术 / 单元N/A
不适用于数据库技术环境。SQL
可靠性ASCRM-RLB-04: 没有适当比较控制元素的可持久存储数据元素技术 / 单元7504持久化类应该实现hashCode()和equals()OMG规则是在Hibernate持久性的情况下实现的。JEE
可靠性ASCRM-RLB-04: 没有适当比较控制元素的可持久存储数据元素技术 / 单元N/A
不适用于数据库技术环境。SQL
可靠性ASCRM-RLB-05: 用于在应用服务器上运行的组件中的运行时资源管理控制元素技术 / 单元7728避免为在应用服务器上运行的应用创建线程OMG规则用于禁止创建线程。JEE
可靠性ASCRM-RLB-05: 用于在应用服务器上运行的组件中的运行时资源管理控制元素技术 / 单元N/A
不适用于数据库技术环境。SQL
可靠性ASCRM-RLB-10: 来自外部指定数据管理器组件的数据访问控制元素系统 / 技术AC架构检查器使用架构查器定义架构并指定层之间的授权链接允许使用跳过层的调用精确定位组件。JEE
可靠性ASCRM-RLB-10: 来自外部指定数据管理器组件的数据访问控制元素系统 / 技术N/A
不适用于DBMS技术。。SQL
可靠性ASCRM-RLB-11: 具有非最终静态存储或成员元素的多线程环境中命名的可调用和方法控制元素技术7154避免操作类中不是最终静态的字段OMG规则是在使用Struts操作实现多线程的情况下实现的。JEE
可靠性ASCRM-RLB-11: 具有非最终静态存储或成员元素的多线程环境中命名的可调用和方法控制元素技术N/A
不适用于数据库技术环境。SQL
可靠性ASCRM-RLB-13: 模块间依赖周期技术7292避免包之间的循环调用和继承直接执行规则。JEE
可靠性ASCRM-RLB-13: 模块间依赖周期技术N/A
不适用于数据库技术环境。SQL
可靠性ASCRM-RLB-14: 引用子类元素的父类元素技术7934避免知道子类(或接口)的超类(或接口)直接执行规则。JEE
可靠性ASCRM-RLB-14: 引用子类元素的父类元素技术N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-022: 路径遍历输入中性化不当系统 / 技术7752避免文件路径操作漏洞 ( CWE-73 )直接执行规则。JEE
安全性ASCSM-CWE-022: 路径遍历输入中性化不当系统 / 技术N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-078: OS命令注入错误的输入中性化系统 / 技术7748避免OS命令注入漏洞 ( CWE-78 )直接执行规则。JEE
安全性ASCSM-CWE-078: OS命令注入错误的输入中性化系统 / 技术N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-079: 跨站点脚本编写错误的输入中性化系统 / 技术7740避免跨站点脚本DOM漏洞 ( CWE-79 )直接执行规则。JEE
安全性ASCSM-CWE-079: 跨站点脚本编写错误的输入中性化系统 / 技术N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-089: SQL注入不当的输入中性化系统 / 技术7742避免SQL注入漏洞 ( CWE-89 )直接执行规则。JEE
安全性ASCSM-CWE-089: SQL注入不当的输入中性化系统 / 技术N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-99: 名称或引用解析错误的输入中性化系统 / 技术 / 单元7732避免未经验证的输入检查JSP环境中的输入验证JEE
安全性ASCSM-CWE-99: 名称或引用解析错误的输入中性化系统 / 技术 / 单元N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-120: 不检查输入大小的缓冲区复制技术 / 单元-

JEE / SQL
安全性ASCSM-CWE-129: 数组索引不正确的输入中性化系统 / 技术 -

不适用于数据库技术环境。


JEE / SQL
安全性ASCSM-CWE-134: 格式化字符串不恰当的输入中性化系统 / 技术 8098避免无控制格式字符串 (CWE-134)直接执行规则。JEE
安全性ASCSM-CWE-134: 格式化字符串不恰当的输入中性化系统 / 技术 N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-434: 上传错误的输入中性化系统 / 技术 7752避免文件路径操作漏洞 ( CWE-73 )直接执行规则。JEE
8218

CWE-434: 在接收HTTP Post时,应该检查内容类型

直接执行规则。
JEE
安全性ASCSM-CWE-434: 文件上传不当输入中性化系统 / 技术 N/A
不适用于数据库技术环境。SQL
安全性ASCSM-CWE-606: 未选中循环条件的输入系统 / 技术 -

JEE / SQL
安全性ASCSM-CWE-667: 共享资源错误锁定技术-

JEE / SQL
安全性ASCSM-CWE-672: 过期或释放的资源使用技术 / 单元8214

CWE-672: 不应使用过期或已释放的资源

直接执行规则。
JEE
安全性
ASCSM-CWE-672: 过期或释放的资源使用技术 / 单元
-

SQL
安全性ASCSM-CWE-681: 数字类型错误转换技术 / 单元8216

CWE-681: 避免在不兼容的变异过程中数据损坏

直接执行规则。
JEE
安全性
ASCSM-CWE-681: 数字类型错误转换技术 / 单元
-

SQL
安全性ASCSM-CWE-772: 在有效生命周期之后缺少资源的释放技术 / 单元8108尽快关闭外面的流OMG规则是在Java流的情况下实现的。JEE
安全性ASCSM-CWE-772: 在有效生命周期之后缺少资源的释放技术 / 单元8104尽快关闭数据库资源 为Java DB访问(JDBC、JPA和Hibernate)实现的OMG规则。JEE
安全性ASCSM-CWE-772: 在有效生命周期之后缺少资源的释放技术 / 单元-

SQL
安全性ASCSM-CWE-789: 不受控制的内存分配系统 / 技术 -

JEE / SQL
安全性ASCSM-CWE-798: 用于远程身份验证的硬编码凭据使用技术 / 单元8222

CWE-798 : 使用硬编码凭证

直接执行规则。
JEE
安全性
ASCSM-CWE-798: 用于远程身份验证的硬编码凭据使用技术 / 单元
-

SQL
安全性ASCSM-CWE-835: 具有无法达到出口条件的循环(无限循环)技术 / 单元7388避免工件具有递归调用直接执行规则。JEE
安全性ASCSM-CWE-835: 具有无法达到出口条件的循环(无限循环)技术 / 单元-

SQL

针对JEE和Oracle SQL应用的单元层CISQ/OMG质量度量规则详见针对JEE和Oracle SQL应用的CISQ/OMG自动化源代码测量标准覆盖 - 单元层

  • No labels