METHOD, SYSTEM AND PROGRAM PRODUCT FOR DETECTING DEVIATION FROM SOFTWARE DEVELOPMENT BEST PRACTICE RESOURCE IN A CODE SHARING SYSTEM
First Claim
1. A system for building a dynamic best practice violation (BPV) engine resource for detecting software development best practice violations, comprising:
- a code reception system for receiving sets of source code from a plurality of sources;
a language detection system for detecting a programming language of each of the sets of source code;
a pattern extraction system for extracting a plurality of code patterns from the sets of source code;
a code pattern analysis system for defining meta data for each of the plurality of code patterns that indicates a quality of the plurality of code patterns; and
a classification and ranking system for classifying and assigning a rank to each of the plurality of code patterns based on the corresponding meta data.
0 Assignments
0 Petitions
Accused Products
Abstract
Under the present invention, a best practice violation (BPV) engine resource is first built. This typically occurs by: receiving sets of source code from a plurality of sources; detecting a programming language of each of the sets of source code; extracting code patterns from the sets of source code; defining meta data for each code pattern that indicates a quality thereof, classifying each code pattern; and assigning a rank to each of the code pattern based on it'"'"'s corresponding meta data as well as a skill level and an experience level of the developer thereof. Once the BPV engine resource is built, it will be used to detect best practice violations in other sets of source code.
33 Citations
24 Claims
-
1. A system for building a dynamic best practice violation (BPV) engine resource for detecting software development best practice violations, comprising:
-
a code reception system for receiving sets of source code from a plurality of sources; a language detection system for detecting a programming language of each of the sets of source code; a pattern extraction system for extracting a plurality of code patterns from the sets of source code; a code pattern analysis system for defining meta data for each of the plurality of code patterns that indicates a quality of the plurality of code patterns; and a classification and ranking system for classifying and assigning a rank to each of the plurality of code patterns based on the corresponding meta data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A best practice violation (BPV) engine for detecting software development best practice violations, comprising:
-
a test reception system for receiving a first set of source code; a test extraction system for extracting a code pattern to be tested from the first set of source code; a test classification system for classifying the code pattern to be tested; a matching system for comparing the code pattern to be tested to a plurality of code patterns extracted from other sets of source code previously received and analyzed by the BPV engine to determine a closest match to the code pattern to be tested, and for assigning a rank previously assigned to the closest match to the code pattern to be tested; and a deviation detection system for detecting a software development best practice violation if the rank assigned to the code pattern to be tested fails to comply with a predetermined threshold. - View Dependent Claims (11, 12)
-
-
13. A program product stored on a recordable medium for building a dynamic best practice violation (BPV) engine resource for detecting software development best practice violations, which when executed, comprises:
-
program code for receiving sets of source code from a plurality of sources; program code for detecting a programming language of each of the sets of source code; program code for extracting a plurality of code patterns from the sets of source code; program code for defining meta data for each of the plurality of code patterns that indicates a quality of the plurality of code patterns; and program code for classifying and assigning a rank to each of the plurality of code patterns based on the corresponding meta data. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A best practice violation (BPV) engine stored on a recordable medium for detecting software development best practice violations, which when executed, comprises:
-
program code for receiving a first set of source code; program code for extracting a code pattern to be tested from the first set of source code; program code for classifying the code pattern to be tested; program code for comparing the code pattern to be tested to a plurality of code patterns extracted from other sets of source code previously received and analyzed by the BPV engine to determine a closest match to the code pattern to be tested, and for assigning a rank previously assigned to the closest match to the code pattern to be tested; and program code for detecting a software development best practice violation if the rank assigned to the code pattern to be tested fails to comply with a predetermined threshold. - View Dependent Claims (23, 24)
-
Specification