| |
Análise e Transformação de Software
Sumários
03 de Março de 2008
- I.1 Introdução e Motivação para a área de Análise e Transformação de SW; sua inserção no contexto da Engenharia de Software:
- noção de análise de código-fonte (outras hipóteses para análise de código intermédio ou máquina);
- avaliação do software analisado -- métricas;
- transformação como meio para melhorar o software avaliado.
- I.2 As quatro grandes componentes envolvidas na disciplina:
- extracção de informação do código (fase de análise);
- armazenamento da informação extraída;
- visualização (paradigmas/exemplos);
- transformação.
- I.3 Apresentação de 2 ferramentas, desenvolvidas no seio do gEPL, para análise e visualização de código-fonte (de programas ou de documentos anotados):
10 de Março de 2008
- S. Introdução ao Slicing, técnicas, exemplos e implementação.
- S.1 o que é o Slicing, as estratégias Backward versus Forward, e Estático versus Dinâmico.
- S.2 como se usa, para que serve; apresentação de 2 ferramentas HSlicer e CodeGenie.
- S.3 como se implementa; descrição da ferramenta Holmes, um slicer de wsHaskell para reconstrução do Modelo de Interacção de uma aplicação.
- CS. Definição e escolha de casos-de-estudo (Case-Studies) de ATS; Implementação.
- CS.1 Apresentação de 2 casos de estudo (ver Fichas Práticas 1 e 2) com o intuito de reflectir sobre todo o processo de Análise, Representação Interna, eventual visualização e Transformação e criar uma bancada de trabalho que suporte futuros desenvolvimentos mais específicos nesta área.
- CS.2 Início da implementação do CS da Ficha 1, usando o Gerador LISA.
31 de Março de 2008
- S. Introdução ao Slicing, técnicas, exemplos e implementação.
- S.2 Resolução de 1 ou 2 exercícios concretos usando a ferramenta CodeGenie:
- a) Dado um Diagrama de Classes (DC) em UML estendido com restrições (p.ex. OCL) e um conjunto de Testes para esse Sistema, pretende-se encontrar a respectiva implementação, usando CodeGenie, para depois avaliar o Modelo recorrendo às métricas incorporadas no Eclipse.
- b) Dado um conjunto de testes para a operação de Travessia de uma Árvore Binária, pretende-se estudar a forma de escolher a melhor solução encontrada e proposta pelo CodeGenie.
- c) Dado um conjunto de testes para a operação de Reconhecimento de Expressões Regulares, pretende-se estudar a forma de escolher a melhor solução encontrada e proposta pelo CodeGenie.
- S.3 Métricas: plugin de métricas para o Eclipse.
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Análise e implementação do CS da Ficha 1, usando o Gerador AnTLR.
07 de Abril de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Análise e implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Definição da subgramática da Linguagem SQL a considerar na versão SQL1.
- Criação de um Parser em AnTLR-Works para SQL1; análise da gramática e testes de parsing.
- Construção da àrvore de Sintaxe Abstracta para armazenar a informação correspondente ao programa-fonte a ser transformado.
- Estudo da facilidade StringsTemplate para geração da saída.
14 de Abril de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Continuação das experiências com o StringsTemplate para geração da saída.
- Detecção na AST dos padrões a transformar.
21 de Abril de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Detecção na AST dos padrões a transformar.
- Geração, na saída, do programa-final em SQL2.
28 de Abril de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Sistematização do uso de Gramáticas e Árvores em AnTLR e das várias operações aobre a AST.
- Geração de diversos formatos para a árvore na saída (à la Lisp e Indentada).
- Uso de variáveis globais e uso de atributos.
05 de Maio de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Sistematização do uso de Gramáticas e Árvores em AnTLR e das várias operações aobre a AST.
- Geração de diversos formatos para a árvore na saída (à la Lisp e Indentada).
- Uso de variáveis globais e uso de atributos.
12 de Maio de 2008
- Enterro da Gata (dispensa de aulas).
19 de Maio de 2008
26 de Maio de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Sistematização do uso de Gramáticas e Árvores em AnTLR e das várias operações aobre a AST.
- Geração de diversos formatos para a árvore na saída (à la Lisp e Indentada).
- Uso de variáveis globais e uso de atributos.
02 de Junho de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.2 Implementação do CS da Ficha 1, usando o Gerador AnTLR:
- Sistematização do uso de Gramáticas e Árvores em AnTLR e das várias operações aobre a AST.
- Detecção de Padrões em Árvores.
- Conversão de SQL1 para SQL2 substituindo o par REMOVE/INSERT por UPDATE
09 de Junho de 2008
- CS. Casos-de-estudo de ATS; Implementação.
- CS.3 Manipulação de uma Linguagem de Programação, usando o Gerador AnTLR:
- Definição da estrutura da linguagem via uso de uma Gramática.
- Construção da Tabela de Identificadores.
- Construção do Grafo de Fluxo de Dados.
16 de Junho de 2008
23 de Junho de 2008
30 de Junho de 2008
|
|
 Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding TWiki? Send feedback
|
|
| |