CQE-9002: Quality Issues Organized by Practices

 
Quality Issues Organized by Practices
View ID: 9002 Maturity: Preliminary
+ View Data

View Objective

This view (graph) organizes Quality Issues based on the software practices in which they appear.

+ View Metrics
Formal CQE IDs (this view)Micro Elements (this view)Total Catalog
Total Elements76out of16040out of66226
Views0out of77
Quality_Characteristics0out of4141
Quality_Issues76out of112112
Practices40out of4040
Consequences0out of2626
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
HasMember
Pr
Practice
9016Modular Development
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9037Resource Management
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9063Authentication Practices
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9078Memory Management
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9083Iteration Control
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9085Numerical Conversion
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9088Reuse
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9089Code Comments
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9105Data Access Constructs
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9124Layered Architectures
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9131Error/Exception Handling
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9136Cryptography
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9170Initialization Practices
Quality Issues Organized by Practices (primary)9002
HasMember
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
View Components
View Components
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
 
Allocation of Memory without Associated Release
Quality Issue ID: 9112 Maturity: Preliminary
+ Description

Description Summary

The software allocates memory for a data element, but it does not release the associated memory at a later time.

Extended Description

This pattern identifies situations where a memory resource is explicitly allocated via the ManagesResource action to the storable or member data element, which is used throughout the application, along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, none of which being a memory release statement.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-14
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-14. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Architecture with Number of Horizontal Layers Outside of Expected Range
Quality Issue ID: 9007 Maturity: Preliminary
+ Description

Description Summary

The software architecture contains too many - or too few - horizontal layers.

Extended Description

This pattern identifies situations where the model of the architectural layers contains too many or too few horizontal layers, based on its number of horizontal layers (that is, excluding the vertical utility layers) that is smaller than the threshold value or greater than the threshold value. The default minimal value is 4 and the default max value is 8.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9124Layered Architectures
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-9
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-9. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Array Index Improper Input Neutralization
Quality Issue ID: 129 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the read or write action to access the array; none of the callable or method control element of the transformation sequence being a range check callable and method control element with regards to the array index.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9049Array Indexing
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9038Loss of Data Integrity
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-129
CWE2.11129
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-129. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Array Indexing
Practice ID: 9049 Maturity: Preliminary
+ Description

Description Summary

Array Indexing

Extended Description

Software that is unaware of array index bounds incurs the risk of corruption of relevant memory, and perhaps instructions, possibly leading to a crash, the risk of data integrity loss, and the risk of unauthorized access to sensitive data.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9022Memory Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
129Array Index Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
Authentication Practices
Practice ID: 9063 Maturity: Preliminary
+ Description

Description Summary

Authentication Practices

Extended Description

Software featuring weak authentication practices incurs the risk of exposing resources and functionality to unintended actors, possibly leading to compromised sensitive information and even the execution of arbitrary code.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9032Exposed Resources
Default Graph (primary)9001
CanPrecede
Co
Consequence
9035Exposed Functionality
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
CanPrecede
Co
Consequence
9189Information Disclosure
Default Graph (primary)9001
ParentOf
Is
Issue
798Hard-Coded Credentials Usage for Remote Authentication
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Broken or Risky Cryptographic Algorithm Usage
Quality Issue ID: 327 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the application uses the cryptographic deployed component while it is not part of the list of vetted cryptographic deployed components. As an example, FIPS 140-2 features a list of validated implementations.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Pr
Practice
9136Cryptography
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-327
CWE2.11327
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-327. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Buffer Copy without Checking Size of Input
Quality Issue ID: 120 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where two buffer storable elements or member elements are allocated with specific sizes in the source buffer allocation statement and target buffer allocation statement, transformed within the application via transformation sequences composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, then ultimately used by the application to move the content of the first buffer onto the content of the second buffer through the move buffer statement, while the size of the first buffer is greater than the size of the second buffer.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9078Memory Management
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9022Memory Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9038Loss of Data Integrity
Default Graph (primary)9001
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-120
ASCSM1ASCSM-CWE-120
CWE2.11120
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-120. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-120. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Cache Maintenance
Practice ID: 9096 Maturity: Preliminary
+ Description

Description Summary

Cache Maintenance

Extended Description

Software deployed in distributed environment that does not maintain redundancy of data (such as cache) and code increases the time with which they are accessed.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9037Resource Management
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9140Increased (Access) Time
Default Graph (primary)9001
ParentOf
Is
Issue
9069Data Access Operations Outside of Expected Data Manager Component
Quality Issues Organized by Practices (primary)9002
 
Callable and Method Control Element Number of Outward Calls
Quality Issue ID: 9024 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the named callable control element or method control element has a Fan-Out value that is too large, based on its number of references to other objects within the application which exceeds the threshold value; the application determines the scope of the search for the referenced objects. Default value for threshold value is 5.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9016Modular Development
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9141Excessive Propagation of Modification Impacts
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-4
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-4. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Child Class Element without Virtual Destructor unlike its Parent Class Element
Quality Issue ID: 9013 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where, with languages where custom destructors can be written, the child class element used in the 'from' association of an Extends class relation whose parent class element that is used in the 'to' association of the Extends class relation, directly or indirectly through parent and child class element, has the parent virtual destructor, that lack its own virtual destructor.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-17
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-17. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Class Element with Virtual Method Element without Virtual Destructor
Quality Issue ID: 9166 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the class element contains the virtual method element yet without declaring any virtual destructor.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-15
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-15. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Class Instance Self Destruction Control Element
Quality Issue ID: 9156 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the class element executes the control element to destroy itself. As an example of self-destruction control element in C++, the 'delete this' control element.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-7
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-7. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Class with an Excessive Inheritance Level
Quality Issue ID: 9123 Maturity: Preliminary
+ Description

Description Summary

The inheritance level of a class is excessively high, i.e., it has a large number of ancestors.

Extended Description

This pattern identifies situations where the inheritance level of the class element is considered as too large, based on its number of parent class units which exceeds the default threshold value of 7.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-17
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-17. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Class with Excessive Number of Child Classes
Quality Issue ID: 9165 Maturity: Preliminary
+ Description

Description Summary

A class contains an unnecessarily large number of children.

Extended Description

This pattern identifies situations where the number of children of the class element is considered as too large, based on its number of child classes which exceeds the default threshold value of 10.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-18
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-18. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Code Comments
Practice ID: 9089 Maturity: Preliminary
+ Description

Description Summary

Code Comments

Extended Description

Software that does not properly represent comments can cause excessive modification effort.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
ParentOf
Is
Issue
9161Excessive Volume of Commented-out Code
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Coding Practices
Practice ID: 9176 Maturity: Preliminary
+ Description

