Rule categories for Java Code Review software analysis

The following table lists and describes the rule categories for Java™ Code Review software analysis.
Category Subcategory Description
Design Principles   Ensure adherence to the design principles of object-oriented programming
  Complexity Prevent unnecessarily complex code
Globalization   Ensure that code runs correctly in localized environments
  Cultural Formatting Address data-formatting options that are used in different parts of the world
  Encoding Validate encoding for globalization
  Locale Handling Validate locales for globalization
  String Handling Validate string operations for globalization
  Translation Validate code for translation
  UI Specific Validate UI layout and content for globalization
J2EE Best Practices   Adhere to the best practices for J2EE development and support Web projects that are targeted for WebSphere® servers
  Correctness Detect incorrect method calls
  Data Race Detect method invocations that can cause data race conditions in J2EE applications
  Garbage Collection Detect method invocations that can delay garbage collection
  Maintainability Detect code that might be difficult to maintain in J2EE applications
  Performance and Scalability Detect method invocations that hinder the performance or limit the scalability of a J2EE application
J2EE Security   Validate compliance with Java security standards
  J2EE Security Validate compliance with Java security standards in a J2EE environment
J2SE Best Practices   Validate code for compliance with J2SE best practices for Java development
  AWT Detect issues that are related to using the Abstract Window Toolkit library
  Casting Detect casting and coercion issues
  Cloneable Detect object cloning issues
  Comparison Detect issues that are related to comparing objects and testing object equality
  Conditional Detect issues that are related to using conditionals
  Constructors Detect issues that are related to defining and implementing constructors
  Declaration Contains rules that detect issues related to declaring constants, variables, and fields
  Exceptions Detect issues that are related to exception handling
  Initialization Detect issues that are related to the initialization of primitives and objects
  Loop Detect issues that are related to using loops
  Null Detect issues related to using null values
  Portability Detect portability issues
  Reflection Detect issues that are related to using reflection
  Serialization Detect serialization issues
  Statement Detect general issues in statements
  Switch Detect issues that are related to using switch statements
  Threads Detect issues that are related to using threads
J2SE Security   Validate compliance with Java security standards
  J2SE security Validate compliance with Java security standards in a J2SE environment
JUnit   Address different problems that can occur with JUnit tests
Naming   Ensure adherence to naming conventions for elements in Java source code
  Conflicts Ensure that elements are named consistently in Java source code
Performance   Help improve the performance and reduce the memory footprint in Java applications
  Memory Detect performance issues that are related to memory usage
  Profiling Detect potential performance issues that are related to profiling activities
  Speed Suggest ways to improve the speed of Java code execution
Private API   Locate APIs that do not belong in Java code
  Sun Locate APIs that do not belong in Java code
  WebSphere Locate APIs that do not belong in Java code

Feedback