Defesa de Dissertação de Mestrado: Douglas Siqueira Leite
Projeto e Implementação de um Mecanismo de Tratamento de Exceções Coordenadas para Arquiteturas de Componentes de Serviços.
| What | Defesa de Mestrado |
|---|---|
| When |
27/08/2010 from 10:00 to 12:00 |
| Where | Auditório do IC - Sala 85 - IC 2 |
| Add event to calendar |
|
Arquitetura Orientada a Serviços (Service-Oriented Architecture - SOA) é um modelo arquitetural que visa melhorar a eficiência, agilidade e a produtividade de aplicações empresariais através do uso de serviços e composições de serviços, as quais podem ser executadas tanto de forma síncrona quanto assíncrona. Diferentes tecnologias de software podem ser usadas para implementar SOA, tais como Web services e Arquitetura de Componentes de Serviços (Service Component Architecture - SCA). A primeira é baseada em padrões XML, ao passo que a segunda provê um modelo de componentes para implementação de serviços e composições de serviços. Em particular, quando composições de serviços assíncronos são executadas, um ou mais erros podem ocorrer concorrentemente nos diferentes serviços, possivelmente ao mesmo tempo, afetando a dependabilidade da composição. Dessa forma, mecanismos de tolerância a falhas são necessários a fim de prevenir que um defeito se manifeste na composição. Neste trabalho, apresentamos o projeto e implementação de um mecanismo de tratamento de exceções coordenadas, para arquiteturas orientadas a serviços, que permite a criação de composições de serviços assíncronos tolerante a falhas de uma forma flexível. Mais especificamente, nossa solução é baseada em um mecanismo de tratamento de exceções globais, definido pelo modelo Guardian, já que este oferece uma solução mais geral e flexível quando comparado com outras abordagens, tais como soluções baseadas em ações atômicas coordenadas. Nosso framework, denominado Guardian-SCA, foi implementado como parte do projeto Apache Tuscany SCA, usando o modelo de extensão do Tuscany e programação orientada a aspectos, aumentando assim a flexibilidade do framework.
