• Nenhum resultado encontrado

5. Validação

5.5. Conclusões

Este capítulo teve como objectivo validar as contribuições desenvolvidas segundo diferentes critérios. Por um lado houve a necessidade de validar o nível de portabilidade da primeira contribuição desenvolvida, pois o seu objectivo era servir dispositivos heterogéneos. Por outro lado, era necessário validar a performance de todas as contribuições desenvolvidas, de forma a garantir o bom desempenho do trabalho realizado. Por fim foi também validada a usabilidade das diferentes contribuições, através da realização de questionários.

Sobre a primeira contribuição conclui-se que foi atingido, como pretendido, um alto nível de portabilidade. Conclui-se também que, apesar do tradeoff que foi necessário fazer entre portabilidade e eficiência, a interface desenvolvida mostra bom desempenho nas suas diferentes operações e face ao desempenho do próprio servidor Wave. Os resultados do questionário de usabilidade mostraram que a generalidade dos inquiridos concorda com esta afirmação e que houve uma reacção positiva ao trabalho desenvolvido e aos seus resultados.

A validação de performance das contribuições desenvolvidas na plataforma mostrou que, nas primeiras avaliações de desempenho realizadas, havia um custo desnecessário resultante do modelo de envio de eventos para as aplicações. Este custo era especialmente evidente na criação e setup de sessões. A conclusão inferida é que este era consequência necessária do uso de um tópico de JMS por sessão da plataforma. Concluiu-se portanto que deveria se passar a usar um só tópico para toda a plataforma. Para complementar a análise da solução de JMS, verificou-se a RAM gasta pela pelo servidor JBoss com e sem o broker de ActiveMQ integrado. O resultado foi que o ActiveMQ obrigava o JBoss a usar mais 300 MBs de RAM. Como a principal razão de escolha do ActiveMQ foi possibilitar a criação de tópicos dinamicamente, as conclusões retiradas é que deveria também ser abandonado o sistema ActiveMQ e deveria ser usado o sistema de JMS do próprio servidor JBoss.

Depois de realizadas as optimizações descritas no capítulo 4.3.4, que partiram em parte das conclusões do último parágrafo, procedeu-se à reavaliação do desempenho dos diferentes componentes da plataforma. A conclusão retirada dos novos resultados e da comparação entre estes e os resultados originais é que as optimizações introduzidas tiveram um impacto bastante

significativo. Não só foi possível reduzir no tempo de criação e setup de sessões, com a eliminação de um dos componentes que mais tempo gastava, como não se notaram efeitos secundário negativos na utilização das sessões e do sistema de eventos.

Com estes problemas resolvidos o grande bottleneck da plataforma, que já era visível nas validações originais e passou a destacar-se ainda mais com a optimização dos outros componentes, era o acesso à base de dados. Este é consequência do seu complexo modelo de dados, que incluí, por exemplo, referências circulares. Este problema foi herdado da plataforma base e, apesar de não ter sido objectivo desta dissertação resolvê-lo, tentou-se minimizar os custos adicionais resultantes das contribuições desenvolvidas. Porém, a conclusão tirada dos resultados é que deve ser realizado um trabalho de reestruturação do modelo de dados.

Para além da base de dados, outros bottlenecks de menores dimensões eram os servidores de recursos. Especialmente no caso do servidor Wookie, a conclusão retirada é que deverão ser analisados no futuro formas de optimizar a comunicação com os mesmos ou deverão mesmo ser procurados servidores com as mesmas funcionalidades mas mais eficientes.

Por fim, a validação da usabilidade das contribuições desenvolvidas na plataforma permitiu retirar informações importantes sobre a completude e eficácia das mesmas. Não obstante de alguns pormenores que poderiam estar mais completos ou ter sido implementados de forma diferente, houve uma reacção geral positiva ao trabalho realizado e à necessidade do mesmo.

6.

Conclusões

O trabalho realizado nesta dissertação relata o objectivo de modelar e desenvolver uma plataforma extensível que agrupasse diversos recursos colaborativos sob uma interface unificada e que permitisse facilitar e fomentar a construção de aplicações colaborativas complexas a executar em dispositivos heterogéneos.

A partir da análise de um conjunto de trabalhos na área de colaboração, nomeadamente ao nível do estudo de serviços, plataformas e tecnologias colaborativas mais usados hoje em dia, surgiu a motivação para desenvolver algo que pudesse oferecer novas soluções. Mais especificamente, da análise crítica dos conceitos e tecnologias apresentados pelo Google Wave, assim como dos seus protocolos comunicacionais, técnicas para controlo de concorrência e modelos de extensibilidade, surgiu a inspiração para desenvolver uma série de contribuições que levariam à realização do referido objectivo desta dissertação.

A Plataforma Unificada de Colaboração (PUC), que está a ser desenvolvida na PT Inovação, oferece alguns dos requisitos identificados anteriormente. Mais concretamente, a plataforma une funcionalidades de conferências de áudio e vídeo, Slideshow, Whiteboarding, partilha de ficheiros, conferências SIP, entre outras, sob uma única interface colaborativa genérica. No entanto pretendia-se uma plataforma com mais funcionalidades colaborativas, mais extensível e com mais suporte a heterogeneidade.

Assim partiu-se para o desenvolvimento de uma plataforma mais avançada, a partir da plataforma PUC e através da integração na mesma das funcionalidades e conceitos Wave mais marcantes.

De seguida apresenta-se os objectivos enunciados no capítulo da introdução, confrontando- os com o que foi atingido no trabalho efectuado nesta dissertação.