Improving web service interfaces modularity using multi-objective optimization

被引:11
作者
Boukharata, Sabrine [1 ]
Ouni, Ali [1 ]
Kessentini, Marouane [2 ]
Bouktif, Salah [3 ]
Wang, Hanzhang [4 ]
机构
[1] Univ Quebec, ETS Montreal, Montreal, PQ, Canada
[2] Univ Michigan, Comp & Informat Sci Dept, Ann Arbor, MI 48109 USA
[3] UAE Univ, Coll Informat Technol, Al Ain, U Arab Emirates
[4] eBay, San Jose, CA USA
基金
加拿大自然科学与工程研究理事会;
关键词
Web service; Web service interface; Service design; Modularity; SOA; Searchbased software engineering; OPPORTUNITIES; COHESION; IMPACT;
D O I
10.1007/s10515-019-00256-4
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Service interface is a critical component in a service-oriented architecture (SOA). As first-class design artifact, a service interface should be properly designed to provide best practice of third-party reuse. However, a very common bad service design practice in existing SOAs is to place semantically unrelated operations implementing several abstractions in a single interface. Poorly designed service interfaces can have a negative effect on all client applications that use these services. Indeed, services with such poor interface structure tend to be difficult to comprehend, maintain and reuse in business processes, leading to unsuccessful services. Necessarily, then, service designers should refactor, i.e., restructure, their service interface into smaller, more cohesive interfaces, each representing a specific abstraction. To address this problem, we introduce a novel approach, namely WSIRem, to support service's developers in improving the modularization of their service interfaces. WSIRem is based on a multi-objective search-based optimization approach to find the appropriate modularization of a service interface into smaller, more cohesive and loosely coupled interfaces, each implementing a distinct abstraction. WSIRem has been empirically evaluated on a benchmark of 22 real-world Web services provided by Amazon and Yahoo. Results show that the automatically identified interfaces improved the services interface structure. Qualitative evaluation of WSIRem with developers showed the performance of WSIRem in terms of understandability, where the new WSIRem interfaces were recognized as relevant' from developers point of view with more than 73% of precision and 77% of recall. Overall, the obtained results show that WSIRem outperforms state-of-the-art approaches relying on traditional partitioning techniques.
引用
收藏
页码:275 / 312
页数:38
相关论文
共 69 条
[61]   Refactoring Fat Interfaces Using a Genetic Algorithm [J].
Romano, Daniele ;
Raemaekers, Steven ;
Pinzger, Martin .
2014 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME), 2014, :351-360
[62]   A Genetic Algorithm to Find the Adequate Granularity for Service Interfaces [J].
Romano, Daniele ;
Pinzger, Martin .
2014 IEEE WORLD CONGRESS ON SERVICES (SERVICES), 2014, :478-485
[63]  
Rotem-Gal-Oz Arnon, 2012, SOA PATTERNS
[64]  
Seng O, 2005, GECCO 2005: GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE, VOLS 1 AND 2, P1045
[65]   Opportunities and challenges applying functional data analysis to the study of open source software evolution [J].
Stewart, Katherine J. ;
Darcy, David P. ;
Daniel, Sherae L. .
STATISTICAL SCIENCE, 2006, 21 (02) :167-178
[66]  
Torkamani Mohammad Ali., 2014, International Journal of Electrical and Computer Engineering (IJECE), V4, P16, DOI DOI 10.11591/ijece.v4i1.4097
[67]  
Wang H, 2018, IEEE T SERV COMPUT T
[68]   An effectiveness measure for software clustering algorithms [J].
Wen, Z ;
Tzerpos, V .
IWPC 2004: 12TH IEEE INTERNATIONAL WORKSHOP ON PROGRAM COMPREHENSION, PROCEEDINGS, 2004, :194-203
[69]   A Knee Point-Driven Evolutionary Algorithm for Many-Objective Optimization [J].
Zhang, Xingyi ;
Tian, Ye ;
Jin, Yaochu .
IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, 2015, 19 (06) :761-776