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

Error rendering macro 'redirect'

Invalid URL: "CISQ - CWE - OWASP rules". Please provide a valid URL to redirect to.

This page presents the CISQ/OMG Quality Measurement Rules at unit-level for applications based on .NET technology and Microsoft SQL supported by CAST AIP. .NET and Microsoft SQL is an example of a common technology stack used in many applications. If necessary, CAST can help create overview of CISQ coverage for other combinations of technologies.

OMG CharacteristicsOMG Rule Id and NameLevelsAIP QR IdAIP QR NameDescriptionSource Techno
MaintainabilityASCMM-MNT-01: Control Flow Transfer Control Element outside Switch BlockUnit8032Avoid using a break statement in 'for' loopsOMG rule applied to the case of "break" in "for" loop.NET
MaintainabilityASCMM-MNT-01: Control Flow Transfer Control Element outside Switch BlockUnit7816Avoid using GOTO statement

The rule will list all Functions and Procedures using "GOTO" statements in the participating database.

SQL
MaintainabilityASCMM-MNT-03: Storable and Member Data Element Initialization with Hard-Coded LiteralsUnit-  .NET / SQL
MaintainabilityASCMM-MNT-05: Loop Value Update within the LoopUnit-  .NET / SQL
MaintainabilityASCMM-MNT-06: Commented Code Element Excessive VolumeUnit7126

Avoid Artifacts with high Commented-out Code Lines/Code Lines ratio

Direct implementation of the rule..NET / SQL
MaintainabilityASCMM-MNT-08: Source Element Excessive SizeUnit7842Avoid large Artifacts - too many Lines of CodeDirect implementation of the rule..NET / SQL
MaintainabilityASCMM-MNT-11: Callable and Method Control Element Excessive Cyclomatic Complexity ValueUnit7766Avoid Artifacts with High Cyclomatic ComplexityDirect implementation of the rule..NET / SQL
MaintainabilityASCMM-MNT-13: Callable and Method Control Element Excessive Number of Parameters Unit7770

Avoid Artifacts with too many parameters

Direct implementation of the rule..NET / SQL
MaintainabilityASCMM-MNT-14: Callable and Method Control Element Excessive Number of Control Elements involving Data Element from Data Manager or File Resource Unit-  .NET / SQL
MaintainabilityASCMM-MNT-15: Public Member ElementUnit3576Avoid declaring public FieldsThe Public Data Ratio is directly linked to Public Member Elements..NET
MaintainabilityASCMM-MNT-15: Public Member ElementUnit-  SQL
MaintainabilityASCMM-MNT-16: Method Control Element Usage of Member Element from other Class ElementUnit-  .NET
MaintainabilityASCMM-MNT-16: Method Control Element Usage of Member Element from other Class ElementUnitN/A Not applicable in the context of database technologies.SQL
MaintainabilityASCMM-MNT-19: Named Callable and Method Control Element Excessive SimilarityUnit7156Avoid Too Many Copy Pasted ArtifactsElement similarity is addressed by the copy/paste ratio measured by the AIP rule..NET
MaintainabilityASCMM-MNT-19: Named Callable and Method Control Element Excessive SimilarityUnit7156Avoid Too Many Copy Pasted ArtifactsElement similarity is addressed by the copy/paste ratio measured by the AIP rule.SQL
Performance EfficiencyASCPEM-PRF-01: Static Block Element containing Class Instance Creation Control ElementUnit-  .NET / SQL
Performance EfficiencyASCPEM-PRF-02: Immutable Storable and Member Data Element CreationUnit7198Avoid String concatenation in loopsOMG rule implemented for the case of concatenation inside loops.NET
Performance EfficiencyASCPEM-PRF-02: Immutable Storable and Member Data Element CreationUnit

7790

 

Avoid Cursors inside a loopThis rule lists all SQL Artifacts (except table and view) accessing a cursor inside a loop.SQL
Performance EfficiencyASCPEM-PRF-03: Static Member Data Element outside of a Singleton Class ElementUnit-  .NET
Performance EfficiencyASCPEM-PRF-03: Static Member Data Element outside of a Singleton Class ElementUnitN/A Not applicable in the context of database technologies.SQL
Performance EfficiencyASCPEM-PRF-06: Large Data Resource ColumnSet Excessive Number of Index ElementsUnit7348Avoid too many Indexes on one TableDirect implementation of the rule..NET
Performance EfficiencyASCPEM-PRF-06: Large Data Resource ColumnSet Excessive Number of Index ElementsUnit-  SQL
Performance EfficiencyASCPEM-PRF-07: Large Data Resource ColumnSet with Index Element of  Excessive SizeUnit7350Avoid Tables having Indexes with a too large Index definitionDirect implementation of the rule..NET
Performance EfficiencyASCPEM-PRF-07: Large Data Resource ColumnSet with Index Element of  Excessive SizeUnit-  SQL
Performance EfficiencyASCPEM-PRF-13: Data Resource Access not using Connection Pooling capabilityUnit-  .NET
Performance EfficiencyASCPEM-PRF-13: Data Resource Access not using Connection Pooling capabilityUnitN/A Not applicable in the context of database technologies.SQL
ReliabilityASCRM-CWE-252-resource: Unchecked Return Parameter Value of named Callable and Method Control Element with Read, Write, and Manage Access to Platform ResourceUnit-  .NET / SQL
ReliabilityASCRM-CWE-396: Declaration of Catch for Generic ExceptionUnit7862Avoid catching an exception of type Exception, RuntimeException, or ThrowableImplementation of the OMG rule in the .NET context, for all the basic Exception types.NET
ReliabilityASCRM-CWE-396: Declaration of Catch for Generic ExceptionUnit-  SQL
ReliabilityASCRM-CWE-397: Declaration of Throws for Generic ExceptionUnit7824The exception Exception should never been thrown. Always Subclass Exception and throw the subclassed Classes.Direct implementation of the rule..NET
ReliabilityASCRM-CWE-397: Declaration of Throws for Generic ExceptionUnit-  SQL
ReliabilityASCRM-CWE-456: Storable and Member Data Element Missing InitializationUnit-  .NET / SQL
ReliabilityASCRM-CWE-674:Uncontrolled RecursionUnit7388Avoid artifacts having recursive callsDirect implementation of the rule..NET / SQL
ReliabilityASCRM-RLB-01: Empty Exception BlockUnit7782Avoid empty finally blocksDirect implementation of the rule..NET
   7788Avoid empty catch blocksDirect implementation of the rule..NET
