Abstract: A system (104) and a method for optimizing software quality assurance during various phases of Software Development Process (SDP) is provided. In particular, the present invention provides for generating machine learning (ML) models corresponding to respective phases of the SDP based on historical data. Further, each of the generated ML models associated with respective phases of the SDP are configured with a set of parameters. Furthermore, a model configuration corresponding to each phase of SDP is identified by executing configured models on the historical data and a set of predefined result-parameters is analyzed. Yet further, quality assurance events are optimized by analyzing real-time data associated with respective phases of SDP using the identified model configuration corresponding to respective phases. Finally, the prediction-results of the identified model configuration are monitored for respective phases and another model configuration(s) is selected if the performance metrics of the identified model configuration are unsatisfactory. Fig 2.
We claim:
1. A method for optimizing software quality assurance
during various phases of software development process(SDP),
wherein the method is implemented by at least one processor
(112) executing program instructions stored in a
memory(114), the method comprising:
generating, by the processor(112), one or more machine learning models corresponding to respective phases of the SDP from a historical data, wherein the historical data includes various types of data-artifacts associated with the respective phases of SDP;
configuring, by the processor (112), each of the generated ML models associated with the respective phases of SDP with a set of variable parameters corresponding to the respective phases of SDP to generate a plurality of configured models for the respective phases of SDP;
selecting, by the processor (112), a model configuration from the plurality of configured models for the respective phases of SDP for analyzing real-time data associated with the respective phases of SDP based on a predefined result-parameters; and
optimizing, by the processor(112), events associated with quality assurance by analyzing real-time data associated with the respective phases of SDP using the selected model configuration corresponding to the respective phases.
2. The method as claimed in claim 1, wherein
prediction-results obtained by analyzing real-time data via
the selected model configuration corresponding to the
respective phases of SDP are monitored based on a
predefined performance metrics associated with the selected
model configuration, and another model configuration is
selected if the performance metrics of the selected model configuration is unsatisfactory or dips below a predefined threshold of the performance metrics.
3. The method as claimed in claim 1, wherein the historical data is associated with at least one of: application under development (AUT), other related applications having common software modules, and unrelated applications having common software modules, further wherein the historical data may include structured, semi-structured and unstructured data type.
4. The method as claimed in claim 1, wherein generating the machine learning models corresponding to the respective phases of the SDP comprises:
parsing the historical data using one or more
parsing techniques, wherein the one or more parsing
techniques may be selected based on a data type in the
historical data;
analyzing the parsed historical data to identify a
general pattern of defects associated with the respective
phases of SDP and abstracting complex technical details by
analyzing the parsed historical data; and
generating one or more machine learning (ML) models corresponding to the respective phases of SDP based on the analyzed historical data using one or more machine learning techniques.
5. The method as claimed in claim 4, wherein the one or more parsing techniques may be selected from at least one of a regular expression based technique and a Grok pattern based parsing technique.
6. The method as claimed in claim 4, wherein the one or more machine learning techniques may be selected from at least one of: text processing, classification, regression, and clustering.
7. The method as claimed in claim 1, wherein the phases of software development process(SDP) include requirement gathering and analysis, system design, coding, testing, and deployment.
8. The method as claimed in claim 1, wherein each of the generated one or more machine learning models are configured with the set of variable parameters corresponding to the respective phases of SDP.
9. The method as claimed in claim 1, wherein the variable set of parameters include duration of collection of historical data, filters on the priority of data, text processing based parameters including: RegEx pattern, Stopwords, ngram configuration and vectorization parameters, and hyper parameters of algorithms including random forest, Naïve Bayes and K-Means clustering.
10. The method as claimed in claim 1, wherein selecting the model configuration for the respective phases of SDP comprises iteratively executing each of the plurality of configured models corresponding to each phase of SDP on the historical data, and analyzing the set of predefined result-parameters, wherein the model configuration showing closest proximity with the predefined result-parameter values are selected for the respective phases.
11. The method as claimed in claim 1, wherein the
predefined result parameters include model accuracy, model
f1-score, precision, recall, and cluster quality score.
12. The method as claimed in claim 1, wherein optimizing
the events associated with quality assurance comprises:
parsing the real-time data using one or more parsing techniques;
identifying the phases of SDP associated with the real-time data; and
analyzing the parsed real-time data using the selected model configuration associated with the identified phases of SDP to identify data artifacts associated with the identified phases of SDP to optimize quality assurance.
13. The method as claimed in claim 1, wherein events associated with quality assurance include performing risk based testing, pruning and optimizing defect backlogs, predicting number of defects, predicting success percentage of test cases, identifying frequently failing test cases, identifying gaps in testing process, test optimization, triage effort optimization, defect turnaround time improvement, and identifying frequent defects.
14. A system (104) for optimizing software quality assurance during various phases of software development process(SDP), the system (104) comprising:
a memory (114) storing program instructions; a processor (112) configured to execute program instructions stored in the memory (114); and a quality analysis engine (110) executed by the processor (112) to:
generate machine learning (ML) models corresponding to respective phases of the SDP from a historical data, wherein the historical data includes various types of data-artifacts associated with the respective phases of SDP;
configure each of the generated ML models associated with the respective phases of SDP with a set of variable parameters corresponding to the respective phases of SDP to generate a plurality of configured models for the respective phases of SDP;
select a model configuration from the plurality of configured models for the respective phases of SDP for analyzing real-time data associated with the respective phases of SDP based on a predefined result-parameters; and
optimize events associated with quality assurance by analyzing real-time data associated with the respective phases of SDP using the selected model configuration corresponding to the respective phases.
15. The system (104) as claimed in claim 14, wherein prediction-results obtained by analyzing real-time data via the selected model configuration corresponding to the respective phases of SDP are monitored based on a predefined performance metrics associated with the selected model configuration, and another model configuration is selected if the performance metrics of the selected model configuration is unsatisfactory or dips below a predefined threshold of the performance metrics.
16. The system (104) as claimed in claim 14, wherein the historical data is associated with at least one of: application under development (AUT), other related applications having common software modules, and unrelated applications having common software modules, further wherein the historical data may include structured, semi-structured and unstructured data type.
17. The system (104) as claimed in claim 14, wherein the quality analysis engine (110) comprises a data analysis unit (116) in communication with the processor (112), said data analysis unit (116) configured to generate the machine learning models corresponding to the respective phases of the SDP by:
parsing the historical data using one or more
parsing techniques, wherein the one or more parsing
techniques may be selected based on a data type in the
historical data;
analyzing the parsed historical data to identify a
general pattern of defects associated with the respective
phases of SDP and abstracting complex technical details by
analyzing the parsed historical data; and
generating one or more machine learning (ML) models corresponding to the respective phases of SDP based on the analyzed historical data using one or more machine learning techniques.
18. The system (104) as claimed in claim 17, wherein the one or more parsing techniques may be selected from at least one of a regular expression based technique and a Grok pattern based parsing technique.
19. The system (104) as claimed in claim 17, wherein the one or more machine learning techniques may be selected from at least one of: text processing, classification, regression, and clustering.
20. The system (104) as claimed in claim 14, wherein the phases of software development process(SDP) include requirement gathering and analysis, system design, coding, testing, and deployment.
21. The system (104) as claimed in claim 14, wherein the quality analysis engine (110) comprises a configuration and selection unit (120) in communication with the processor (112), said configuration and selection unit(120) configured to configure each of the generated one or more machine learning models with the set of variable parameters corresponding to the respective phases of SDP.
22. The system (104) as claimed in claim 14, wherein the variable set of parameters include duration of collection of historical data, filters on the priority of data, text processing based parameters including: RegEx pattern, Stopwords, ngram configuration and vectorization parameters, and hyper parameters of algorithms including random forest, Naïve Bayes and K-Means clustering.
23. The system (104) as claimed in claim 14, wherein the quality analysis engine (110) comprises a configuration and selection unit (120) in communication with the processor (112), said configuration and selection unit (120)
configured to select the model configuration for the respective phases of SDP by iteratively executing each of the plurality of configured models corresponding to each phase of SDP on the historical data, and analyzing the set of predefined result-parameters, wherein the model configuration showing closest proximity with the predefined result-parameter values are selected for the respective phases.
24. The system (104) as claimed in claim 14, wherein
the predefined result parameters include model accuracy,
model f1-score, precision, recall, and cluster quality
score.
25. The system (104) as claimed in claim 14, wherein the
quality analysis engine (110) comprises a quality
prediction unit (122) in communication with the processor
(112), said quality prediction unit (122) configured to
optimize the events associated with quality assurance by:
parsing the real-time data using one or more parsing techniques;
identifying the phases of SDP associated with the real-time data; and
analyzing the parsed real-time data using the selected model configuration associated with the identified phases of SDP to identify data artifacts associated with the identified phases of SDP to optimize quality assurance.
26. The system (104) as claimed in claim 14, wherein
events associated with quality assurance include performing
risk based testing, pruning and optimizing defect backlogs,
predicting number of defects, predicting success percentage
of test cases, identifying frequently failing test cases,
identifying gaps in testing process, test optimization,
triage effort optimization, defect turnaround time
improvement, and identifying frequent defects.
| # | Name | Date |
|---|---|---|
| 1 | 201941050955-STATEMENT OF UNDERTAKING (FORM 3) [10-12-2019(online)].pdf | 2019-12-10 |
| 2 | 201941050955-PROOF OF RIGHT [10-12-2019(online)].pdf | 2019-12-10 |
| 3 | 201941050955-POWER OF AUTHORITY [10-12-2019(online)].pdf | 2019-12-10 |
| 4 | 201941050955-FORM 1 [10-12-2019(online)].pdf | 2019-12-10 |
| 5 | 201941050955-DRAWINGS [10-12-2019(online)].pdf | 2019-12-10 |
| 6 | 201941050955-COMPLETE SPECIFICATION [10-12-2019(online)].pdf | 2019-12-10 |
| 7 | Abstract 201941050955.jpg | 2019-12-12 |
| 8 | 201941050955-FORM 18 [12-12-2019(online)].pdf | 2019-12-12 |
| 9 | Correspondence by Agent_Form1-Power of Attorney_18-12-2019.pdf | 2019-12-18 |
| 10 | 201941050955-Request Letter-Correspondence [23-12-2019(online)].pdf | 2019-12-23 |
| 11 | 201941050955-Form 1 (Submitted on date of filing) [23-12-2019(online)].pdf | 2019-12-23 |
| 12 | 201941050955-FORM 3 [19-05-2020(online)].pdf | 2020-05-19 |
| 13 | 201941050955-FER.pdf | 2021-10-17 |
| 14 | 201941050955-PETITION UNDER RULE 137 [29-03-2022(online)].pdf | 2022-03-29 |
| 15 | 201941050955-FORM 3 [29-03-2022(online)].pdf | 2022-03-29 |
| 16 | 201941050955-FER_SER_REPLY [29-03-2022(online)].pdf | 2022-03-29 |
| 17 | 201941050955-CLAIMS [29-03-2022(online)].pdf | 2022-03-29 |
| 18 | 201941050955-PatentCertificate15-04-2024.pdf | 2024-04-15 |
| 19 | 201941050955-IntimationOfGrant15-04-2024.pdf | 2024-04-15 |
| 1 | SearchStrategyE_05-07-2021.pdf |