Following are few factors that could be considered for code audit.
- Code management – Repository structuring, Packaging, Dependency management, Repository branching, Branch permissions, etc.
- Build process – Maven POM, usage of plugins, build time checks, etc.
- Adherence to set coding standards and OEM recommendations.
- Adherence to typical framework design patterns.
- Design smell – Code duplicates, cyclic dependency, etc.
- Code formatting issues.
- Code maintenance – Readability, Source code documentation, Debugging, etc.
- Unit tests.
- Testability of code.
- Configuration of code.
- Reliability – Exception handling, resource disposal, etc.
- Consistency – Multi-thread issues, etc.
- Potential security vulnerability.
- Potential performance issues – Loggers, Code issues, limited usage of caching, etc.
- Code scale issues.