ReliabilityASCRM-RLB-01: Empty Exception BlockUnitN/A Not applicable in the context of database technologies.SQL
ReliabilityASCRM-RLB-06: Storable or Member Data Element containing Pointer Item Element without Proper Copy Control ElementUnit-  .NET
ReliabilityASCRM-RLB-06: Storable or Member Data Element containing Pointer Item Element without Proper Copy Control ElementUnitN/A Not applicable in the context of database technologies.SQL
ReliabilityASCRM-RLB-07: Class Instance Self Destruction Control ElementUnit-  .NET
ReliabilityASCRM-RLB-07: Class Instance Self Destruction Control ElementUnitN/A Not applicable in the context of database technologies.SQL
ReliabilityASCRM-RLB-08: Named Callable and Method Control Elements with Variadic Parameter ElementUnit-  .NET
ReliabilityASCRM-RLB-08: Named Callable and Method Control Elements with Variadic Parameter ElementUnitN/A Not applicable in the context of database technologies.SQL
ReliabilityASCRM-RLB-09: Float Type Storable and Member Data Element Comparison with Equality OperatorUnit-  .NET / SQL
ReliabilityASCRM-RLB-12: Singleton Class Instance Creation without Proper Lock Element ManagementUnit-  .NET
ReliabilityASCRM-RLB-12: Singleton Class Instance Creation without Proper Lock Element ManagementUnitN/A Not applicable in the context of database technologies. SQL
ReliabilityASCRM-RLB-15: Class Element with Virtual Method Element without Virtual DestructorUnitN/A Already managed by the framework.NET
ReliabilityASCRM-RLB-15: Class Element with Virtual Method Element without Virtual DestructorUnitN/A Not applicable in the context of database technologies. SQL
ReliabilityASCRM-RLB-16: Parent Class Element without Virtual Destructor Method ElementUnitN/A Already managed by the framework.NET
ReliabilityASCRM-RLB-16: Parent Class Element without Virtual Destructor Method ElementUnitN/A Not applicable in the context of database technologies. SQL
ReliabilityASCRM-RLB-17: Child Class Element wihout Virtual Destructor unlike its Parent Class Element UnitN/A Already managed by the framework.NET
ReliabilityASCRM-RLB-17: Child Class Element without Virtual Destructor unlike its Parent Class Element UnitN/A Not applicable in the context of database technologies. SQL
ReliabilityASCRM-RLB-18: Storable and Member Data Element Initialization with Hard-Coded Network Resource Configuration DataUnit-  .NET / SQL
ReliabilityASCRM-RLB-19: Synchronous Call Time-Out AbsenceUnit-  .NET
ReliabilityASCRM-RLB-19: Synchronous Call Time-Out AbsenceUnitN/A Not applicable in the context of database technologies. SQL
SecurityASCSM-CWE-252-resource: Unchecked Return Parameter Value of named Callable and Method Control Element with Read, Write, and Manage Access to Platform ResourceUnit-  .NET / SQL
SecurityASCSM-CWE-327: Broken or Risky Cryptographic Algorithm UsageUnit-  .NET
SecurityASCSM-CWE-327: Broken or Risky Cryptographic Algorithm UsageUnitN/A Not applicable in the context of database technologies. SQL
SecurityASCSM-CWE-396: Declaration of Catch for Generic ExceptionUnit7862Avoid catching an exception of type Exception, RuntimeException, or ThrowableImplementation of the OMG rule in the .NET context, for all the basic Exception types.NET
SecurityASCSM-CWE-396: Declaration of Catch for Generic ExceptionUnitN/A Not applicable in the context of database technologies. SQL
SecurityASCSM-CWE-397: Declaration of Throws for Generic ExceptionUnit7824The exception Exception should never been thrown. Always Subclass Exception and throw the subclassed Classes.Direct implementation of the rule..NET
SecurityASCSM-CWE-397: Declaration of Throws for Generic ExceptionUnitN/A Not applicable in the context of database technologies. SQL
SecurityASCSM-CWE-456: Storable and Member Data Element Missing InitializationUnit-  .NET
SecurityASCSM-CWE-456: Storable and Member Data Element Missing InitializationUnitN/A Not applicable in the context of database technologies. SQL
  • No labels