Este relatório documenta o estágio realizado na empresa ParadigmaXis, S.A., para a disciplina de Estágio Curricular da Licenciatura em Engenharia Informática e Computação. O projecto tem como tema "Framework para Desenvolvimento de Sistemas de Comando e Control" e enquadra-se no âmbito do Projecto de Interoperabilidade Multi-lateral (MIP) da Organização do Tratado Norte-Atlântico (NATO).

As operações da NATO requerem que forças no terreno façam parte de um conjunto de coligações combinadas entre vários estados membros e organizações. Embora de inicio estas operações se focassem principalmente em requisitos genéricos de acções militares ofensivas e defensivas, tem-se recentemente verificado um gradual aumento no envolvimento em Operações de Resposta a Crises e Manutenção da Paz.

Uma vez que a troca de informação dentro e entre fronteiras nacionais e linguísticas é crucial para uma visão comum da área operacional, o MIP foi estabelecido em 1998 com o intuito de testar e modificar os protocolos de troca de informação descritos no "Modelo de Dados para Troca Informacional de Sistemas de Comando e Controlo Territoriais" (LC2IEDM). Este último tem como objectivo identificar o conjunto necessário e suficiente de informação que deve ser trocada entre dois sistemas de comando e controlo de forma a representar completa e integralmente a totalidade do seu estado operacional.

O LC2IEDM é, por natureza, um modelo complexo e em constante desenvolvimento, sujeito a várias mutações e evoluções no tempo. Este facto tornou necessário o desenvolvimento de um conjunto de ferramentas e bibliotecas de abstracção das camadas inferiores de acesso ao modelo e persistência de dados, facilitando o desenvolvimento rápido e modular de aplicações que partilhem de uma base comum. Estas necessidades encontram-se agora a ser concrectizadas pelo desenho e implementação de uma framework de desenvolvimento: a MipX, produto resultante deste estágio.

A MipX baseia-se no paradigma de desenvolvimento orientado aos objectos, fornecendo uma camada de acesso a informação suportada por uma base de dados relacional, bem como e o mapeamento do LC2IEDM. Para dar resposta à complexidade e constante mutação do LC2IEDM, a MipX implementa transformadores de meta-informação (descriptores do modelo), bem como geração dinâmica de código e concretização dinâmica de interfaces, proporcionando toda uma arquitectura flexível e de simples utilização.

O desenvolvimento teve lugar usando tecnologias de representação e transformação de dados (XML e XSLT), sistemas de bases de dados relacionais (SQLServer e TransactSQL) e a Microsoft .NET Framework como plataforma de desenvolvimento. O resultado final é uma completa abstracção de tarefas de persistência, modelação e acesso aos dados por parte do programador, fornecendo-lhe todas as potencialidades de um mapeamento orientado aos objectos, documentação in-line e code-completion.

Este projecto encontra-se, no momento de escrita deste documento, numa fase de testes de controlo de qualidade e depuração por parte da ParadigmaXis, bem como em ensaios de integração com outros sistemas representativos de camadas de lógica aplicacional, pelo NC3A.