Description Summary

Coding Practices

Extended Description

Software featuring known under-efficient coding practices requires excessive computational resources.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
ParentOf
Is
Issue
252Unchecked Return Parameter Value of Invokable Control Element with Read, Write, and Manage Access to Platform or Data Resource
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
456Storable and Member Data Element Missing Initialization
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
704Incorrect Type Conversion or Cast
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9004Static Member Data Element outside of a Singleton Class Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9005Data Element Aggregating an Excessively Large Number of Non-Primitive Elements
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9014Creation of Immutable Text Using String Concatenation
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9062Invokable Control Element with Variadic Parameter Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9100Runtime Resource Management Control Element in a Component Built to Run on Application Servers
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9102Missing Serialization Control Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9110Serializable Data Element Containing non-Serializable Item Elements
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9112Allocation of Memory without Associated Release
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9116Data Resource Access without Use of Connection Pooling
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9138Float Type Storable and Member Data Element Comparison with Equality Operator
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9156Class Instance Self Destruction Control Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9182Use of Data Element without Invoking Deconstructor Method
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9193Persistent Storable Data Element without Associated Comparison Control Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9194Storable or Member Data Element containing Pointer Item Element without Proper Copy Control Element
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Creation of Immutable Text Using String Concatenation
Quality Issue ID: 9014 Maturity: Preliminary
+ Description

Description Summary

The software creates an immutable text string using string concatenation operations.

Extended Description

This pattern identifies situations where the named callable control element or method control element creates immutable text data elements via the string concatenation statement, which could be avoided by using text buffer data elements.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-2
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-2. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Cross-site Scripting Improper Input Neutralization
Quality Issue ID: 79 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the user interface WritesUI action; none of the callable or method control element of the transformation sequence being a vetted sanitization control element from the list of vetted sanitization control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9097Output Generation
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-79
CWE2.1179
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-79. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Cryptography
Practice ID: 9136 Maturity: Preliminary
+ Description

Description Summary

Software using a broken or risky cryptographic algorithm incurs the risk of sensitive data being compromised.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
327Broken or Risky Cryptographic Algorithm Usage
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Data Access Constructs
Practice ID: 9105 Maturity: Preliminary
+ Description

Description Summary

Data Access Constructs

Extended Description

Software featuring known under-efficient SQL Query and Data Access constructs requires excessive computational resources.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
ParentOf
Is
Issue
9027Excessive Data Query Operations in a Large Data Table
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9103Excessive Execution of Sequential Searches of Data Resource
Quality Issues Organized by Practices (primary)9002
ParentOf
Pr
Practice
9104Data Encapsulation
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9175Excessive Number of Indices for a Large Data Table
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9187Excessive Index Range Scan for a Data Resource
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Data Access Control Element from Outside Designated Data Manager Component
Quality Issue ID: 9159 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where named callable control element or method control element executes the data action statement although it is not part of a component identified as one of the dedicated data access components from the data access component list. The data access component can be either client-side or server-side, which means that data access components can be developed using non-SQL languages. The pattern simply identifies situations where the implementation does not follow the intended design, regardless of the design.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9076Data Integrity Management
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-10
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-10. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Data Access Operations Outside of Expected Data Manager Component
Quality Issue ID: 9069 Maturity: Preliminary
+ Description

Description Summary

The software performs data-access operations that do not use a dedicated, central data manager component.

Extended Description

This pattern identifies situations where the named callable control element or method control element executes the data action although it is not part of the central data manager identified as one of the dedicated data access components from the data access components list. The component can be either client-side either server-side, which means that not all server-side components are allowed to handle data accesses. The data access component can be either client-side either server-side, which means that data access components can be developed using non-SQL languages. The pattern simply identifies situations where the implementation does not follow the intended design, regardless of the design.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9096Cache Maintenance
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9140Increased (Access) Time
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-11
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-11. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Data Element Aggregating an Excessively Large Number of Non-Primitive Elements
Quality Issue ID: 9005 Maturity: Preliminary
+ Description

Description Summary

The software uses a data element that has an excessively large number of sub-elements with non-primitive data types (i.e., aggregated objects).

Extended Description

This pattern identifies situations where the data type of the storable data element aggregates storable data elements with non-primitive data types, which is considered too large because it exceeds the threshold value, which defaults to 5.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-12
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-12. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Data Element Declared Public
Quality Issue ID: 9153 Maturity: Preliminary
+ Description

Description Summary

The software contains a data element that has been declared public.

Extended Description

This pattern identifies situations where the storable data element or member data element is declared as public through the Create action.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9104Data Encapsulation
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-15
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-15. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Data Encapsulation
Practice ID: 9104 Maturity: Preliminary
+ Description

Description Summary

Data Encapsulation

Extended Description

Software that does not follow the principles of data encapsulation incurs the risk of data corruption.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9105Data Access Constructs
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001
ParentOf
Is
Issue
9153Data Element Declared Public
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9181Method Containing Access of a Member Element from Another Class
Quality Issues Organized by Practices (primary)9002
 
Data Integrity Management
Practice ID: 9076 Maturity: Preliminary
+ Description

Description Summary

Data Integrity Management

Extended Description

Software without consistently-enforced approach to data integrity management incurs the risk of behaving unexpectedly.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001
ParentOf
Is
Issue
9159Data Access Control Element from Outside Designated Data Manager Component
Quality Issues Organized by Practices (primary)9002
 
Data Resource Access without Use of Connection Pooling
Quality Issue ID: 9116 Maturity: Preliminary
+ Description

Description Summary

The software accesses a data resource without using a connection pooling capability.

Extended Description

This pattern identifies situations where the named callable control element or method control element executes the data resource management action not using connection pooling capability. The usage of connection pooling capability is technology dependent. As examples, connection pooling is disabled with the addition of 'Pooling=false' to the connection string with ADO.NET and the value of 'com.sun.jndi.ldap.connect.pool' environment parameter in Java.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-13
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-13. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Declaration of Catch for Generic Exception
Quality Issue ID: 396 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the named callable control element or method control element contains the catch unit which declares to catch the exception parameter whose datatype is part of the list of overly broad exception datatypes. With Java, an example is {'java.lang.Exception'}.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9010Execution Status Control
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9131Error/Exception Handling
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
CanPrecede
Co
Consequence
9154Poisoned Data Usage
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-396
ASCSM1ASCSM-CWE-396
CWE2.11396
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-396. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-396. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Declaration of Throws for Generic Exception
Quality Issue ID: 397 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the named callable control element or method control element throws with the Throws action the exception parameter whose datatype is part of the list of overly broad exception datatypes. In Java, one example from this list is {'java.lang.Exception'}.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9010Execution Status Control
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9131Error/Exception Handling
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
CanPrecede
Co
Consequence
9154Poisoned Data Usage
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-397
ASCSM1ASCSM-CWE-397
CWE2.11397
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-397. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-397. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Embedded Network Configuration
Practice ID: 9068 Maturity: Preliminary
+ Description

