TY - JOUR
T1 - Improving web service interfaces modularity using multi-objective optimization
AU - Boukharata, Sabrine
AU - Ouni, Ali
AU - Kessentini, Marouane
AU - Bouktif, Salah
AU - Wang, Hanzhang
N1 - Funding Information:
Acknowledgements This work is partially supported by NSERC Discovery Grant (Grant No. RGPIN-2018-05960), and by the Research Start-up (2) 2016 Grant G00002211 funded by UAE University.
Publisher Copyright:
© 2019, Springer Science+Business Media, LLC, part of Springer Nature.
PY - 2019/6/15
Y1 - 2019/6/15
N2 - 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.
AB - 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.
KW - Modularity
KW - SOA
KW - Searchbased software engineering
KW - Service design
KW - Web service
KW - Web service interface
UR - http://www.scopus.com/inward/record.url?scp=85066014299&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85066014299&partnerID=8YFLogxK
U2 - 10.1007/s10515-019-00256-4
DO - 10.1007/s10515-019-00256-4
M3 - Article
AN - SCOPUS:85066014299
SN - 0928-8910
VL - 26
SP - 275
EP - 312
JO - Automated Software Engineering
JF - Automated Software Engineering
IS - 2
ER -