• Aucun résultat trouvé

CHAPITRE 1 : DESCRIPTION DU CONTEXTE

1.2 Activités d’exportation à l’entrepôt

Este trabalho apresentou uma estratégia que consiste na solução dos problemas rela- cionados a adoção de um modelo Multi-Cloud, do ponto de vista da aplicação. A solução apresentada tem enfoque na modelagem de serviços de nuvem e na especificação de requi-

sitos não-funcionais que permitam a seleção apropriada de uma configuração de serviços multi-cloud. Considerando que a quantidade de serviços, bem como a complexidade da especificação do serviços, pode crescer rapidamente, desenvolvemos um algoritmo baseado na técnica B&B, para conferir escalabilidade ao processo de seleção da configuração. Com a configuração selecionada, o processo de adaptação é executado respeitando a técnica de programação utilizada pela aplicação para esse fim, que nesse trabalho é exemplificada através de duas técnicas baseadas em suporte de linguagem(Programação Orientada a Aspectos e Programação Orientada a Contexto) e uma técnica que utiliza o framework FraSCAti para reconfiguração de componentes.

Diante da proposta discutida ao longo desse trabalho, reapresentamos as contribuições que foram originalmente propostas no Capítulo 1:

AdaptMCloud: Estratégia para Adaptação de Aplicações Multi-Cloud.

A estratégia, que foi apresentada em detalhes no Capítulo 3, descreve um loop de

controle autonômico, baseado no loop MAPE-K(IBM, 2006), que permite monito-

rar, analisar, planejar e executar o processo de adaptação dinâmica. Com elementos independentes e flexíveis, a estratégia proposta permite um alto grau de modulari- zação, além de suportar múltiplas técnicas de programação, sem a necessidade de implementar novos componentes, para suporte ao processo de adaptação. Cada fase do loop de controle funciona de forma independente da outra, de forma que qualquer alteração em dos elementos que as compõe não afetam o funcionamento geral. Para evitar sobrecarga da aplicação, assim como facilitar o processo de adoção da solução proposta, desenvolvemos e implantamos os principais elementos do loop de controle em um contêiner Docker, permitindo que desenvolvedores e usuários possam mi- grar rapidamente a instalação do loop sem a necessidade de realizar configurações

de baixo nível. (CAVALCANTE et al., 2012), (ALMEIDA et al., 2013), (ALMEIDA et al.,

2012).

DynamicNFR: Uma Linguagem para Especificação de Requisitos Não-Funci- onais.

A linguagem implementada e integrada ao ambiente Eclipse, juntamente com o mo- delo de features estendido, permite especificar requisitos não-funcionais para seleção de configuração geradas a partir do modelo construído. Na linguagem criada, usuá- rios e desenvolvedores estabelecem limites mínimos e máximos para propriedades usadas como base na especificação. Os resultados obtidos mostram que utilizando a linguagem junto com o AdaptMCloud, o nível de satisfação do usuário, perante

os requisitos especificados, ficou próximo a 92.73%. Com as avaliações realizadas, chegamos a conclusão que a linguagem proposta, juntamente com o uso do modelo de features estendido, permitiu o efetivo acompanhamento do nível de satisfação do usuário, com relação a configuração multi-cloud selecionada, fato esse que responde

positivamente a questão de pesquisa número 01. (ALMEIDA et al., 2015).

Implementação B&B para seleção de serviços de nuvem.

Considerando que escalabilidade é um dos elementos chaves dentro da computação em nuvem, o processo de seleção de serviços de nuvem deve ser construído sobre a mesma perspectiva, entregando resultados dentro do tempo esperado e preparado para adição de novas plataformas e serviços. Comparado a implementação tradicio- nal, que analisa de forma exaustiva as possíveis combinações de serviços de nuvem descritos pelo modelo de features, a implementação B&B apresentou um aumento médio de tempo de execução de 53%, bem abaixo dos 260% do algoritmo conven- cional. Para realizar medição, como mencionado anteriormente, foram construídos diversos cenários de execução, com conjunto de configurações variando de 54 até 1080. Além disso, o algoritmo foi projetado para ser usado de forma independente do AdaptMCloud, podendo ser adaptado para outros domínios, em especial no de derivação de produtos construídos a partir de modelos de feature. Para responder a questão de pesquisa número 02, aplicamos diversos métodos estatísticos para vali- dação das hipótese levantadas, especificamente sobre a superioridade do algoritmo B&B. Pelos resultados apresentados no Capítulo 5, todos os valores medidos são estatisticamente favoráveis a melhor performance do algoritmo B&B, com valores de p menores do que 0.05 (valor de significância adotado). Isso confirma a hipótese de que o algoritmo B&B apresenta melhora de desempenho em relação ao algoritmo

convencional. (ALMEIDA et al., 2014b).

Estudo Empírico sobre a avaliação do uso diferentes técnicas de programação, que dão suporte a adaptação dinâmica.

Através da implementação/adaptação de 2 aplicações exemplo, cada uma delas com versões para cada técnica de programação apresentadas anteriormente, investigamos o comportamento de cada técnica a luz dos atributos de modularidade e desempe- nho. Os resultados obtidos mostram os pontos positivos e negativos de cada técnica investigada, além de realizar uma co-relação entre as mesmas, fornecendo assim os elementos necessários para que o desenvolvedor escolha uma técnica em detrimento da outra, com base nas suas especificidades. A técnica AOP apresenta leve supe- rioridade em relação a modularidade quando comparada com a técnica COP, fato

esse justificado pela estratégia de weaving utilizada pelo framework JBoss AOP, que permite a definição de pointcuts através de cadeias de caracteres, enquanto que na técnica COP é necessário encapsular em classes contextuais a definição dos pointcuts. A técnica SCA requer um maior número de adaptações do código base da aplicação, já que as requisições aos componentes definidos são feitas de forma explicita pelo framework FraSCAti. Quando comparado através dos atributo de de- sempenho, essa mesma técnica apresenta leve superioridade em relação as técnicas COP e AOP, apesar de ter uma oscilação no consumo de memória de 21.95%. Pelos resultados obtidos e objetivando responder a questão de pesquisa número 03, chega- mos a conclusão que a técnica COP apresenta o melhor custo benefício em termos de modularidade x desempenho. Porém, diante das limitações das versões atuais das linguagens orientadas a contexto, observamos que é necessário atenção adicional na

adoção dessa técnica. (ALMEIDA et al., 2014a).

Documents relatifs