Abstract: A system and method for anti-pattern detection for computing application prior to deployment in cloud environment is provided. The present invention provides for applying a pre-defined set of rules on one or more applications source code. The pre-defined set of rules are applied in pre-defined order. Further, applying one or more anti-pattern detection models on one or more applications source code. The anti-pattern detection models are applied for determining correlation between one or more syntax patterns of the application source code and the anti-patterns detection models. Further, detecting anti-patterns associated with the syntax patterns of the application source code based on the pre-defined set of rules and the anti-patterns detection models. The detected anti-patterns represent unique anti-patterns. Lastly, generating a migration actionable event for the application source code based on the detected anti-patterns.
We claim:
1. A system for anti-pattern detection for a computing
application prior to deployment in a cloud environment,
the system comprising:
a memory storing program instructions;
a processor configured to execute instructions stored in the memory; and
an application assessment subsystem executed by the processor and configured to:
apply a pre-defined set of rules on one or more applications source code, wherein the pre-defined set of rules are applied in a pre-defined order;
apply one or more anti-pattern detection models on the one or more applications source code, wherein the anti-pattern detection models are applied for determining a correlation between one or more syntax patterns of the application source code and the anti-patterns detection models;
detect anti-patterns associated with the one or more syntax patterns of the application source code based on the pre-defined set of rules and the anti-patterns detection models, wherein the detected anti-patterns represent unique anti-patterns; and
generate a migration actionable event for the application source code based on the detected anti-patterns .
2. The system as claimed in claim 1, wherein the application
source code is in the form of a pre-defined file format.
3. The system as claimed in claim 1, wherein the pre-defined set of rules are representative of regular expression (ReGex) rules, and wherein the ReGex rules are classified into anti-pattern rules, technical stack suitability rules and technology stack summary rules.
4. The system as claimed in claim 1, wherein the application assessment subsystem comprises a rule engine executed by the processor and configured to apply the anti-pattern rules on the application source code for assessing and detecting the anti-patterns occurring in the application source code; applying the technical stack suitability rules on the application source code based on a pre-defined suitability criteria for determination of the technical suitability of an application for cloud migration; and applying technical stack summary rules on the application source code for generating technical summary data of the application source code.
5. The system as claimed in claim 4, wherein the technical summary data of the application source code may comprise at least primary and supporting frameworks, third party libraries, representational state transfer (REST) interfaces, simple object access protocol (SOAP) interfaces, application details, LOC number, number of java files and number of test cases.
6. The system as claimed in claim 1, wherein the application assessment subsystem comprises a model engine executed by the processor and configured to generate and train multiple anti-patterns detection models based on multiple anti-patterns associated with multiple applications source code.
7. The system as claimed in claim 6, wherein the model engine comprises a value stream abstract syntax tree (VAST) transformer unit executed by the processor and configured
to parse the application source code syntax patterns into one or more lexical tokens associated with a programming language based on a one-hot encoding, and wherein the lexical tokens are representative of a string of source code syntax patterns in a unified Standard format.
8. The system as claimed in claim 6, wherein the model engine comprises a source code vectorization unit executed by the processor and is configured to determine the frequency of occurrence of the lexical token based on a bag of words model in the form of a matrix.
9. The system as claimed in claimed in claim 8, wherein the source code vectorization unit is configured to tag the anti-patterns occurring in the matrix against source code characters associated with the lexical tokens present in the matrix.
10. The system as claimed in claim 6, wherein the model engine comprises a model training unit executed by the processor and configured to process the matrix comprising the anti-patterns for generating and training multiple anti-pattern detection models based on a three-layered deep neural network (DNN) technique.
11.The system as claimed in claim 6, wherein the model engine comprises an inference unit executed by the processor and configured to determine the correlation based on at least a fuzzy match technique, and wherein if a correlation is determined between the syntax pattern in the application source code and the anti-pattern detection models, then the correlated syntax pattern of the application source code is tagged as 'an anti-pattern' and syntax patterns for which no correlation is determined are tagged as 'not an anti-pattern' .
12. The system as claimed in claim 11, wherein the inference unit is configured to compute a confidence factor, and wherein the confidence factor is representative of extent of similarity of the correlated syntax pattern as anti-patterns.
13. The system as claimed in claim 12, wherein the model engine comprises a classification unit executed by the processor and configured to compare the computed confidence factor to a pre-defined threshold confidence factor for tagging the correlated syntax pattern as anti-patterns.
14. The system as claimed in claim 1, wherein the migration actionable event includes at least a first event, a second event, a third event and a fourth event, and wherein the first event, the second event, the third event and the fourth event includes rehost, replatform, refactor and rebuild respectively.
15.A method for anti-pattern detection for a computing application prior to deployment in a cloud environment, wherein the method is implemented by a processor executing instructions stored in a memory, the method comprising:
applying, by the processor, a pre-defined set of rules on one or more applications source code, wherein the pre-defined set of rules are applied in a pre-defined order;
applying, by the processor, one or more anti-pattern detection models on the one or more applications source code, wherein the anti-pattern detection models are applied for determining a correlation between one or more syntax patterns of the application source code and the anti-patterns detection models;
detecting, by the processor, anti-patterns associated with the one or more syntax patterns of the application
source code based on the pre-defined set of rules and the anti-patterns detection models, wherein the detected anti-patterns represents unique anti-patterns; and
generating, by the processor, a migration actionable event for the application source code based on the detected anti-patterns.
16. The method as claimed in claim 15, wherein the application source code is in the form of a pre-defined file format.
17 . The method as claimed in claim 15, wherein the pre-defined set of rules are representative of regular expression (ReGex) rules, and wherein the ReGex rules are classified into anti-pattern rules, technical stack suitability rules and technology stack summary rules.
18.The method as claimed in claim 17, wherein the anti-pattern rules are applied on the application source code for assessing and detecting the anti-patterns occurring in the application source code; the technical stack suitability rules are applied on the application source code based on a pre-defined suitability criteria for determination of the technical suitability of an application for cloud migration; and technical stack summary rules are applied on the application source code for generating technical summary data of the application source code.
19. The method as claimed in claim 18, wherein the technical summary data of the application source code may comprise at least primary and supporting frameworks, third party libraries, representational state transfer (REST) interfaces, simple object access protocol (SOAP) interfaces, application details, LOC number, number of java files and number of test cases.
20. The method as claimed in claim 15, wherein multiple anti-patterns detection models are generated and trained based on multiple anti-patterns associated with multiple applications source code.
21.The method as claimed in claim 15, wherein the application source code syntax patterns are parsed into one or more lexical tokens associated with a programming language based on a one-hot encoding, and wherein the lexical tokens are representative of a string of source code syntax patterns in a unified Standard format.
22. The method as claimed in claim 20, wherein the frequency of occurrence of the lexical token is determined based on a bag of words model in the form of a matrix.
23. The method as claimed in claim 22, wherein the anti-patterns occurring in the matrix are tagged against source code characters associated with the lexical tokens present in the matrix.
24. The method as claimed in claim 23, wherein the matrix comprising the anti-patterns is processed for generating and training multiple anti-pattern detection models based on a three-layered deep neural network (DNN) technique.
25 . The method as claimed in claim 15, wherein the correlation is determined based on at least a fuzzy match technique, and wherein if a correlation is determined between the syntax pattern in the application source code and the anti-pattern detection models, then the correlated syntax patterns of the application source code is tagged as 'an anti-pattern' and syntax patterns for which no correlation is determined are tagged as Anot an anti-pattern'.
26. The method as claimed in claim 25, wherein a confidence factor is computed, and wherein the confidence factor is representative of extent of similarity of the correlated syntax pattern as anti-patterns.
27. The method as claimed in claim 25, wherein the computed confidence factor is compared to a pre-defined threshold confidence factor for tagging the correlated syntax pattern as anti-patterns.
28. The method as claimed in claim 15, wherein the migration actionable event includes at least a first event, a second event, a third event and a fourth event, and wherein the first event, the second event, the third event and the fourth event includes rehost, replatform, refactor and rebuild respectively.
| # | Name | Date |
|---|---|---|
| 1 | 201941051518-STATEMENT OF UNDERTAKING (FORM 3) [12-12-2019(online)].pdf | 2019-12-12 |
| 2 | 201941051518-PROOF OF RIGHT [12-12-2019(online)].pdf | 2019-12-12 |
| 3 | 201941051518-POWER OF AUTHORITY [12-12-2019(online)].pdf | 2019-12-12 |
| 4 | 201941051518-FORM 1 [12-12-2019(online)].pdf | 2019-12-12 |
| 5 | 201941051518-DRAWINGS [12-12-2019(online)].pdf | 2019-12-12 |
| 6 | 201941051518-COMPLETE SPECIFICATION [12-12-2019(online)].pdf | 2019-12-12 |
| 7 | 201941051518-FORM 18 [16-12-2019(online)].pdf | 2019-12-16 |
| 8 | Correspondence by Agent_Form-1 and Power of Attorney_18-12-2019.pdf | 2019-12-18 |
| 9 | 201941051518-Request Letter-Correspondence [23-12-2019(online)].pdf | 2019-12-23 |
| 10 | 201941051518-Form 1 (Submitted on date of filing) [23-12-2019(online)].pdf | 2019-12-23 |
| 11 | 201941051518-FORM 3 [26-05-2020(online)].pdf | 2020-05-26 |
| 12 | 201941051518-FER.pdf | 2021-10-17 |
| 13 | 201941051518-PETITION UNDER RULE 137 [03-01-2022(online)].pdf | 2022-01-03 |
| 14 | 201941051518-FORM 3 [03-01-2022(online)].pdf | 2022-01-03 |
| 15 | 201941051518-FER_SER_REPLY [03-01-2022(online)].pdf | 2022-01-03 |
| 16 | 201941051518-DRAWING [03-01-2022(online)].pdf | 2022-01-03 |
| 17 | 201941051518-COMPLETE SPECIFICATION [03-01-2022(online)].pdf | 2022-01-03 |
| 18 | 201941051518-CLAIMS [03-01-2022(online)].pdf | 2022-01-03 |
| 19 | 201941051518-US(14)-HearingNotice-(HearingDate-18-09-2025).pdf | 2025-08-21 |
| 20 | 201941051518-REQUEST FOR ADJOURNMENT OF HEARING UNDER RULE 129A [29-08-2025(online)].pdf | 2025-08-29 |
| 21 | 201941051518-FORM-26 [05-09-2025(online)].pdf | 2025-09-05 |
| 22 | 201941051518-US(14)-ExtendedHearingNotice-(HearingDate-17-10-2025)-1130.pdf | 2025-09-15 |
| 23 | 201941051518-FORM-26 [07-10-2025(online)].pdf | 2025-10-07 |
| 24 | 201941051518-Correspondence to notify the Controller [07-10-2025(online)].pdf | 2025-10-07 |
| 25 | 201941051518-POA [14-10-2025(online)].pdf | 2025-10-14 |
| 26 | 201941051518-FORM 3 [14-10-2025(online)].pdf | 2025-10-14 |
| 27 | 201941051518-FORM 13 [14-10-2025(online)].pdf | 2025-10-14 |
| 28 | 201941051518-AMENDED DOCUMENTS [14-10-2025(online)].pdf | 2025-10-14 |
| 29 | 201941051518-FORM-26 [17-10-2025(online)].pdf | 2025-10-17 |
| 30 | 201941051518-Written submissions and relevant documents [31-10-2025(online)].pdf | 2025-10-31 |
| 31 | 201941051518-MARKED COPIES OF AMENDEMENTS [31-10-2025(online)].pdf | 2025-10-31 |
| 32 | 201941051518-FORM 13 [31-10-2025(online)].pdf | 2025-10-31 |
| 33 | 201941051518-AMENDED DOCUMENTS [31-10-2025(online)].pdf | 2025-10-31 |
| 34 | 201941051518-PatentCertificate14-11-2025.pdf | 2025-11-14 |
| 35 | 201941051518-IntimationOfGrant14-11-2025.pdf | 2025-11-14 |
| 1 | SearchstrategyE_06-07-2021.pdf |