Description Summary

Embedded Network Configuration

Extended Description

Software featuring network configuration within its own code incurs the risk of failure when the remote resource changes.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
ParentOf
Is
Issue
9042Initialization with Hard-Coded Network Resource Configuration Data
Quality Issues Organized by Practices (primary)9002
 
Empty Exception Block
Quality Issue ID: 9108 Maturity: Preliminary
+ Description

Description Summary

An invokable code block contains an exception handling block that is empty.

Extended Description

This pattern identifies situations where the exception handling block (such as a Catch and Finally block) of the named callable and method control elements does not contain any other control element.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9131Error/Exception Handling
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-1
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-1. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Error/Exception Handling
Practice ID: 9131 Maturity: Preliminary
+ Description

Description Summary

Inconsistent/Incomplete Handling

Extended Description

Software without consistent and complete handling of errors and exceptions makes it impossible to accurately identify and adequately respond to unusual and unexpected situations.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
ParentOf
Is
Issue
252Unchecked Return Parameter Value of Invokable Control Element with Read, Write, and Manage Access to Platform or Data Resource
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
396Declaration of Catch for Generic Exception
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
397Declaration of Throws for Generic Exception
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9108Empty Exception Block
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Excessive Cyclomatic Complexity Within an Invokable Control Element
Quality Issue ID: 9185 Maturity: Preliminary
+ Description

Description Summary

A named callable or method control element contains control flow that exceeds the desired cyclomatic complexity.

Extended Description

This pattern identifies situations where the named callable control element or method control element has a control flow with a Cyclomatic Complexity which is greater than the default threshold value of 20.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9121Structured Programming
Quality Issues Organized by Practices (primary)9002
ChildOf
Is
Issue
9222Excessive Cyclomatic Complexity
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-11
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-11. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Excessive Data Query Operations in a Large Data Table
Quality Issue ID: 9027 Maturity: Preliminary
+ Description

Description Summary

The software performs a data query with a large number of joins and sub-queries on a large data table.

Extended Description

This pattern identifies situations where the data table is considered very large, based on its number of rows which exceeds the threshold value, and where it is accessed by the data actions which is considered to be too complex, based on its number of joins between tables which exceeds the threshold value, and its number of sub-queries which exceeds the threshold value. The default value for number of rows is 1000000. The default value for number of joins is 5. The default value for number of sub-queries is 3.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9105Data Access Constructs
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-4
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-4. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Excessive Execution of Sequential Searches of Data Resource
Quality Issue ID: 9103 Maturity: Preliminary
+ Description

Description Summary

The software contains a data query against an SQL table or view that is configured in a way that does not utilize an index and may cause sequential searches to be performed.

Extended Description

This pattern identifies situations where the syntax of the ReadsColumnSet action and the index configuration of the SQL table or SQL view causes the DBMS to run sequential searches.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9105Data Access Constructs
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-5
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-5. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Excessive Index Range Scan for a Data Resource
Quality Issue ID: 9187 Maturity: Preliminary
+ Description

Description Summary

The software contains an index range scan for a data resource, but the scan can cover a large number of rows.

Extended Description

This pattern identifies situations where the data table is considered as very large, based on its number of rows which exceeds the threshold value, and where its index is considered as too large, based on its range value which exceeds the threshold value. The default value for number of rows is 1000000 and the default value for index range is 10.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9105Data Access Constructs
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-7
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-7. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Excessive Number of Data Accesses using Inefficient Procedures
Quality Issue ID: 9077 Maturity: Preliminary
+ Description

Description Summary

The software does not use efficient data-processing capabilities (such as stored procedures) when accessing data.

Extended Description

This pattern identifies situations where the server-side non-stored callable control elements in the data manager resource, embeds number of data resource access, which is considered too large because it exceeds the default threshold value of 5.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9167Stored Procedures & Functions
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-9
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-9. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Excessive Number of Indices for a Large Data Table
Quality Issue ID: 9175 Maturity: Preliminary
+ Description

Description Summary

The software uses a data table that contains a large number of indices.

Extended Description

This pattern identifies situations where the data table is considered as very large, based on its number of rows which exceeds the threshold value, and is considered to have too many indices, based on its number of indices which exceeds the threshold value. The default value for number of rows is 1000000. The default value for number of indices is 3.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9105Data Access Constructs
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-6
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-6. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Excessive Use of Hard-Coded Literals in Initialization
Quality Issue ID: 9046 Maturity: Preliminary
+ Description

Description Summary

The software initializes a data element using a hard-coded literal.

Extended Description

This pattern identifies situations where the literal value element is used to initialize the storable data element or member data element via the Write action; exceptions are simple integers and static of constant storable or member data elements.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9142Hard-Coding
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9132Reduced Adaptability
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-3
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-3. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Excessive Use of Unconditional Branching
Quality Issue ID: 9220 Maturity: Preliminary
+ Description

Description Summary

The code uses too many unconditional branches (such as "goto").
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9121Structured Programming
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
SQAE7.1
+ References
Robert A. Martin and Lawrence H. Shafer. "Providing a Framework for Effective Software Quality Assessment". 6th Annual International Symposium of INCOSE. 1996-07-09. <https://www.researchgate.net/publication/285403022_PROVIDING_A_FRAMEWORK_FOR_EFFECTIVE_SOFTWARE_QUALITY_MEASUREMENT_MAKING_A_SCIENCE_OF_RISK_ASSESSMENT>.
+ Content History
Submissions
Submission DateSubmitterOrganizationSource
SQAE TeamMITREExternally Mined
 
Excessive Volume of Commented-out Code
Quality Issue ID: 9161 Maturity: Preliminary
+ Description

Description Summary

The software contains an excessive amount of code that has been commented out.

Extended Description

This pattern identifies situations where the named callable control element or method control element contains too much commented-out code items, based on the percentage of instructions in the callable or method control element that are in comments which exceeds the default threshold value of 2%.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9089Code Comments
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-6
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-6. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Execution Status Control
Practice ID: 9010 Maturity: Preliminary
+ Description

Description Summary

Execution Status Control

Extended Description

Software unaware of accurate execution status control incurs the risk of bad data being used in operations, possibly leading to a crash or other unintended behaviors.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
ParentOf
Is
Issue
252Unchecked Return Parameter Value of Invokable Control Element with Read, Write, and Manage Access to Platform or Data Resource
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
396Declaration of Catch for Generic Exception
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
397Declaration of Throws for Generic Exception
Quality Issues Organized by Practices (primary)9002
 
