160 likes | 263 Views
UTILIZANDO A ABORDAGEM DIRIGIDA A RESPONSABILIDADES PARA A CRIAÇÃO DO SUBFRAMEWORK DE ANÁLISE SINTÁTICA E SEMÂNTICA DE FÓRMULAS. Rodolfo Adamshuk Silva [Bolsista] Orientadora: Profa. Simone Nasser Matos. Agenda. Introdução Pesquisa na Literatura
E N D
UTILIZANDO A ABORDAGEM DIRIGIDA A RESPONSABILIDADES PARA A CRIAÇÃO DO SUBFRAMEWORK DE ANÁLISE SINTÁTICA E SEMÂNTICA DE FÓRMULAS Rodolfo Adamshuk Silva [Bolsista] Orientadora: Profa. Simone Nasser Matos
Agenda • Introdução • Pesquisa na Literatura • Criação do Subframework de Validação Semântica • Análise Sintática • Análise Semântica • Unificação dos Analisadores Sintáticos e Semânticos • Resultados • Conclusão • Referências • Agradecimentos
Introdução • No ambiente comercial, os clientes estão pesquisando preços e procurando qualidade. • Necessidade de um aplicativo que otimize a validação e o cálculo de fórmulas. • Criação do subframework para Análise Sintática e Semântica de Fórmulas. • Executado em ambiente web. • Desenvolvido uma linguagem de programação que permite a portabilidade.
Pesquisas na Literatura • Composição do preço de venda. “Preço = custo + lucro + impostos + comissões” • Padrões de projeto. Maneira eficiente de resolver problemas. • F-UML. É uma extensão da linguagem UML cujo objetivo é atender a restrições da modelagem de framework. • Framework de domínio. Encapsular o conhecimento e especialidade em um domínio de problema particular.
Criação do Subframework de Validação Semântica • Análise das abordagens e escolhida a de Matos e Fernandes (2007). • Vantagens: • Estilo arquitetural. • Aplicação de padrões de projeto e metapadrões. • Frozen spots – Pontos de estabilidade – Pontos gerais do domínio. • Hot spots – Pontos de flexibilidade – Pontos específicos.
Criação do Subframework de Validação Semântica • 5 passos para a construção do framework • Passo 1 – Identificar os Frozen e Hot Spots a Partir dos Requisitos dos Subsistemas. • Passo 2 – Elaborar o diagrama de classes que satisfazem os requisitos do framework. • Passo 3 – Identificar os possíveis subframeworks. • Passo 4 – Criar o diagrama de classes UML-F para os subframeworks. No caso do subframework cuja finalidade é de verificar semanticamente uma fórmula, obteve-se o pacote “validacaoSemantica”.
Análise Sintática • Análise léxica – Verificar os caracteres aceitos pela linguagem. • Parsing - Verificar se um agrupamento de token, obtidos pela Análise Léxica é válido para a linguagem analisada. • Ex: • A+B Correto • A+-B Incorreto
Análise Semântica • Segundo Kashyap e Sheth (1992) a semântica é o estudo científico das relações entre símbolos e sinais e o que eles representam ou significam. • A semântica em relação a uma fórmula é calcular o seu resultado. • Ex: • A=10 • B=5 • A+B=15 Correto • A+B=20 Incorreto
Unificação dos Avaliadores Sintático e Semântico. • Acoplar ao avaliador semântico o avaliador sintático. Após fazer este acoplamento, a árvore do projeto possui todos os pacotes necessários para a realização da análise semântica. • O segundo passo consiste em criar uma instância da classe motor do analisador semântico para que este seja executado caso a análise sintática seja concluída com sucesso. • Com isso, finaliza-se a unificação dos subframeworks de análise sintática e semântica.
Resultados • Sistema que realiza a Análise Sintática e Semântica de Fórmulas, sendo executado em ambiente web e desenvolvido uma linguagem de programação que permita a portabilidade. • O analisador léxico e sintático foi desenvolvido usando JFlex (versão 1.4.1) e CUP (versão 0.10j). • Para o analisador semântico, utilizou-se como referência o padrão Interpreter. • O diferencial é que está interligado a um banco de dados, deixando a semântica dinâmica.
Conclusão • Utilização da abordagem dirigida por responsabilidades. • Unificação dos subframeworks de análise sintática e semântica. • Como resultado do processo proposto, criou-se um suframework que pode ser utilizado em outra aplicação, pois suas classes frozen e hotspots já estão identificadas.
Referencias • MATOS, S. N.; FERNANDES, C. T. Using responsibilities for early identification of hot spot reused in framework modeling. In: IEEE International Workshop on Security, Trust, and Privacy for Software Applications. 3.. Proceedings… Turku: IEEE ComputerSocietyPress, 2008. • KASHYAP, V., SHETH, A. (1992) So Far (Schematically) yet So Near (Semantically).
Agradecimentos • FUNTEF Campus Ponta Grossa: pelo apoio financeiro • COINF : laboratórios de informática • DEPOG Atualmente o projeto está sendo financiado pela Fundação Araucária.