Desenvolvimento de serviços compostos autoadaptativos: um framework baseado em implantação dinâmica, métricas de QoS e informação semântica - Passini, William Filisbino [UNESP] (Universidade Estadual Paulista (Unesp), 2020)
O cenário atual de desenvolvimento de software tem revelado um uso crescente de aplicações baseadas em serviços. Em um ambiente de computação distribuída, monitorar a qualidade de serviços para que essa aplicação não apresente algum tipo de anomalia ou interrupção pode ser considerada uma tarefa vital. Para isso, é necessário prover meios para o desenvolvimento de sistemas baseados em serviços capazes de observar seu estado interno de execução e/ou contexto ao qual estão inseridos e reagir diante de mudanças ou algum tipo de imprevisibilidade. Aplicações orientadas a serviços que permitem adaptação em tempo de execução podem ser classificadas como Self-Apps (do inglês, Self-adaptive Service-oriented Applications). Em função da complexidade intrínseca a esse tipo de aplicação, o uso de frameworks tem se mostrado uma alternativa viável por aliviar a carga cognitiva de desenvolvimento, a qual envolve o conhecimento de diversas áreas de pesquisa. Motivado por esse cenário, durante a realização deste trabalho foi conduzida uma revisão da literatura que engloba a condução de um mapeamento sistemático e consultas complementares em bases nacionais de teses e dissertações. Essa revisão permitiu obter um panorama detalhado referente ao estágio atual da pesquisa, seus desafios e as perspectivas futuras sobre frameworks para Self-Apps. Embasado nos resultados dessa revisão, o objetivo deste trabalho é o desenvolvimento do framework DynaMS (do inglês, Dynamic Deployment, QoS Metrics and Semantic Search) para apoiar a construção desse tipo de aplicação. Em linhas gerais, esse framework visa apoiar o desenvolvimento de aplicações baseadas em serviços simples e/ou compostos que utilizem os protocolos SOAP (do inglês, Simple Object Access Protocol) e REST (do inglês, Representational State Transfer), empregando os seguintes recursos: (i) técnicas de implantação dinâmica de serviços Web; (ii) métricas de QoS (do inglês, Quality of Service) para avaliação de tais serviços; e (iii) busca semântica baseada em critérios de similaridade. Como resultado, este trabalho apresenta duas contribuições relevantes: (i) o framework DynaMS, o qual abstrai a complexidade de desenvolvimento desse tipo de aplicação, além de propiciar vários benefícios aos interessados; e (ii) um mapeamento da literatura, pois acredita-se que esse mapeamento possa oferecer aos profissionais da indústria e comunidades científicas um panorama para nortear o aprimoramento e desenvolvimento de novas soluções para o domínio de Self-Apps. Por fim, cabe ressaltar que o trabalho foi avaliado por meio do desenvolvimento de uma aplicação móvel orientada a serviços para um restaurante inteligente, além de uma comparação empírica com outros frameworks disponíveis na literatura.

The current software development scenario has shown a crescent usage of service-based applications. In a distributed computing environment, the monitoring of the service’s quality is a relevant task because aims to assure that it does not present any anomaly or interruption. To do so, it is necessary to provide means to develop service-based systems that are capable to observe their internal execution state and/or the context in which they are inserted and to react in face of changes or unforeseen circumstances. Service-oriented applications that are able to perform adaptation in runtime can be classified as Self-Apps (i.e., Self-adaptive Service-oriented Applications). Given the complexity involved in this type of application, the use of frameworks has been shown as a viable alternative to reduce the cognitive development load regarding the knowledge from different research areas. Motivated by this scenario, we conducted a literature review as a part of this work. This review includes a systematic mapping and complementary searches to national thesis and dissertations’ databases. This review provided us a detailed panorama about the current stage of research, its challenges and the future perspectives regarding frameworks for Self-Apps. Based on the results from this review, the purpose of this Master’s project is to present a framework called DynaMS (Dynamic Deployment, QoS Metrics and Semantic Search) to support the development of this type of application. In short, this framework aims to support the development of simple and composed service-based applications that use the SOAP (i.e., Simple Object Access Protocol) and REST (i.e., Representational State Transfer) protocols. To do so, our framework addresses three issues: (i) web service’s dynamic deployment techniques; (ii) QoS (i.e., Quality of Service) metrics used to evaluate such services; and (iii) semantic search based on a set of similarity criteria. As a result, this work presents two relevant contributions: (i) the DynaMS framework, which reduces the complexity level involved in the development of this type of application and, at the same time, provides the stakeholders with other benefits; and (ii) a literature mapping, which leads us to believe that a panorama regarding both the enhancement and development of new solutions to the Self-Apps domain can be offered to industry professionals and scientific communities. Finally, it is important to highlight that we evaluated such framework through the development of a service-oriented mobile application for an intelligent restaurant and also through an empirical evaluation with other frameworks available in the literature.
Developing self-adaptive composed services: a framework based on dynamic deployment, QoS metrics and semantic information
Keywords: Framework; Arquitetura orientada a serviços; Sistemas autoadaptativos; Serviços semânticos; QoS; Service oriented architecture; Self-adaptive systems; Semantic services