Thèse de doctorat (2015)
Document en libre accès dans PolyPublie |
|
Libre accès au plein texte de ce document Conditions d'utilisation: Tous droits réservés Télécharger (3MB) |
Résumé
Les logiciels basés sur les services (SBSs) sont développés en utilisant l'Architecture Orientée Services (SOA), comme les SOAP Web services, Service Component Architecture (SCA) et REST. Pourtant, comme tous les autres systèmes complexes, les SBSs sont sujets aux changements. Les changements peuvent être fonctionnelles ou non fonctionnelles et peuvent apparaître à la conception ou a l'implémentation. Ces changements peuvent dégrader la qualité de la conception et la qualité de service (QoS) dans les SBS en introduisant des mauvaises solutions—antipatrons de services. La présence d'antipatron de services dans les SBSs peut entraver l'entretien futur et l'évolution de SBSs. L'évaluation de la qualité de la conception et de la qualité de service de SBSs via la détection des antipatrons de services peut faciliter leur maintenance et leur évolution. Bien qu'il existe quelques points communs entre les différentes technologies SBS, ils varient dans leurs (1) building blocks, (2) les styles de composition, (3) la méthodologie de développement et (4) les styles de communication ou d'interaction client; ce qui posent des défis pour les analyser d'une manière unique. La littérature actuelle manque une approche unifiée pour évaluer la qualité de la conception et de la QoS SBS. Pour répondre à ce besoin, cette thèse présente un méta-modèle unifiant trois technologies SBSs : Web services, SCA et REST. Nous utilisons ce méta-modèle, pour créer une approche unifiée, SODA (Service Oriented Détection for Antipatterns), soutenue par un framework, SOFA (Service Oriented Framework for Antipatterns), pour évaluer la conception et la QoS des SBSs. En utilisant l'approche SODA, nous définissons des règles de détection pour 31 antipatrons de service et 10 patrons de service indépendamment de leurs technologies. Basé sur ces règles, nous générons automatiquement (pour SCA et Web services) ou implémentons (pour REST) leurs algorithmes de detection. Nous appliquons et validons ces algorithmes en termes de precision et de rappel sur (1) deux systemes de SCA, (2) plus de 120 Web services et (3) un ensemble de 15 services REST largement utilisés, incluant Facebook, Twitter et YouTube. Les résultats de détection fournissent des preuves de la présence d'antipatrons de services dans les SBS. Notre méthode de détection possède une précision et un rappel élevées et une performance de détection acceptable en termes de temps. Notre approche SODA et l'outil sous-jacent peuvent aider les praticiens à évaluer leur SBS, ce qui peut entraîner un SBS (1) avec une meilleure qualité de conception et un entretien facilité et (2) une QoS améliorée pour les utilisateurs finaux comparé à un SBS contenant les antipatrons de services.
Abstract
Service-based Systems (SBSs) are developed on top of diverse emerging Service-Oriented Architecture (SOA) technologies and architectural choices, including SOAP Web services, SCA (Service Component Architecture), and REST. Yet, like any other complex systems, SBSs are subject to change. The changes can be functional or non-functional and can be at design or implementation-level. Such changes may degrade the quality of design and quality of service (QoS) of the services in SBSs by introducing poor solutions—service antipatterns. The presence of service antipatterns in SBSs may hinder the future maintenance and evolution of SBSs. Assessing the quality of design and QoS of SBSs through the detection of service antipatterns may ease their maintenance and evolution. With a few commonalities among various SBSs implementation technologies, they vary in their (1) building blocks, (2) composition styles, (3) development methodology, and (4) communication or client interaction styles; which pose challenges to analyse them in a unique manner. However, the current literature lacks a unified approach for evaluating the design quality and QoS of SBSs. To address this need, this dissertation presents an abstraction unifying three SBSs technologies: Web services, SCA, and REST. Using this abstraction, it describes a unified approach, SODA (Service Oriented Detection for Antipatterns), supported by a framework, SOFA (Service Oriented Framework for Antipatterns), for assessing the design and QoS of SBSs. Using the SODA approach, we define detection rules for 31 service antipatterns and 10 service patterns independent of their technologies. Based on these rules, we automatically generate (for SCA and Web services) or implement (for REST) their detection algorithms. We apply and validate these algorithms in terms of precision and recall on (1) two SCA systems, (2) more than 120 SOAP Web services, and (3) a set of 15 widely-used RESTful services, including Facebook, Twitter, and YouTube. The detection results provide evidence of the presence of service antipatterns in SBSs. The reported detection accuracy exhibits a high precision and recall and an acceptable detection performance in terms of detection time. Our SODA approach and the underlying tool can help practitioners to evaluate their SBSs, which may result in an SBS (1) with improved quality of design and easy maintenance and (2) with improved QoS for the end-users than an SBS with antipatterns.
Département: | Département de génie informatique et génie logiciel |
---|---|
Programme: | Génie informatique |
Directeurs ou directrices: | Yann-Gaël Guéhéneuc et Naouel Moha |
URL de PolyPublie: | https://publications.polymtl.ca/1915/ |
Université/École: | École Polytechnique de Montréal |
Date du dépôt: | 16 déc. 2015 13:57 |
Dernière modification: | 03 oct. 2024 18:57 |
Citer en APA 7: | Palma, F. (2015). Unifying Service Oriented Technologies for the Specification and Detection of their Antipatterns [Thèse de doctorat, École Polytechnique de Montréal]. PolyPublie. https://publications.polymtl.ca/1915/ |
---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements