Arquitetura


      A ferramenta proposta neste trabalho, ATOME, integra as tecnologias oferecidas pelo CIAO e disponibiliza um ambiente fácil e produtivo para o desenvolvimento de sistemas baseados em componentes CCM. A figura abaixo apresenta a arquitetura do ATOME e o seu relacionamento com as tecnologias do CIAO.

       O ATOME possui duas macro-funcionalidades importantes: geração de versões iniciais de componentes CCM e configuração e implantação de montagens de tempo-real. Motivado pela considerável complexidade de criação de um componente CIAO (principalmente por desenvolvedores nexperientes), o ATOME disponibiliza recursos gráficos para criação de componentes através da indicação da(s) nterface(s) suportada(s), facetas, receptáculos, produtores, consumidores e atributos que o compõem. Para a definição de uma montagem, o ATOME disponibiliza um editor gráfico para conexão e configuração de atributos e parâmetros temporais dos componentes gerados pela ferramenta ou importados através de seus arquivos IDL.
            Os principais participantes definidos na arquitetura do ATOME são:
• Gerador de Componentes: responsável pela criação de componentes CCM/CIAO através de indicações visuais realizadas na ferramenta, tais como criação de interfaces, atribuição de interfaces a facetas, criação de receptáculos, criação de atributos, definição de tipos de eventos e criação de produtores e consumidores. Interage com o ATOME Template Engine para a geração dos seguintes artefatos: arquivos IDL e CIDL, versão inicial (obviamente sem lógica de negócio) da implementação do componente e arquivo de configuração da ferramenta de compilação MPC (Make Project Creator);
• Importador de IDLs: componentes CCM/CIAO previamente criados podem ser importados para uso em futuras montagens. O importador de IDL realiza o parsing do arquivo IDL, informando a estrutura do componente para o Gerente do Meta-Modelo;
• Gerente do Meta-Modelo: responsável pelo armazenamento de meta-informações referentes aos componentes importados/criados e à montagem sendo configurada. Implementa verificações de consistência na montagem, tais como compatibilidade entre ports (impede conexões inapropriadas ou entre tipos distintos) e detecção de componentes isolados;
• Configurador da Montagem: interage com o Gerente do Meta-Modelo a partir de requisições de conexão e configuração de componentes realizadas pelo usuário. Armazena o mapa de nós do domínio de implantação, contendo os endereços IP e portas das máquinas que podem hospedar componentes;
• Gerente da Previsibilidade: disponibiliza mecanismos para criação das políticas do RT-CORBA (thread pools e modelos de invocação com prioridade). Possibilita a atribuição dessas políticas às instâncias criadas na montagem;
• Gerente de Implantação: responsável pela coleta dos artefatos necessários à implantação distribuída da montagem. Utiliza os serviços subjacentes, disponibilizados pelo DAnCE;
ATOME Template Engine: núcleo central para geração de artefatos. Utiliza arquivos template contendo versões parametrizadas de todos os artefatos gerados.