Expired or Released Resource Usage
Quality Issue ID: 672 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the platform resource is deallocated in the manages action using its unique resource handler value which is transported throughout the application via the transport sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, then used later within the application to try and access the resource in the read or write action.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9080Resource Lifecycle
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9031Denial of Service
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-672
CWE2.11672
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-672. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
File Path Control
Practice ID: 9183 Maturity: Preliminary
+ Description

Description Summary

File Path Control

Extended Description

Software that is unaware of file path control incurs the risk of exposition of sensitive data, the risk of corruption of critical files, such as programs, libraries, or important data used in protection mechanisms.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
CanPrecede
Co
Consequence
9189Information Disclosure
Default Graph (primary)9001
ParentOf
Is
Issue
22Path Traversal Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
File Upload Control
Practice ID: 9095 Maturity: Preliminary
+ Description

Description Summary

File Upload Control

Extended Description

Software unaware of file upload control incurs the risk of arbitrary code execution or other unexpected behaviors based on the type, extension, or other properties of the uploaded file.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
ParentOf
Is
Issue
434File Upload Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
File Upload Improper Input Neutralization
Quality Issue ID: 434 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the file upload action; none of the callable or method control element of the transformation sequence being a vetted sanitization callable and method control element from the list of vetted sanitization callable and method control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9095File Upload Control
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-434
CWE2.11434
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-434. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Float Type Storable and Member Data Element Comparison with Equality Operator
Quality Issue ID: 9138 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the floating value 1 and floating value 2 of storable or member data elements of float types, are tested for equality with regular comparison operators in the comparison control element.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-9
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-9. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Format String Improper Input Neutralization
Quality Issue ID: 134 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the formatting statement; none of the callable or method control element of the transformation sequence being a vetted sanitization control element from the list of vetted sanitization control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Pr
Practice
9129Output Formatting Control
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9189Information Disclosure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-134
CWE2.11134
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-134. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Hard-Coded Credentials Usage for Remote Authentication
Quality Issue ID: 798 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where a literal value is hard-coded in the application via the Write action, transported throughout the application along the sequence composed of ActionElements with DataRelations, some of which being part of named callable and method control elements, and ultimately used in the remote resource management action; the transport sequence is composed of assignment operations as updates to the value would not be considered as hard-coded (literal) any more.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9063Authentication Practices
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9032Exposed Resources
Default Graph (primary)9001
CanPrecede
Co
Consequence
9035Exposed Functionality
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-798
CWE2.11798
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-798. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Hard-Coding
Practice ID: 9142 Maturity: Preliminary
+ Description

Description Summary

Hard-Coding

Extended Description

Software that depends on hard-coded pieces of information within its own code reduces adaptability.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9132Reduced Adaptability
Default Graph (primary)9001
ParentOf
Is
Issue
9046Excessive Use of Hard-Coded Literals in Initialization
Quality Issues Organized by Practices (primary)9002
 
Incorrect Type Conversion or Cast
Quality Issue ID: 704 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the storable element or member element is declared with the datatype in the Create action, then updated with a value that is cast via the type cast action into the second datatype, which is incompatible with the first one.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-704
CWE2.11704
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-704. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Inheritance and Polymorphism
Practice ID: 9157 Maturity: Preliminary
+ Description

Description Summary

Inheritance and Polymorphism

Extended Description

Software that does not follow the principles of inheritance and polymorphism results in unexpected behaviors.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9088Reuse
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001
ParentOf
Is
Issue
9013Child Class Element without Virtual Destructor unlike its Parent Class Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9060Multiple Inheritance from Concrete Classes
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9087Parent Class Element with References to Child Class Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9123Class with an Excessive Inheritance Level
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9147Parent Class Element without Virtual Destructor Method Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9165Class with Excessive Number of Child Classes
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9166Class Element with Virtual Method Element without Virtual Destructor
Quality Issues Organized by Practices (primary)9002
 
Initialization Practices
Practice ID: 9170 Maturity: Preliminary
+ Description

Description Summary

Initialization Practices

Extended Description

Software featuring weak initialization practices incurs the risk of logic errors within the program, possibly leading to a security problem.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9058Security Vulnerabilities
Default Graph (primary)9001
CanPrecede
Co
Consequence
9146Math Error
Default Graph (primary)9001
ParentOf
Is
Issue
456Storable and Member Data Element Missing Initialization
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Initialization with Hard-Coded Network Resource Configuration Data
Quality Issue ID: 9042 Maturity: Preliminary
+ Description

Description Summary

The software initializes data using hard-coded values related to network configuration.

Extended Description

This pattern identifies situations where the storable data element or member data element is initialized by the Write action with the hard-coded value corresponding to network resource identifications.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9068Embedded Network Configuration
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-18
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-18. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Invocation of a Control Element at an Unnecessarily Deep Horizontal Layer
Quality Issue ID: 9052 Maturity: Preliminary
+ Description

Description Summary

The code at one architectural layer invokes code that resides at a deeper layer than the adjacent layer, i.e., the call skips at least one layer.

Extended Description

This pattern identifies situations where the named callable and method control elements from the higher horizontal layer directly calls the named callable or method control element from the lower horizontal layer, while the lower layer is not the next lower layer to the upper layer, as defined in the model of the architectural layers; this excludes the vertical utility layers that can be referenced from any horizontal layers.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9124Layered Architectures
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-12
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-12. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Invokable Control Element with Excessive File or Data Access Operations
Quality Issue ID: 9160 Maturity: Preliminary
+ Description

Description Summary

A named callable or method control element contains too many operations that utilize a data manager or file resource.

Extended Description

This pattern identifies situations where the named callable and method control elements has too many control elements involving a data manager or a file resource, based on its number of such control elements, which exceeds the default threshold value of 7.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9036Unrestricted Data Operations
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-14
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-14. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Invokable Control Element with Signature Containing an Excessive Number of Parameters
Quality Issue ID: 9093 Maturity: Preliminary
+ Description

Description Summary

The software contains a named callable or method control element whose signature has an unnecessarily large number of parameters.

Extended Description

This pattern identifies situations where the named callable control element or method control element has parameters in its signature which is greater than the default threshold value of 7.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9137Unrestricted Parameters
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-13
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-13. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Invokable Control Element with Variadic Parameter Element
Quality Issue ID: 9062 Maturity: Preliminary
+ Description

Description Summary

A named-callable or method control element has a signature that supports a variable number of parameters.

Extended Description

