Bi-level Identification of Web Service Defects

Successful Web services must evolve to remain relevant (e.g. requirements update, bugs fix, etc.), but this process of evolution increases complexity and can cause the Web service interface design to decay and lead to significantly reduced usability and popularity of the services. Maintaining a high level of design quality is extremely expensive due to monetary and time pressures that force programmers to neglect improving the quality of their interfaces. A more fundamental reason is that there is little support to automatically identify design defects at the Web service interface level and reduce the high calibration effort to determine manually the threshold value for each quality metric to identify design defects. In this paper, we propose to treat the generation of interface design defects detection rules as a bi-level optimization problem. To this end, the upper level problem generates a set of detection rules, as combination of quality metrics, which maximizes the coverage of a base of defects examples extracted from several Web services and artificial defects generated by the lower level. The lower level maximizes the number of generated artificial defects that cannot be detected by the rules produced by the upper level. The statistical analysis of our experiments over 30 runs on a benchmark of 415 Web services shows that 8 types of Web service defects were detected with an average of more than 93 % of precision and 98 % recall. The results confirm the outperformance of our bi-level proposal compared to state-of-art Web service design defects detection techniques and the survey performed by potential users and programmers also shows the relevance of the detected defects.

[1]  Jean-Marc Jézéquel,et al.  Specification and Detection of SOA Antipatterns , 2012, 2014 IEEE International Conference on Software Maintenance and Evolution.

[2]  Marcelo R. Campo,et al.  Automatically Detecting Opportunities for Web Service Descriptions Improvement , 2010, I3E.

[3]  David Osborne,et al.  J2EE AntiPatterns , 2003 .

[4]  Jonathan F. Bard,et al.  Practical Bilevel Optimization , 1998 .

[5]  Kalyanmoy Deb,et al.  Multi-objective Stackelberg game between a regulating authority and a mining company: A case study in environmental economics , 2013, 2013 IEEE Congress on Evolutionary Computation.

[6]  Alejandro Zunino,et al.  A tool to improve code‐first Web services discoverability through text mining techniques , 2015, Softw. Pract. Exp..

[7]  Jaroslav Král,et al.  Popular SOA Antipatterns , 2009, 2009 Computation World: Future Computing, Service Computation, Cognitive, Adaptive, Content, Patterns.

[8]  Yann-Gaël Guéhéneuc,et al.  Specification and Detection of SOA Antipatterns in Web Services , 2014, ECSA.

[9]  Nirupam Chakraborti,et al.  Genetic programming through bi-objective genetic algorithms with a study of a simulated moving bed process involving multiple objectives , 2013, Appl. Soft Comput..

[10]  Hamid Bagheri,et al.  A Systematic Method for Identification of Anti-patterns in Service Oriented System Development , 2014 .

[11]  Alejandro Zunino,et al.  Best practices for describing, consuming, and discovering web services: a comprehensive toolset , 2013, Softw. Pract. Exp..

[12]  Marouane Kessentini,et al.  Search-Based Web Service Antipatterns Detection , 2017, IEEE Transactions on Services Computing.