Ch
CharacteristicAnalyzability - (9012)9001 (Default Graph) >
9034 (Maintainability) >
9012 (Analyzability)
Analyzability is a Quality_Characteristic describing how easily
an entity can be examined.
Ch
CharacteristicLegibility - (9066)9001 (Default Graph) >
9034 (Maintainability) >
9012 (Analyzability) >
9066 (Legibility)
Legibility is a Quality_Characteristic describing how easily an
entity can be read.
Is
IssueInappropriate Comment Style - (9214)9001 (Default Graph) >
9034 (Maintainability) >
9012 (Analyzability) >
9066 (Legibility) >
9214 (Inappropriate Comment Style)
The source code uses comment styles or formats that are
inconsistent or do not follow expected standards for the
product.
Is
IssueSource Code Element without Standard Prologue - (9216)9001 (Default Graph) >
9034 (Maintainability) >
9012 (Analyzability) >
9216 (Source Code Element without Standard Prologue)
The source code contains elements such as source files or
callables that do not consistently follow a prologue or header that has been
standardized for the project.
Is
IssueCallable and Method Control Element Number of Outward Calls - (9024)9001 (Default Graph) >
9034 (Maintainability) >
9024 (Callable and Method Control Element Number of Outward Calls)
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.
Is
IssueCallable with Insufficient Behavioral Summary - (9218)9001 (Default Graph) >
9034 (Maintainability) >
9218 (Callable with Insufficient Behavioral Summary)
The code contains a callable whose signature and/or associated
documentation does not sufficiently describe the callable's inputs, outputs,
side effects, assumptions, or return codes.
Ch
CharacteristicChangeability/Modifiability - (9029)9001 (Default Graph) >
9034 (Maintainability) >
9029 (Changeability/Modifiability)
Changeability is a Quality_Characteristic describing how easily
an entity can be changed or modified.
Is
IssueCompilation with Insufficient Warnings or Errors - (9228)9001 (Default Graph) >
9034 (Maintainability) >
9228 (Compilation with Insufficient Warnings or Errors)
The code is compiled without sufficient warnings enabled, which
may prevent the detection of subtle bugs or quality
issues.
Is
IssueData Element Declared Public - (9153)9001 (Default Graph) >
9034 (Maintainability) >
9153 (Data Element Declared Public)
The software contains a data element that has been declared
public.
Is
IssueExcessive Code Complexity - (9221)9001 (Default Graph) >
9034 (Maintainability) >
9221 (Excessive Code Complexity)
The code is too complex, as calculated using a well-defined,
quantitative measure.
Is
IssueExcessive Attack Surface - (9226)9001 (Default Graph) >
9034 (Maintainability) >
9221 (Excessive Code Complexity) >
9226 (Excessive Attack Surface)
The product has an attack surface whose quantitative
measurement exceeds a desirable maximum.
Is
IssueExcessive Cyclomatic Complexity - (9222)9001 (Default Graph) >
9034 (Maintainability) >
9221 (Excessive Code Complexity) >
9222 (Excessive Cyclomatic Complexity)
The code contains McCabe cyclomatic complexity that exceeds a
desirable maximum.
Is
IssueExcessive Cyclomatic Complexity Within an Invokable Control Element - (9185)9001 (Default Graph) >
9034 (Maintainability) >
9221 (Excessive Code Complexity) >
9222 (Excessive Cyclomatic Complexity) >
9185 (Excessive Cyclomatic Complexity Within an Invokable Control Element)
A named callable or method control element contains control
flow that exceeds the desired cyclomatic complexity.
Is
IssueExcessive Halstead Complexity - (9223)9001 (Default Graph) >
9034 (Maintainability) >
9221 (Excessive Code Complexity) >
9223 (Excessive Halstead Complexity)
The code is structured in a way that a Halstead complexity
measure exceeds a desirable maximum.
Is
IssueExcessively Deep Nesting - (9225)9001 (Default Graph) >
9034 (Maintainability) >
9221 (Excessive Code Complexity) >
9225 (Excessively Deep Nesting)
The code contains a callable or other code grouping in which
the nesting / branching is too deep.
Is
IssueExcessive Halstead Complexity - (9223)9001 (Default Graph) >
9034 (Maintainability) >
9223 (Excessive Halstead Complexity)
The code is structured in a way that a Halstead complexity
measure exceeds a desirable maximum.
Is
IssueExcessive Reliance on Global Variables - (9209)9001 (Default Graph) >
9034 (Maintainability) >
9209 (Excessive Reliance on Global Variables)
The code is structured in a way that relies too much on using
or setting global variables throughout various points in the code, instead of
preserving the associated information in a narrower, more local
context.
Is
IssueExcessively Deep Nesting - (9225)9001 (Default Graph) >
9034 (Maintainability) >
9225 (Excessively Deep Nesting)
The code contains a callable or other code grouping in which
the nesting / branching is too deep.
Is
IssueIncomplete Documentation - (9073)9001 (Default Graph) >
9034 (Maintainability) >
9073 (Incomplete Documentation)
The documentation, whether on paper or in electronic form, does
not contain descriptions of all the relevant elements of the product, such as
its usage, structure, interfaces, design, implementation, configuration,
operation, etc.
Is
IssueIncomplete Design Documentation - (9211)9001 (Default Graph) >
9034 (Maintainability) >
9073 (Incomplete Documentation) >
9211 (Incomplete Design Documentation)
The product's design documentation does not adequately describe
control flow, data flow, system initialization, relationships between tasks,
components, rationales, or other important aspects of the
design.
Is
IssueIncomplete Documentation of Program Execution - (9213)9001 (Default Graph) >
9034 (Maintainability) >
9073 (Incomplete Documentation) >
9213 (Incomplete Documentation of Program Execution)
The document does not fully define all mechanisms that are used
to control or influence how product-specific programs are
executed.
Is
IssueIncomplete I/O Documentation - (9212)9001 (Default Graph) >
9034 (Maintainability) >
9073 (Incomplete Documentation) >
9212 (Incomplete I/O Documentation)
The product's documentation does not adequately define inputs,
outputs, or system/software interfaces.
Is
IssueInsufficient Documentation of Error Handling Techniques - (9219)9001 (Default Graph) >
9034 (Maintainability) >
9073 (Incomplete Documentation) >
9219 (Insufficient Documentation of Error Handling Techniques)
The documentation does not sufficiently describe the techniques
that are used for error handling, exception processing, or similar
mechanisms.
Is
IssueMissing Design Representation Documentation - (9050)9001 (Default Graph) >
9034 (Maintainability) >
9073 (Incomplete Documentation) >
9050 (Missing Design Representation Documentation)
The documentation does not contain a representation of the
product's design.
Is
IssueInsufficient Adherence to Conventions - (9135)9001 (Default Graph) >
9034 (Maintainability) >
9135 (Insufficient Adherence to Conventions)
The product, architecture, source code, design, documentation,
or other artifact does not follow required conventions.
Is
IssueInappropriate Source Code Style or Formatting - (9139)9001 (Default Graph) >
9034 (Maintainability) >
9135 (Insufficient Adherence to Conventions) >
9139 (Inappropriate Source Code Style or Formatting)
The source code does not follow
desired style or formatting for indentation, white
space, comments, etc.
Is
IssueInappropriate Comment Style - (9214)9001 (Default Graph) >
9034 (Maintainability) >
9135 (Insufficient Adherence to Conventions) >
9139 (Inappropriate Source Code Style or Formatting) >
9214 (Inappropriate Comment Style)
The source code uses comment styles or formats that are
inconsistent or do not follow expected standards for the
product.
Is
IssueInappropriate Whitespace Style - (9215)9001 (Default Graph) >
9034 (Maintainability) >
9135 (Insufficient Adherence to Conventions) >
9139 (Inappropriate Source Code Style or Formatting) >
9215 (Inappropriate Whitespace Style)
The source code contains whitespace that is inconsistent across
the code or does not follow expected standards for the
product.
Is
IssueSource Code Element without Standard Prologue - (9216)9001 (Default Graph) >
9034 (Maintainability) >
9135 (Insufficient Adherence to Conventions) >
9216 (Source Code Element without Standard Prologue)
The source code contains elements such as source files or
callables that do not consistently follow a prologue or header that has been
standardized for the project.
Is
IssueInsufficient Encapsulation of Machine-Dependent Functionality - (9206)9001 (Default Graph) >
9034 (Maintainability) >
9206 (Insufficient Encapsulation of Machine-Dependent Functionality)
The product or code uses machine-dependent functionality, but
it does not sufficiently encapsulate or isolate this functionality from
machine-independent functionality.
Is
IssueInsufficient Isolation of Symbolic Constant Definitions - (9208)9001 (Default Graph) >
9034 (Maintainability) >
9208 (Insufficient Isolation of Symbolic Constant Definitions)
The source code uses symbolic constants, but it does not
sufficiently place the definitions of these constants into a more centralized or
isolated location.
Is
IssueInsufficient Use of Symbolic Constants - (9207)9001 (Default Graph) >
9034 (Maintainability) >
9207 (Insufficient Use of Symbolic Constants)
The source code uses literal constants that may need to change
or evolve over time, instead of using symbolic constants.
Is
IssueLoop Condition Value Update within the Loop - (9190)9001 (Default Graph) >
9034 (Maintainability) >
9190 (Loop Condition Value Update within the Loop)
The software uses a loop with a control flow condition based on
a value that is updated within the body of the loop.
Ch
CharacteristicModularity - (9064)9001 (Default Graph) >
9034 (Maintainability) >
9064 (Modularity)
Modularity is a Quality_Characteristic describing the
component's ability to be decomposed and matched in other ways (loosely
coupled).
Is
IssueModules with Circular Dependencies - (9018)9001 (Default Graph) >
9034 (Maintainability) >
9064 (Modularity) >
9018 (Modules with Circular Dependencies)
The software contains modules with circular
dependencies.
Is
IssueReliance on Machine-Dependent Data Representation - (9203)9001 (Default Graph) >
9034 (Maintainability) >
9203 (Reliance on Machine-Dependent Data Representation)
The code uses a data representation that relies on low-level
data representation or constructs that may vary across different processors,
physical machines, OSes, or other physical components.
Is
IssueReliance on Runtime Component in Generated Code - (9202)9001 (Default Graph) >
9034 (Maintainability) >
9202 (Reliance on Runtime Component in Generated Code)
The product uses automatically-generated code that cannot be
executed without a specific runtime support component.
Ch
CharacteristicReusability - (9055)9001 (Default Graph) >
9034 (Maintainability) >
9055 (Reusability)
Reusability is a Quality_Characteristic describing how
efficiently an entity can be used in new applications.
Pr
PracticeReuse - (9088)9001 (Default Graph) >
9034 (Maintainability) >
9055 (Reusability) >
9088 (Reuse)
Reuse
Is
IssueUnreachable Invokable Control Element - (9079)9001 (Default Graph) >
9034 (Maintainability) >
9079 (Unreachable Invokable Control Element)
The software contains a named callable or method control
element that is not reachable by other code, i.e. is dead
code.
Ch
CharacteristicUsability - (9174)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability)
Usability is a Quality_Characteristic describing how much
effort is needed to learn, operate, and interpret outputs of an
entity.
Ch
CharacteristicAccessibility - (9033)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9033 (Accessibility)
Accessibility is a Quality_Characteristic describing the degree
to which a wide variety of users can use the entity.
Ch
CharacteristicAvailability - (9092)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9033 (Accessibility) >
9092 (Availability)
Availability is a Quality_Characteristic describing the degree
to which an entity will operate satisfactorily.
Ch
CharacteristicLearnability - (9171)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9171 (Learnability)
Learnability is a Quality_Characteristic describing how easily
a human can become familiar with an entity.
Ch
CharacteristicOperability - (9015)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9015 (Operability)
Operability is a Quality_Characteristic describing how fit or
ready an entity is for use.
Ch
CharacteristicUnderstandability - (9084)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability)
Understandability is a Quality_Characteristic describing how
easily an entity can be comprehended.
Ch
CharacteristicAnalyzability - (9012)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability) >
9012 (Analyzability)
Analyzability is a Quality_Characteristic describing how easily
an entity can be examined.
Ch
CharacteristicLegibility - (9066)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability) >
9012 (Analyzability) >
9066 (Legibility)
Legibility is a Quality_Characteristic describing how easily an
entity can be read.
Is
IssueInappropriate Comment Style - (9214)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability) >
9012 (Analyzability) >
9066 (Legibility) >
9214 (Inappropriate Comment Style)
The source code uses comment styles or formats that are
inconsistent or do not follow expected standards for the
product.
Is
IssueSource Code Element without Standard Prologue - (9216)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability) >
9012 (Analyzability) >
9216 (Source Code Element without Standard Prologue)
The source code contains elements such as source files or
callables that do not consistently follow a prologue or header that has been
standardized for the project.
Ch
CharacteristicCommunicativeness - (9149)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability) >
9149 (Communicativeness)
Communicativeness is a Quality_Characteristic describing how
well an entity shares an idea.
Ch
CharacteristicConciseness - (9056)9001 (Default Graph) >
9034 (Maintainability) >
9174 (Usability) >
9084 (Understandability) >
9149 (Communicativeness) >
9056 (Conciseness)
Conciseness is a Quality_Characteristic describing how briefly
and accurately an idea can be conveyed.
Is
IssueUse of Inaccurate Comments - (9217)9001 (Default Graph) >
9034 (Maintainability) >
9217 (Use of Inaccurate Comments)
The source code contains comments that do not accurately
describe or explain aspects of the portion of the code with which the comment is
associated.
Is
IssueUse of Platform-Dependent Third Party Components - (9204)9001 (Default Graph) >
9034 (Maintainability) >
9204 (Use of Platform-Dependent Third Party Components)
The product relies on third-party software components that do
not provide equivalent functionality across all desirable
platforms.
Is
IssueUse of Redundant Code - (9011)9001 (Default Graph) >
9034 (Maintainability) >
9011 (Use of Redundant Code)
The software has two or more invokable control elements that
contain the same code.
Is
IssueUse of Same Variable for Multiple Purposes - (9210)9001 (Default Graph) >
9034 (Maintainability) >
9210 (Use of Same Variable for Multiple Purposes)
The code contains a callable, block, or other code element in
which the same variable is used to control more than one unique task or store
more than one instance of data.
Is
IssueUse of Unmaintained Third Party Components - (9205)9001 (Default Graph) >
9034 (Maintainability) >
9205 (Use of Unmaintained Third Party Components)
The product relies on third-party components that are not
actively supported or maintained by the original developer or a trusted proxy
for the original developer.