Automated DAO Source Code Review for Deployment Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Large-scale data stores face inefficiencies due to the complexity of data store access source code, with multiple groups writing different types of source code, leading to inconsistencies and delays in deploying properly functioning deployables.
Innovation Solution
A computer-implemented automated review method that checks data access object (DAO) source code files for compliance with guidelines, including spring JDBC usage, SQL component types, input typing, and data types, to halt or proceed with deployment based on issue flags.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual source code review is performed by data store managers and IT personnel, then code quality and performance can be ensured, but deployment time increases and productivity decreases
Solution Approach 1:
The system enables self-service automated code review where the review process is performed automatically without requiring manual intervention from data store managers and IT personnel. The automated reviewer system reviews source code files independently, checking for compliance with coding standards and best practices, thereby ensuring code quality while eliminating manual review delays
Solution Approach 2:
The manual mechanical review process is replaced with an automated electronic review system. The automated reviewer uses computer algorithms and software to analyze source code files, substituting the human manual review mechanism with an automated electronic process that maintains code quality checks while significantly reducing deployment time
2Adaptability or versatility
If multiple groups write different types of source code files, then specialized expertise can be utilized, but inconsistencies and errors increase
Solution Approach 1:
The automated reviewer system performs multiple review functions simultaneously - checking DAO source code files for proper database access layer implementation, checking SQL source code files for query optimization and best practices, and checking configuration source code files for proper configuration management. This universal review approach ensures code consistency across different specialized groups while maintaining the benefits of specialized expertise
Solution Approach 2:
The system enforces homogeneous coding standards and best practices across all source code files regardless of which specialized group created them. By applying consistent review criteria to DAO, SQL, and configuration files, the system ensures uniform code quality and consistency across different teams while allowing each group to maintain their specialized expertise
3Reliability
If comprehensive source code review is performed on all files, then code quality improves, but review time and complexity increase
Solution Approach 1:
The comprehensive review process is segmented into three distinct specialized reviewers: a DAO source code file reviewer that checks data access object files, an SQL source code file reviewer that checks query files, and a configuration source code file reviewer that checks configuration files. Each reviewer focuses on specific file types and review criteria, reducing the time and complexity of comprehensive review while maintaining code quality through targeted specialization
Data Source
AI summary
A computer-implemented automated review method for data access object (DAO) source code files seeking to access a data store comprises the steps of checking the DAO source code files for a database connectivity framework usage; setting an issue flag if the DAO source code files do not include any database connectivity framework usage; checking the DAO source code files for a configuration of structured query language (SQL) components; setting the issue flag if the SQL components are not of type “SQL”; checking the DAO source code files for an injection of inputs into the SQL components; setting the issue flag if each input into the SQL components is not typed as a structured object or a single value; reviewing the status of the issue flag; issuing a halt signal if the issue flag is set; and issuing a proceed signal if the issue flag is not set.


