• Nenhum resultado encontrado

Outros serviços e a plataforma OSGi

No documento Plataforma de serviços residenciais (páginas 149-153)

Capítulo 4 – Validação de conceitos

4.3. Outros serviços e a plataforma OSGi

O serviço implementado no âmbito desta dissertação pode ser considerado um serviço relativamente simples, porém, o objectivo era mostrar como a arquitectura OSGi permite construir serviços complexos a partir de módulos de software simples (bundles). Com o objectivo de se ilustrar um pouco mais acerca do universo de serviços possíveis com a plataforma OSGi,

[ 17] [Active ] [ 1] Driver Locator (0.0.4) [ 18] [Active ] [ 1] RXTXComm (1.0.0) [ 19] [Active ] [ 1] Serial Service (0.0.6)

descreve-se de seguida brevemente um serviço na área da domótica e vigilância denominado de BarkIDS [156]. Três entidades distintas intervêm no seu funcionamento: o gateway residencial (onde é executada uma plataforma OSGi), um centro de controlo (para onde são enviados alarmes) e um terminal de utilizador (que recebe alarmes e efectua vídeo chamadas). A figura seguinte apresenta a relação entre as referidas entidades.

Alar me

de in truso

s

Figura 53: Serviço BarkIDS [157]

A aplicação que implementa o serviço BarkIDS foi totalmente implementada sobre a plataforma OSGi e inclui funções como processamento de imagem proveniente de câmaras USB ou IP, algoritmos de detecção de movimento e suporte de vídeo chamada com sinalização SIP. Quando é detectado movimento, um alarme é enviado para o centro de controlo, que por sua vez o reenvia para o terminal do utilizador num formato compatível (por exemplo SMS, MMS, entre outros) com o mesmo. O utilizador pode a qualquer momento efectuar uma vídeo chamada para o domicílio e receber um stream vídeo em tempo real de cada uma das câmaras de vigilância.

Serve esta descrição para concluir que a plataforma OSGi permite a implementação de, virtualmente, todo o tipo de serviços. O factor mais limitativo à implementação de um determinado serviço acaba por ser a capacidade do hardware do gateway de serviços onde a plataforma é executada.

4.4. Observações finais

Como demonstrado ao longo deste capítulo, a plataforma OSGi permite a implementação de serviços (mais concretamente das aplicações que os implementam) através da cooperação

entre bundles. Esta arquitectura modular permite que bundles que fazem parte de uma determinada aplicação possam ser partilhados e utilizados por várias aplicações. Este facto aliado ao facto de a linguagem Java permitir o rápido desenvolvimento de módulos de software, torna o tempo de desenvolvimento de novos serviços muito curto. A execução da plataforma OSGi numa Java Virtual Machine apresenta ainda a vantagem de uma mesma implementação da plataforma ser facilmente portada para gateways de serviços com diferentes arquitecturas e/ou sistemas operativos. Uma consequência directa da portabilidade da framework é a portabilidade dos próprios bundles que, com um mínimo de modificações, podem também ser utilizados nos diferentes tipos de gateways de serviços. De uma forma geral, isto significa que os provedores de serviços poderão desenvolver novos serviços muito rapidamente e apenas necessitam de manter uma única versão de cada serviço, em vez de manterem n versões para n tipos de gateways de serviços. Contudo, a necessidade de uma JVM apresenta também desvantagens. A principal é provavelmente a falta de dispositivos capazes de suportar esta tecnologia eficazmente, o que em muito é devido à resistência dos fabricantes de CPE’s em incluírem esta tecnologia nos seus produtos. No entanto, este problema a pouco e pouco vai sendo ultrapassado através da banalização de dispositivos domésticos com elevados recursos de hardware, tais como consolas de jogos, computadores media centre, entre outros. O facto de estes dispositivos tipicamente usufruírem também de uma ligação de banda larga, torna-os um ponto ideal para a execução de uma plataforma de serviços OSGi.

Essa mesma ligação de banda larga desempenha também um ponto fundamental no sucesso da plataforma OSGi em ambientes residenciais. Se até agora estes serviços resumiam-se a pouco mais que o serviço de acesso à Internet, num futuro próximo o leque de serviços será extenso, diversificado e terá como denominador comum a tecnologia IP. A tecnologia OSGi permite a implementação de todos estes novos serviços o que permite, entre outros, resolver o problema da configuração e gestão remota (como demonstrado com a implementação efectuada) de uma tão grande variedade de serviços. Tal é conseguido por mecanismos disponibilizados pela plataforma e também através da centralização dos vários serviços num único elemento da rede doméstica (em oposição a ter-se um gateway específico a cada serviço). Contudo, as vantagens inerentes ao uso da plataforma OSGi, por si só, poderão não ser suficientes para garantir o sucesso de uma plataforma de serviços residenciais baseada nesta tecnologia. As próprias redes de acesso terão de ser capazes de transportar todos estes novos serviços de um modo satisfatório. Por outras palavras as rede de acesso, independentemente da sua tecnologia, deverão poder ser caracterizadas como o que foi denominado na secção

3.1.2 de redes de acesso de próxima geração. Não obstante, nada impede que gateways de serviços equipados com a tecnologia OSGi sejam desde já disponibilizados para a prestação de serviços residenciais cujo desempenho é satisfatório com as redes de acesso actuais. O facto de a plataforma OSGi não depender da tecnologia usada na rede de acesso, nem necessitar de redes de acesso que disponibilizem grandes larguras de banda para operar satisfatoriamente (por exemplo, um bundle tem tipicamente apenas alguns Megabytes de tamanho) facilita ainda mais esta adopção imediata da tecnologia OSGi.

Provavelmente a maior lacuna que a especificação OSGi ainda apresenta é facto de definir um ambiente multi-serviço mas não um ambiente multi-provedor. Quer isto dizer que vários provedores de serviços terão de obrigatoriamente gerir o seus serviços através de um mesmo gestor remoto, possivelmente propriedade de uma terceira entidade, um operador de gateway. Quer também isto dizer que não existe um isolamento na plataforma entre bundles que pertencem a diferentes provedores de serviços. Porém, soluções baseadas na virtualização da plataforma foram já propostas [158], implementadas e testadas com resultados satisfatórios, o que levará brevemente à sua inclusão na especificação OSGi.

No documento Plataforma de serviços residenciais (páginas 149-153)