This pattern identifies situations where the named callable control element or method control element has a variable number of parameters, due to the variadic parameter in its signature.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-8
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-8. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Iteration Control
Practice ID: 9083 Maturity: Preliminary
+ Description

Description Summary

Iteration Control

Extended Description

Software unaware of iteration control incurs the risk of unexpected consumption of resources, such as CPU cycles or memory, possibly leading to a crash or program exit due to exhaustion of resources.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001
ParentOf
Is
Issue
606Unchecked Input for Loop Condition
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
835Loop with Unreachable Exit Condition ('Infinite Loop')
Quality Issues Organized by Practices (primary)9002
ParentOf
Pr
Practice
9061Recursion
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Layered Architectures
Practice ID: 9124 Maturity: Preliminary
+ Description

Description Summary

Layered Architectures

Extended Description

Software that does not follow the principles of layered architectures (such as strict partitioning and strict call hierarchy) decreases comprehensibility as well as simplicity to evolve the code.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
ParentOf
Is
Issue
9007Architecture with Number of Horizontal Layers Outside of Expected Range
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9052Invocation of a Control Element at an Unnecessarily Deep Horizontal Layer
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9184Use of Same Invokable Control Element in Multiple Architectural Layers
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Locking
Practice ID: 9178 Maturity: Preliminary
+ Description

Description Summary

Locking

Extended Description

Software featuring inconsistent locking discipline incurs the risk of deadlock.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9028Deadlock
Default Graph (primary)9001
ParentOf
Is
Issue
667Shared Resource Improper Locking
Quality Issues Organized by Practices (primary)9002
 
Loop with Unreachable Exit Condition ('Infinite Loop')
Quality Issue ID: 835 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the named callable control element or method control element features the execution path whose entry element is found again in the path, while it has no path whatsoever to not return to itself and exit the recursion.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9083Iteration Control
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-835
CWE2.11835
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-835. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Memory Location Access After End of Buffer
Quality Issue ID: 788 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the value element is transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used as an index element to access a storable or member data element in the buffer Read or Write access action; none of the callable or method control element of the transformation sequence being a range check with regards to the buffer whose maximum size was defined in the buffer creation action.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9144Resource Monitoring
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-788
CWE2.11788
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-788. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Memory Management
Practice ID: 9078 Maturity: Preliminary
+ Description

Description Summary

Memory Management

Extended Description

When software does not properly manage memory, it can consume more memory than is necessary or incur the risk of corruption of relevant memory - and perhaps instructions - possibly leading to a crash, the risk of data integrity loss, and the risk of unauthorized access to sensitive data.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9022Memory Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
120Buffer Copy without Checking Size of Input
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
789Uncontrolled Memory Allocation
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Method Containing Access of a Member Element from Another Class
Quality Issue ID: 9181 Maturity: Preliminary
+ Description

Description Summary

A method for a class performs an operation that directly accesses a member element from another class.

Extended Description

This pattern identifies situations where the method control element from a class element accesses the member element from another class element.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9104Data Encapsulation
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-16
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-16. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Missing Release of Resource after Effective Lifetime
Quality Issue ID: 772 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the platform resource is allocated and assigned a unique resource handler value via the ManagesResource action, its unique resource handler value is used throughout the application, along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, none of which being a resource release statement.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9080Resource Lifecycle
Quality Issues Organized by Practices (primary)9002
ChildOf
Pr
Practice
9094Resource Bounds
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9031Denial of Service
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-772
ASCSM1ASCSM-CWE-772
CWE2.11772
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-772. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-772. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Missing Serialization Control Element
Quality Issue ID: 9102 Maturity: Preliminary
+ Description

Description Summary

The software contains a serializable data element that does not have an associated serialization method.

Extended Description

This pattern identifies situations where the serializable storable element has no serialization control element in its list of control elements. In case of technologies with class and interface elements, this means situations where the serializable storable element is a class that implements a serializable interface element but does not implement a serialization method element as part of its list composed of method elements. The serializable nature of the element is technology dependent. As examples, serializable nature comes from a serializable SerializableAttribute attribute in .NET and the inheritance from the java.io.Serializable interface in Java.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-2
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-2. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Modular Development
Practice ID: 9016 Maturity: Preliminary
+ Description

Description Summary

Modularity

Extended Description

Software that does not follow the principles of modularity causes excessive propagation of modification impacts.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9141Excessive Propagation of Modification Impacts
Default Graph (primary)9001
ParentOf
Is
Issue
9018Modules with Circular Dependencies
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9024Callable and Method Control Element Number of Outward Calls
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9151Source Code File with Excessive Number of Lines of Code
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Modules with Circular Dependencies
Quality Issue ID: 9018 Maturity: Preliminary
+ Description

Description Summary

The software contains modules with circular dependencies.

Extended Description

This pattern identifies situations where the module has references that cycle back to itself via the module callable or data relations cycle. As an example, with Java, this pattern means cycles between packages.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9016Modular Development
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9064Modularity
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9172State Protection
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9028Deadlock
Default Graph (primary)9001
CanPrecede
Co
Consequence
9082Livelock
Default Graph (primary)9001
CanPrecede
Co
Consequence
9141Excessive Propagation of Modification Impacts
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-7
ASCRM1ASCRM-RLB-13
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-7. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-13. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Multiple Inheritance from Concrete Classes
Quality Issue ID: 9060 Maturity: Preliminary
+ Description

Description Summary

The software contains a class with inheritance from more than one concrete class.

Extended Description

This pattern identifies situations where the number of inheritance of concrete classes of the class element is considered as too large, based on its number of inheritance of concrete classes which exceeds the default threshold value of 1.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-2
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-2. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Name or Reference Resolution Improper Input Neutralization
Quality Issue ID: 99 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the platform action to access a resource by its name; none of the callable or method control element of the transformation sequence being a vetted sanitization callable and method control elements from the list of vetted sanitization callable and method control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Pr
Practice
9127Resource Identification Control
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-99
CWE2.1199
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-99. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Named Callable and Method Control Element in Multi-Thread Context with non-Final Static Storable or Member Element
Quality Issue ID: 9070 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the named callable control element or method control element owns unsafe non-final static storable or member data element while it operates in a multi-threaded environment.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9172State Protection
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9028Deadlock
Default Graph (primary)9001
CanPrecede
Co
Consequence
9082Livelock
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-11
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-11. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Non-SQL Named Callable and Method Control Element with Excessive Number of Data Resource Access
Quality Issue ID: 9122 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the client-side named callable and method control elements, not in any data manager resource, embeds a number of accesses to a data resource, which is considered too large because it exceeds the default threshold value of 2.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9167Stored Procedures & Functions
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-10
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-10. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Numeric Types Incorrect Conversion
Quality Issue ID: 681 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the storable element or member element is declared with the numerical datatype in the Create action, then updated with a value which is cast via the type cast action into the second numerical datatype, which is incompatible with the first one.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9085Numerical Conversion
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9058Security Vulnerabilities
Default Graph (primary)9001
CanPrecede
Co
Consequence
9146Math Error
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-681
CWE2.11681
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-681. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Numerical Conversion
Practice ID: 9085 Maturity: Preliminary
+ Description

