MINISTÉRIO DA EDUCAÇÃO Universidade Federal de Ouro Preto – UFOP Departamento de Ciências Exatas e Aplicadas Campus João Monlevade webmail/src/redirect.php Proposta de Orientação Orientador: Rodrigo Geraldo Ribeiro Aluno: Rodrigo de Carvalho Matricula: 05.1.1156 Título Provisório: Uma linguagem de domínio específico para geração de aplicativos desktop e web baseados em bancos de dados relacionais. Área de pesquisa (de acordo com classificação CAPES/CNPQ) Código Nome 1.03.03.02-2 Engenharia de Software Tema (1 parágrafo descrevendo o tema do projeto) Este trabalho apresentará uma proposta de uma linguagem de domínio específico para geração de código de aplicativos desktop e web baseado em uma descrição de banco de dados relacional. Uma linguagem de domínio específico é uma linguagem que oferece através de notações e abstrações adequadas, um poder de expressão focado em (e geralmente restrito a)um domínio DECEA - UFOP – Campus João Monlevade - Caixa Postal 24 - CEP 35.930-970 - João Monlevade - MG- Brasil Homepage: http://www.decea.ufop.br – email: [email protected] - Telefax: (0xx31) 3852-8709 MINISTÉRIO DA EDUCAÇÃO Universidade Federal de Ouro Preto – UFOP Departamento de Ciências Exatas e Aplicadas Campus João Monlevade webmail/src/redirect.php particular. Um exemplo desse tipo de linguagem é a SQL, utilizada em consultas a banco de dados. Objetivo (Descrição do Objetivo Geral do projeto) Criar uma linguagem de domínio específico que defina um banco de dados relacional com o propósito de gerar códigos de aplicativos desktop e web baseados na estrutura do banco de dados. Identificação do tema/problema (Descrição do problema a ser abordado pelo projeto) Ferramentas de geração de código vem ganhando cada dia mais destaque no leque de ferramentas CASE que prestam apoio a Engenharia de Software. Esse tipo de ferramenta tem como objetivo gerar código em uma determinada linguagem de programação (Java,c++ entre outras), a partir de regras inseridas por um usuário através de uma determinada linguagem de domínio específico. Um gerador de código não tem objetivo de substituir desenvolvedores e analistas, trata-se de uma ferramente que auxilia o desenvolvimento de software trazendo diversos beneficios, como ganho significativo de produtividade de desenvolvedores, sendo capaz de realizar a construção de funcionalidades das aplicações de maneira mais eficiente e segura, garantindo também a diminuição dos custos de projeto, padronização no código gerado entre outros. De maneira geral, o conceito de gerador de aplicação que será desenvolvido neste trabalho assume o significado de uma ferramenta que realiza as seguintes tarefas : valida a especificação de entrada e relata erros ou avisos de inconsistências, completa a DECEA - UFOP – Campus João Monlevade - Caixa Postal 24 - CEP 35.930-970 - João Monlevade - MG- Brasil Homepage: http://www.decea.ufop.br – email: [email protected] - Telefax: (0xx31) 3852-8709 MINISTÉRIO DA EDUCAÇÃO Universidade Federal de Ouro Preto – UFOP Departamento de Ciências Exatas e Aplicadas Campus João Monlevade webmail/src/redirect.php especificação utilizando as configuracoes padrões, realiza otimizacões e gera a implementação. O trabalho será desenvolvido em duas partes, primeiro especificaremos uma linguagem de dominio especifico como base para descrever uma aplicação baseada em BD, depois será desenvolvido o gerador de código, que baseado na especificação descrita pelo usuário, fará a geração de código. DECEA - UFOP – Campus João Monlevade - Caixa Postal 24 - CEP 35.930-970 - João Monlevade - MG- Brasil Homepage: http://www.decea.ufop.br – email: [email protected] - Telefax: (0xx31) 3852-8709