|
Acadêmico(a): Alexandro Deschamps |
Título: Ferramenta para Geração de Código a partir da Especialização do Diagrama de Classes |
|
Conclusão: |
O objetivo do trabalho foi atingido, o qual consistia no desenvolvimento de uma ferramenta de auxílio ao processo de desenvolvimento que possibilitasse a geração de código com base na especialização de diagramas de classes UML (Unified Modeling Language) por arquitetura e idioma. Para o desenvolvimento da ferramenta foram utilizadas tecnologias e ferramentas conceituadas no mercado de desenvolvimento de software. Algumas tecnologias como o Microsoft .NET e XMI (XML Metadata Interchange) foram consideradas pré-requisitos para a implementação da mesma. Todos os objetivos específicos do trabalho também foram atingidos. A importação dos diagramas de classes ocorre através de artefatos XMI. Os diagramas de classes importados são especializados por arquitetura e idioma através de uma interface gráfica única, o que facilita a especialização de cada elemento destes diagramas. A interface para acoplamento de plugins disponibiliza aos mesmos os diagramas de classes especializados através de coleções, facilitando assim o acesso aos dados para implementação da lógica de geração. A melhora na qualidade do software desenvolvido e a redução do tempo de desenvolvimento abordados na introdução do trabalho, não são mais vistos pelo mercado como um diferencial, mas sim como um requisito fundamental para fechamento de negócios. Com base nos problemas citados, o processo de Engenharia da Produção (Forward Engineering) através da geração de código tem a função de amenizar estes problemas. A geração de código reduz o tempo do processo de desenvolvimento, pois minimiza a necessidade de codificação manual e aumenta a confiabilidade do código gerado, pois é produzido por uma ferramenta depurada e testada (FISHER, 1990, p.10). Além do aumento da qualidade e redução do tempo de desenvolvimento, o presente trabalho ajuda a agregar uma melhor padronização ao processo de desenvolvimento, pois o mesmo requer o uso da linguagem de documentação e modelagem UML e de metodologias propostas pela Engenharia de Software. Nota-se também que um processo de desenvolvimento de software bem definido é um grande passo para a obtenção de certificações através dos Sistemas de Garantia da Qualidade. A estrutura de especialização através da utilização de propriedades genéricas permite a abstração de dados comuns para as diferentes arquiteturas utilizadas, possibilitando desta forma o reaproveitamento de informações e enriquecimento do repositório de dados da ferramenta. A especialização por arquitetura permite o isolamento de todas as características de uma determinada arquitetura, mantendo desta forma um repositório de dados mais limpo e organizado, facilitando o uso e a manutenção da ferramenta e tornando os softwares gerados mais flexíveis perante as mudanças tecnológicas. A especialização por idioma fornece um recurso fundamental para as organizações na internacionalização de seus softwares, pois através da mesma é possível realizar a geração de código para diferentes idiomas. A utilização de diagramas de classes especializados permite a construção de plugins para geração de código mais inteligentes e com a capacidade de abstrair a utilização de um diagrama de classes de implementação. A abstração citada permite ao analista um foco maior no negócio em questão, poupando também o esforço gasto pela equipe de desenvolvimento na implementação de rotinas básicas. A ferramenta desenvolvida apresenta algumas deficiências ou limitações, principalmente na importação dos diagramas de classes, pois utiliza somente o formato XMI. Além desta limitação não é possível através da ferramenta a criação de fórmulas e dados compostos. |
|
|