Description Summary

Numerical Conversion

Extended Description

Software featuring weak numerical conversion practices incurs the risk of using the wrong number and generating incorrect results, possibly introducing new vulnerability when related to resource allocation and security decisions.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9058Security Vulnerabilities
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9146Math Error
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001
ParentOf
Is
Issue
681Numeric Types Incorrect Conversion
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
OS Command Execution
Practice ID: 9006 Maturity: Preliminary
+ Description

Description Summary

OS Command Control

Extended Description

Software unaware of OS command control incurs the risk of unauthorized command execution, possibly used to disable the software, or possibly leading to unauthorized read and modify data access.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9030Unauthorized Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9030Unauthorized Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
78OS Command Injection Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
OS Command Injection Improper Input Neutralization
Quality Issue ID: 78 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the platform action to be executed by the execution environment; none of the callable or method control element of the transformation sequence being a vetted sanitization callable and method control element from the list of vetted sanitization callable and method control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9006OS Command Execution
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9030Unauthorized Code Execution
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-78
CWE2.1178
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-78. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Output Formatting Control
Practice ID: 9129 Maturity: Preliminary
+ Description

Description Summary

Formatting Control

Extended Description

Software that is unaware of formatting control incurs the risk of execution of arbitrary code, excessive memory or disk consumption, or the risk of information disclosure, which can severely simplify exploitation of the software.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9058Security Vulnerabilities
Default Graph (primary)9001
CanPrecede
Co
Consequence
9189Information Disclosure
Default Graph (primary)9001
ParentOf
Is
Issue
134Format String Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
Output Generation
Practice ID: 9097 Maturity: Preliminary
+ Description

Description Summary

Output Generation

Extended Description

Software featuring weak output generation practices incurs the risk of arbitrary code execution, the risk of sensitive data being compromised, and many other nefarious consequences.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9017Arbitrary Code Execution
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
79Cross-site Scripting Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
Parent Class Element with References to Child Class Element
Quality Issue ID: 9087 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the parent class element that is used in the 'to' association of the Extends class relation, references the child class element used in the 'from' association of the Extends class relation, directly or indirectly through parent and child class element, with the callable or data relations. The reference statement is made directly to the child class element or to any one of its own method or member elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-14
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-14. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Parent Class Element without Virtual Destructor Method Element
Quality Issue ID: 9147 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where, with languages where custom destructors can be written, the parent class element of the child class element via an Extends class relation has no virtual destructor.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-16
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-16. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Path Traversal Improper Input Neutralization
Quality Issue ID: 22 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the file path creation statement; none of the callable or method control element of the transformation sequence being a vetted sanitization callable and method control element from the list of vetted sanitization control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Pr
Practice
9183File Path Control
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9054Data Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-22
CWE2.1122
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-22. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Persistent Storable Data Element without Associated Comparison Control Element
Quality Issue ID: 9193 Maturity: Preliminary
+ Description

Description Summary

The software uses a storable data element that does not have all of the associated control elements that are necessary to support comparison.

Extended Description

This pattern identifies situations where the persistent storable element has no dedicated control element aiming at handling comparison action elements from the list. In case of technologies with class elements, this means situations where the persistent storable element is a class that is made persistent while it does not implement method elements from the required comparison control element list is now composed of method elements. As an example, with Java, a required comparison control element list is {'hashCode()','equals()'} method elements.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-4
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-4. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Recursion
Practice ID: 9061 Maturity: Preliminary
+ Description

Description Summary

Recursion

Extended Description

Software that is unaware of recursion incurs the risk of exceeding resource and capacity limits.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9083Iteration Control
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001
ParentOf
Is
Issue
674Uncontrolled Recursion
Quality Issues Organized by Practices (primary)9002
 
Remote System Call Blocking
Practice ID: 9026 Maturity: Preliminary
+ Description

Description Summary

Remote System Call Blocking

Extended Description

Software featuring blocking calls to remote systems incurs the risk of its own failure when the remote systems fails to process the call correctly.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
ParentOf
Is
Issue
9173Synchronous Call Time-Out Absence
Quality Issues Organized by Practices (primary)9002
 
Resource Bounds
Practice ID: 9094 Maturity: Preliminary
+ Description

Description Summary

Resource Bounds

Extended Description

Software that is unaware of resource bounds or fails to monitor resources incurs the risk of exceeding resource and capacity limits.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001
ParentOf
Is
Issue
772Missing Release of Resource after Effective Lifetime
Quality Issues Organized by Practices (primary)9002
 
Resource Identification Control
Practice ID: 9127 Maturity: Preliminary
+ Description

Description Summary

Resource Identification Control

Extended Description

Software unaware of resource identification control incurs the risk of unauthorized access to or modification of sensitive data and system resources, including configuration files and files containing sensitive information.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9037Resource Management
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
99Name or Reference Resolution Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
Resource Lifecycle
Practice ID: 9080 Maturity: Preliminary
+ Description

Description Summary

Resource Lifecycle

Extended Description

Software unaware of resource lifecycle incurs the risk of preventing all other processes from accessing the same type of resource.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9037Resource Management
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001
ParentOf
Is
Issue
672Expired or Released Resource Usage
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
772Missing Release of Resource after Effective Lifetime
Quality Issues Organized by Practices (primary)9002
 
Resource Management
Practice ID: 9037 Maturity: Preliminary
+ Description

Description Summary

Resource Management
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ParentOf
Pr
Practice
9080Resource Lifecycle
Quality Issues Organized by Practices (primary)9002
ParentOf
Pr
Practice
9096Cache Maintenance
Quality Issues Organized by Practices (primary)9002
ParentOf
Pr
Practice
9127Resource Identification Control
Quality Issues Organized by Practices (primary)9002
ParentOf
Pr
Practice
9144Resource Monitoring
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Resource Monitoring
Practice ID: 9144 Maturity: Preliminary
+ Description

Description Summary

Resource Monitoring

Extended Description

Software that is unaware of resource bounds or fails to monitor resources incurs the risk of exceeding resource and capacity limits.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9037Resource Management
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001
ParentOf
Is
Issue
788Memory Location Access After End of Buffer
Quality Issues Organized by Practices (primary)9002
 
