Primeiramente, agradeço a Deus por tudo o que ele faz por mim, por a minha família e por todas as pessoas do mundo. Agradeço à minha família: meus pais, meus irmãos, meus avós e meus tios porque eles sempre estiveram comigo quando tudo ia mal. Agradeço à minha orientadora, Cecília Mary Fischer Rubira, pelo apoio e pela paciência que teve comigo. Agradeço a todos meus amigos do laboratório e do mestrado. Aprendi muito com eles. Agradeço também a todos os professores do mestrado que eu pude conhecer. Eles foram uma boa fonte de experiências e conhecimentos.
ResumoOs dispositivos móveis, hoje em dia, fornecem recursos semelhantes aos de um computador pessoal de uma década atrás, permitindo o desenvolvimento de aplicações complexas. Consequentemente, essas aplicações móveis podem exigir tolerar falhas em tempo de execução. No entanto, a maioria das aplicações móveis de hoje são implantados usando configurações estáticas, tornando difícil tolerar falhas durante a sua execução. Nós propomos uma infraestrutura de implantação auto-adaptativa para lidar com este problema. A nossa solução oferece um circuito autônomo que administra o modelo de configuração atual da aplicação usando um modelo de características dinâmico associado com o modelo arquitetônico da mesma. Em tempo de execução, de acordo com a seleção dinâmica de características, o modelo arquitetônico implantado na plataforma se re-configura para fornecer uma nova solução. Uma aplicação Android foi implementada utilizando a solução proposta, e durante sua execução, a disponibilidade de serviços foi alterada, de tal forma que sua configuração corrente foi dinamicamente alterada para tolerar a indisponibilidade dos serviços.