Category: CISQ Quality Measures - Maintainability

Incomplete
Summary

Weaknesses in this category are related to the CISQ Quality Measures for Maintainability. Presence of these weaknesses could reduce the maintainability of the software.

Membership
IDNameDescription
CWE-1041Use of Redundant CodeThe product has multiple functions, methods, procedures, macros, etc. that contain the same code.
CWE-1045Parent Class with a Virtual Destructor and a Child Class without a Virtual DestructorA parent class has a virtual destructor method, but the parent has a child class that does not have a virtual destructor.
CWE-1047Modules with Circular DependenciesThe product contains modules in which one module has references that cycle back to itself, i.e., there are circular dependencies.
CWE-1048Invokable Control Element with Large Number of Outward CallsThe code contains callable control elements that contain an excessively large number of references to other application objects external to the context of the callable, i.e. a Fan-Out value that is excessively large.
CWE-1051Initialization with Hard-Coded Network Resource Configuration DataThe product initializes data using hard-coded values that act as network resource identifiers.
CWE-1052Excessive Use of Hard-Coded Literals in InitializationThe product initializes a data element using a hard-coded literal that is not a simple integer or static constant element.
CWE-1054Invocation of a Control Element at an Unnecessarily Deep Horizontal LayerThe code at one architectural layer invokes code that resides at a deeper layer than the adjacent layer, i.e., the invocation skips at least one layer, and the invoked code is not part of a vertical utility layer that can be referenced from any horizontal layer.
CWE-1055Multiple Inheritance from Concrete ClassesThe product contains a class with inheritance from more than one concrete class.
CWE-1062Parent Class with References to Child ClassThe code has a parent class that contains references to a child class, its methods, or its members.
CWE-1064Invokable Control Element with Signature Containing an Excessive Number of ParametersThe product contains a function, subroutine, or method whose signature has an unnecessarily large number of parameters/arguments.
CWE-1074Class with Excessively Deep InheritanceA class has an inheritance level that is too high, i.e., it has a large number of parent classes.
CWE-1075Unconditional Control Flow Transfer outside of Switch BlockThe product performs unconditional control transfer (such as a "goto") in code outside of a branching structure such as a switch block.
CWE-1079Parent Class without Virtual Destructor MethodA parent class contains one or more child classes, but the parent class does not have a virtual destructor method.
CWE-1080Source Code File with Excessive Number of Lines of CodeA source code file has too many lines of code.
CWE-1084Invokable Control Element with Excessive File or Data Access OperationsA function or method contains too many operations that utilize a data manager or file resource.
CWE-1085Invokable Control Element with Excessive Volume of Commented-out CodeA function, method, procedure, etc. contains an excessive amount of code that has been commented out within its body.
CWE-1086Class with Excessive Number of Child ClassesA class contains an unnecessarily large number of children.
CWE-1087Class with Virtual Method without a Virtual DestructorA class contains a virtual method, but the method does not have an associated virtual destructor.
CWE-1090Method Containing Access of a Member Element from Another ClassA method for a class performs an operation that directly accesses a member element from another class.
CWE-1095Loop Condition Value Update within the LoopThe product uses a loop with a control flow condition based on a value that is updated within the body of the loop.
CWE-407Inefficient Algorithmic ComplexityAn algorithm in a product has an inefficient worst-case computational complexity that may be detrimental to system performance and can be triggered by an attacker, typically using crafted manipulations that ensure that the worst case is being reached.
CWE-478Missing Default Case in Multiple Condition ExpressionThe code does not have a default case in an expression with multiple conditions, such as a switch statement.
CWE-480Use of Incorrect OperatorThe product accidentally uses the wrong operator, which changes the logic in security-relevant ways.
CWE-484Omitted Break Statement in SwitchThe product omits a break statement within a switch or similar construct, causing code associated with multiple conditions to execute. This can cause problems when the programmer only intended to execute code associated with one condition.
CWE-561Dead CodeThe product contains dead code, which can never be executed.
CWE-570Expression is Always FalseThe product contains an expression that will always evaluate to false.
CWE-571Expression is Always TrueThe product contains an expression that will always evaluate to true.
CWE-783Operator Precedence Logic ErrorThe product uses an expression in which operator precedence causes incorrect logic to be used.
CWE-1305CISQ Quality Measures (2020)This view outlines the most important software quality issues as identified by the Consortium for Information & Software Quality (CISQ) Automated Quality Characteristic Measures, released in 2020. These measures are derived from Object Management Group (OMG) standards.
Vulnerability Mapping Notes
Usage: Prohibited
Reasons: Category
Rationale:
This entry is a Category. Using categories for mapping has been discouraged since 2019. Categories are informal organizational groupings of weaknesses that can help CWE users with data aggregation, navigation, and browsing. However, they are not weaknesses in themselves.
Comment:
See member weaknesses of this category.