Reuse
Practice ID: 9088 Maturity: Preliminary
+ Description

Description Summary

Reuse

Extended Description

Software that does not follow the principles of reuse requires more maintenance effort in order to propagate changes to all instances of duplicated code.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9055Reusability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
ParentOf
Is
Issue
9011Use of Redundant Code
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9079Unreachable Invokable Control Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Pr
Practice
9157Inheritance and Polymorphism
Quality Issues Organized by Practices (primary)9002
MemberOf
Vi
View
9002Quality Issues Organized by Practices
Quality Issues Organized by Practices (primary)9002
 
Runtime Resource Management Control Element in a Component Built to Run on Application Servers
Quality Issue ID: 9100 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the application uses deployed component from the platform deployed component list, yet uses control elements from the list of low-level resource management API.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-5
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-5. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Serializable Data Element Containing non-Serializable Item Elements
Quality Issue ID: 9110 Maturity: Preliminary
+ Description

Description Summary

The software contains a serializable, storable data element, but the data element contains item elements that are not serializable.

Extended Description

This pattern identifies situations where the serializable storable element is composed of the non-serializable item element. In case of technologies with class and interface elements, this means situations where the serializable storage element is a class that is serializable but owns a non-Serializable member element. The serializable nature of the element is technology dependent. As examples, serializable nature comes from a serializable SerializableAttribute attribute in .NET and the inheritance from the java.io.Serializable interface in Java.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-3
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-3. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Shared Resource Improper Locking
Quality Issue ID: 667 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the shared storable data element or member data element, declared with the Create action, is accessed outside a critical section of the application via the Read or Write action. The critical nature of the section is technology and platform dependent. As examples, in C/C++, critical nature comes from the use of 'mtx_lock' and 'mtx_unlock' from the 'threads.h' standard C language API, or from the use of 'pthread_mutex_lock' and 'pthread_mutex_unlock' from the 'pthreads.h' C/C++ POSIX API, or from the use of 'EnterCriticalSection' and 'LeaveCriticalSection' from the 'windows.h' C/C++ Win32 API. As other examples, in Java, critical nature comes from the use of the 'synchronized' keyword, and in C#, critical nature comes from the use of the 'lock' keyword.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Pr
Practice
9178Locking
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9028Deadlock
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-667
CWE2.11667
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-667. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Singleton Class Instance Creation without Proper Lock Element Management
Quality Issue ID: 9192 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the singleton class element, that is, a class element that can be used only once in the 'to' association of a Create action, is instantiated with the Creates action element without any prior locking mechanism activation.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9172State Protection
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9028Deadlock
Default Graph (primary)9001
CanPrecede
Co
Consequence
9082Livelock
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-12
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-12. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Source Code File with Excessive Number of Lines of Code
Quality Issue ID: 9151 Maturity: Preliminary
+ Description

Description Summary

A source code file has too many lines of code.

Extended Description

This pattern identifies situations where the file has too many lines of code, based on its number of lines of code which exceeds the default threshold value of 1000.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9016Modular Development
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9141Excessive Propagation of Modification Impacts
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-8
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-8. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
SQL Command Execution
Practice ID: 9003 Maturity: Preliminary
+ Description

Description Summary

SQL Command Control

Extended Description

Software unaware of SQL command control incurs the risk of unauthorized read, modify, and delete access to sensitive data.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001
ParentOf
Is
Issue
89SQL Injection Improper Input Neutralization
Quality Issues Organized by Practices (primary)9002
 
SQL Injection Improper Input Neutralization
Quality Issue ID: 89 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the SQL compilation statement; none of the callable or method control element of the transformation sequence being a vetted sanitization callable and method control elements from the list of vetted sanitization control elements.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9003SQL Command Execution
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-89
CWE2.1189
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-89. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
State Protection
Practice ID: 9172 Maturity: Preliminary
+ Description

Description Summary

State Protection

Extended Description

Software deployed in multi-thread environments that does not protect their state can experience deadlock or livelock.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9028Deadlock
Default Graph (primary)9001
CanPrecede
Co
Consequence
9082Livelock
Default Graph (primary)9001
ParentOf
Is
Issue
9018Modules with Circular Dependencies
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9070Named Callable and Method Control Element in Multi-Thread Context with non-Final Static Storable or Member Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9192Singleton Class Instance Creation without Proper Lock Element Management
Quality Issues Organized by Practices (primary)9002
 
Static Member Data Element outside of a Singleton Class Element
Quality Issue ID: 9004 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the static member element is declared as static but its parent class element is not a singleton class, that is, a class element that can be used only once in the 'to' association of a Create action; it does not take into account final static fields.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-3
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-3. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Storable and Member Data Element Missing Initialization
Quality Issue ID: 456 Maturity: Preliminary
+ Description

Description Summary

The software contains a storable or member data element that is not initialized before it is used.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9170Initialization Practices
Quality Issues Organized by Practices (primary)9002
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9058Security Vulnerabilities
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-456
ASCSM1ASCSM-CWE-456
CWE2.11456
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-456. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-456. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Storable or Member Data Element containing Pointer Item Element without Proper Copy Control Element
Quality Issue ID: 9194 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the storable data element or member data element contains the child pointer data element but has no dedicated copy operation or copy constructor element.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-6
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-6. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Stored Procedures & Functions
Practice ID: 9167 Maturity: Preliminary
+ Description

Description Summary

Stored Procedures and Functions

Extended Description

Software that does not leverage database capabilities to efficiently run data processing (such as stored procedures and functions) requires excessive computational resources.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001
ParentOf
Is
Issue
9077Excessive Number of Data Accesses using Inefficient Procedures
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9122Non-SQL Named Callable and Method Control Element with Excessive Number of Data Resource Access
Quality Issues Organized by Practices (primary)9002
 
Structured Programming
Practice ID: 9121 Maturity: Preliminary
+ Description

Description Summary

Structured Programming

Extended Description

Software that does not follow the principles of structured programming degrades comprehensibility.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
ParentOf
Is
Issue
9134Unconditional Control Flow Transfer outside of Switch Block
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9185Excessive Cyclomatic Complexity Within an Invokable Control Element
Quality Issues Organized by Practices (primary)9002
ParentOf
Is
Issue
9220Excessive Use of Unconditional Branching
Quality Issues Organized by Practices (primary)9002
 
Synchronous Call Time-Out Absence
Quality Issue ID: 9173 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the synchronous call instruction is initiated but the time-out argument is not set or set to infinite time.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9026Remote System Call Blocking
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-RLB-19
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-RLB-19. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Unchecked Input for Loop Condition
Quality Issue ID: 606 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used in the loop condition statement; none of the callable or method control element of the transformation sequence being a range check control element
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9083Iteration Control
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-606
CWE2.11606
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-606. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Unchecked Return Parameter Value of Invokable Control Element with Read, Write, and Manage Access to Platform or Data Resource
Quality Issue ID: 252 Maturity: Preliminary
+ Description

