12.07.2015 Views

Rafael Ferreira Rodrigues Ambiente Declarativo para Sistemas que ...

Rafael Ferreira Rodrigues Ambiente Declarativo para Sistemas que ...

Rafael Ferreira Rodrigues Ambiente Declarativo para Sistemas que ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

O Fomatador NCL 574.3.A Arquitetura de ImplantaçãoNa Seção 4.1 foi mostrado o caráter modular da arquitetura do FormatadorNCL. Essa característica possibilita a realização de otimizações em seu processode implantação. Os seguintes módulos podem ser identificados:• Núcleo do Formatador, formado pelo Formatador e compreendendoo Escalonador, o Conversor e as Informações do Contexto;• Gerenciador de Leiaute;• Gerenciador de Documentos; e• Gerenciador de Adaptadores <strong>para</strong> Exibidores. Sendo <strong>que</strong> cadaexibidor por ele gerenciado constitui um módulo específico.Cada módulo abrange um componente de software diferente. Essescomponentes serão enviados <strong>para</strong> os receptores <strong>para</strong> a reprodução do documentoNCL. Contudo, apenas os módulos necessários em um dado cenário deverão sercarregados.Caso o receptor forneça a capacidade de armazenamento de aplicações, épossível otimizar-se o tempo de iniciação do Formatador ao armazenar localmenteos módulos comumente utilizados. No entanto, algum mecanismo de controle deversão torna-se necessário, afim de evitar problemas de compatibilidade e suportea atualizações dos módulos.4.3.1.Estrutura do Sistema Baseada em ComponentesAo modelar o Formatador NCL de forma a baseá-lo em componentes desoftware, estes devem compor unidades binárias desenvolvidas de formaindependente <strong>que</strong> cooperem através de interfaces bem definidas (Szyperski,2002). Têm-se, assim, as seguintes vantagens:• Capacidade de reutilizar esses componentes em outras aplicações.Ou seja, um mesmo componente ser utilizado <strong>para</strong> TV, desktop,ferramentas de autoria ou até outro tipo de aplicação de formaindependente;• Fácil manutenção e customização desses componentes <strong>para</strong> oferecernovas funcionalidades e recursos. Ou seja, alguns componentes

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!