Utilize este identificador para referenciar este registo: http://hdl.handle.net/10362/10426
Registo completo
Campo DCValorIdioma
dc.contributor.advisorCaires, Luís-
dc.contributor.advisorFerrão, Lúcio-
dc.contributor.authorDolores, Hélio-
dc.date.accessioned2013-09-26T08:56:52Z-
dc.date.available2013-09-26T08:56:52Z-
dc.date.issued2009-
dc.identifier.urihttp://hdl.handle.net/10362/10426-
dc.descriptionTrabalho apresentado no âmbito do Mestrado em Engenharia Informática, como requisito parcial para obtenção do grau de Mestre em Engenharia Informáticapor
dc.description.abstractO desenvolvimento de sistemas para gestão de informação baseada na Web pode ser acelerado através do uso de ferramentas de programação adequadas, permitindo que equipas de programadores rapidamente desenvolvam e disponibilizem soluções eficientes. Aproximações bem sucedidas assentam no uso de linguagens de domínio especifico (DSL), para a construção de algumas camadas dos sistemas. Tipicamente, a lógica aplicacional interage com os dados nos repositórios por meio de queries e comandos SQL. Depois, o código SQL gerado pelo compilador ou interpretador da DSL a partir das descrições fornecidas pelo programador ou utilizador, vai estar geralmente mal estruturado ou sub-optimizado se não houver cuidado da parte do optimizador. Esta dissertação endereça o desenho e validação de um processo de optimização em tempo de compilação para queries SQL embutidas numa linguagem de domínio especifico, usando a DSL da OutSystems como um exemplo motivador. O objectivo não é optimizar a execução de cada query, porque esta tarefa já é bem executada pelo motor da base de dados: a aproximação seguida neste projecto assenta na identificação e análise de padrões sub-optimizados causados pela coexistência entre instruções e comandos SQL e os típicos operadores das linguagens imperativas. De forma a atingir este objectivo utilizamos transformações de código SQL, envolvendo junções e reestruturações de queries; análise de fluxo de dados para lidar com o controlo de dependências entre operações; transformações de programas e técnicas de avaliação parcial, como movimentação de código e pré-cálculo. Depois, escolhemos um destes padrões para ser completamente implementado no compilador da linguagem OutSystems. Esta optimização considera a informação recolhida em tempo de compilação e execução sobre os atributos alterados nas entidades e propaga essa informação para as novas operações de update parcial. Esta dissertação apresenta a implementação e validação, através da análise de aplicações reais, desta optimização, que foi integrada com sucesso e entrará em produção na próxima versão do compilador OutSystems.por
dc.language.isoporpor
dc.publisherFaculdade de Ciências e Tecnologiapor
dc.rightsopenAccesspor
dc.subjectOptimização de compiladorespor
dc.subjectAnálise de fluxo de dadospor
dc.subjectOutSystemspor
dc.subjectUpdate parcialpor
dc.subjectOptimização de múltiplas queriespor
dc.subjectMovimentação de códigopor
dc.titleOptimizações numa linguagem para desenvolvimento de aplicações webpor
dc.typemasterThesispor
Aparece nas colecções:FCT: DI - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
Dolores_2009.pdf2,58 MBAdobe PDFVer/Abrir


FacebookTwitterDeliciousLinkedInDiggGoogle BookmarksMySpace
Formato BibTex MendeleyEndnote 

Todos os registos no repositório estão protegidos por leis de copyright, com todos os direitos reservados.