The initial checks were primarily aimed at standards enforcement, for example, object names, CBD architecture enforcement, use (or abuse) of various properties (e.g. READ properties), etc.
More recently however we have developed a number of checks for customers that are aimed at improving code quality by detecting errors that might be otherwise difficult to find.
We have run these checks on our own products (which are developed with Gen) and have been surprised at the number of potential errors that have been encountered. Usually the more serious errors are detected during testing, but sometimes not!
Examples of the checks that we have found especially useful include:
- Local views that are referenced but never set to a value, indicating that either the local views need to be populated or the code is no longer required;
- Hidden fields (for example fields on a GUI that are placed above the top border) that are not read-only (the user could therefore tab to the field and change its value);
- Export views not fully mapped to an import view on a screen or window;
- Checking the tab sequence for GUI windows and dialog boxes;
These sorts of errors are notoriously difficult to spot via code inspection and can also be missed during testing.