Description Summary

A named callable control element or method control element performs an action that reads, writes, or manages access to a data or platform resource, but it does not check the return parameter from the action.

Extended Description

For data resources managed using SQL, this pattern identifies situations where the invokable control element executes a CRUD SQL statement with the execute SQL statement action, yet the value of the return parameter from the action is not used by any check control element.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9010Execution Status Control
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
ChildOf
Pr
Practice
9131Error/Exception Handling
Quality Issues Organized by Practices (primary)9002
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9057Erroneous Behaviors
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
CanPrecede
Co
Consequence
9154Poisoned Data Usage
Default Graph (primary)9001
CanPrecede
Co
Consequence
9168Unexpected Behaviors
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-252-data
ASCRM1ASCRM-CWE-252-resource
ASCSM1ASCSM-CWE-252
CWE2.11252
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-252-resource. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-252-resource. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-252-data. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Unconditional Control Flow Transfer outside of Switch Block
Quality Issue ID: 9134 Maturity: Preliminary
+ Description

Description Summary

The software performs unconditional control transfer (such as a "goto") in code outside of a branching structure such as a switch block.

Extended Description

This pattern identifies situations where control flow unconditional transfer of control is located outside the branching based on the value of a storable element.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9121Structured Programming
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-1
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-1. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Uncontrolled Memory Allocation
Quality Issue ID: 789 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where an external value is entered into the application through the user interface ReadsUI action, transformed throughout the application along the sequence composed of ActionElements with DataRelations relations, some of which being part of named callable and method control elements, and ultimately used as an index element to access a storable or member data element in the buffer Read or Write access action; none of the callable or method control element of the transformation sequence being a range check with regards to the 'Buffer' buffer that whose maximum size was defined in the buffer creation action.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9078Memory Management
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9115Security
Default Graph (primary)9001
CanPrecede
Co
Consequence
9022Memory Corruption
Default Graph (primary)9001
CanPrecede
Co
Consequence
9038Loss of Data Integrity
Default Graph (primary)9001
CanPrecede
Co
Consequence
9143Failure
Default Graph (primary)9001
CanPrecede
Co
Consequence
9152Unauthorized Access to Sensitive Information
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCSM1ASCSM-CWE-789
CWE2.11789
+ References
"Automated Source Code Security Measure (ASCSM)". ASCSM-CWE-789. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCSM/1.0/>.
 
Uncontrolled Recursion
Quality Issue ID: 674 Maturity: Preliminary
+ Description

Description Summary

This pattern identifies situations where the named callable control element or method control element features the recursive execution path.
+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Pr
Practice
9061Recursion
Quality Issues Organized by Practices (primary)9002
ChildOf
Ch
Characteristic
9120Reliability
Default Graph (primary)9001
CanPrecede
Co
Consequence
9177Resource Exhaustion
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCRM1ASCRM-CWE-674
CWE2.11674
+ References
"Automated Source Code Reliability Measure (ASCRM)". ASCRM-CWE-674. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCRM/1.0/>.
 
Unreachable Invokable Control Element
Quality Issue ID: 9079 Maturity: Preliminary
+ Description

Description Summary

The software contains a named callable or method control element that is not reachable by other code, i.e. is dead code.

Extended Description

This pattern identifies situations where the named callable control element or method control element is unreferenced by any other code item in the application; the application determines the scope of the search for code items that could call the callable or method control element.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9088Reuse
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-20
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-20. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Unrestricted Data Operations
Practice ID: 9036 Maturity: Preliminary
+ Description

Description Summary

Unrestricted Data Operations

Extended Description

Software that does not cap the number of data operations degrades comprehensibility by requiring the understanding of too many external data structures.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
ParentOf
Is
Issue
9160Invokable Control Element with Excessive File or Data Access Operations
Quality Issues Organized by Practices (primary)9002
 
Unrestricted Parameters
Practice ID: 9137 Maturity: Preliminary
+ Description

Description Summary

Unrestricted Parameters

Extended Description

Software that does not cap the number of parameters degrades comprehensibility.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001
ParentOf
Is
Issue
9093Invokable Control Element with Signature Containing an Excessive Number of Parameters
Quality Issues Organized by Practices (primary)9002
 
Use of Data Element without Invoking Deconstructor Method
Quality Issue ID: 9182 Maturity: Preliminary
+ Description

Description Summary

The software accesses a data element but does not later invoke its associated finalize method.

Extended Description

This pattern identifies situations where the method control element references via the access action the storable or member data element without invoking its finalize ("destructor") method.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9169Performance
Default Graph (primary)9001
ChildOf
Pr
Practice
9176Coding Practices
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9039Excessive Resource Expenditure
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCPEM1ASCPEM-PRF-15
+ References
"Automated Source Code Performance Efficiency Measure (ASCPEM)". ASCPEM-PRF-15. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCPEM/1.0>.
 
Use of Redundant Code
Quality Issue ID: 9011 Maturity: Preliminary
+ Description

Description Summary

The software has two or more invokable control elements that contain the same code.

Extended Description

This pattern identifies situations where the named callable control element or method control element contains too many identical computational objects, based on the number of identical computational objects with the named callable or method control element within the application; the application determines the scope of the search for the code item.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9088Reuse
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-19
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-19. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
 
Use of Same Invokable Control Element in Multiple Architectural Layers
Quality Issue ID: 9184 Maturity: Preliminary
+ Description

Description Summary

The software uses the same control element across multiple architectural layers.

Extended Description

This pattern identifies situations where the callable or method control element is part of both layer 1 and layer 2 architectural layers.

+ Relationships
NatureTypeIDNameView(s) this relationship pertains to
View
ChildOf
Ch
Characteristic
9034Maintainability
Default Graph (primary)9001
ChildOf
Pr
Practice
9124Layered Architectures
Quality Issues Organized by Practices (primary)9002
CanPrecede
Co
Consequence
9113Excessive Modification Effort
Default Graph (primary)9001
CanPrecede
Co
Consequence
9145Degraded Comprehension
Default Graph (primary)9001

Related Taxonomy Entries

TaxonomyVersionRelated ID
ASCMM1ASCMM-MNT-10
+ References
"Automated Source Code Maintainability Measure (ASCMM)". ASCMM-MNT-10. v1.0. Object Management Group (OMG). 2016-01-01. <http://www.omg.org/spec/ASCMM/1.0>.
Page Last Updated or Reviewed: October 01, 2017