codeNforcer: Automated Code Analysis Tool
Code review is a great way to reduce software defects at an early stage, mentor new developers, and improve collaboration. But, on the other hand, it is a burdensome and expensive procedure that requires a lot of specialists and may result in errors.
Automated code analysis tools are a good alternative to tedious manual code debugging. They can help reduce the burden on developers, lower overall costs, speed up the software development life cycle by quickly identifying bugs and defects that can not be detected during traditional testing.
Challenge
Solution
Using our system, software developers can identify flaws and weaknesses in the software that can not be detected during testing.
The main features of the source code analysis tool include:
- Code convention checking;
- Code analysis and validation using object-oriented and CISQ metrics;
- Task management — the user can create tasks and export them to Jira;
- GitHub integration;
- Quality Target Points — in-built reporting system of points used to check the quality of source code based on security, performance, reliability, architecture quality, and other characteristics;
- Source code quality improvement: the tool provides custom recommendations for improvement of source code architecture, reliability, efficiency, maintainability, and security;
- Code snapshots management;
- Users management;
- Projects management;
- Source code encryption — the user’s source code is encrypted to prevent it from being viewed or stolen;
- Role-based access control — the access to the tool is restricted based on the predefined roles of users;
- Adaptive UI — automatically adapts to mobile and desktop devices;
- Notifications — the tool notifies users about all important project-related events via email.
CodeNforcer comes in two versions: SaaS and cloud-based. The user can choose the one that best meets their needs.
Project Results
CodeNforcer can help software development companies achieve the following:
- Enhanced source code quality;
- Accelerated Software Development Life Cycle;
- Minimized risk of human error;
- Reduced manual work;
- Streamlined QA operations;
- Improved quality of the end product.
Technical challenges
- Development of support for CISQ software quality measures;
- Development of an expert system for source code quality analysis based on object-oriented metrics;
- Development of source code parsers for building object models for source code.