Universidade de São Paulo
Instituto de Ciências Matemáticas e de Computação
Departamento de Ciências de Computação e Estatística
Um Processo Ágil de
Reengenharia baseado
em Framework
II Workshop de Engenharia de Software
UNESP – FGP - UNIP
Maria Istela Cagnin
Orientador: Prof. José Carlos Maldonado
Maio/2005
Roteiro

Introdução


Contexto




Linguagens de Padrões
Frameworks
Métodos Ágeis
Contribuições






Motivação e Objetivos
Definição de um Processo Ágil de Reengenharia baseado em
Linguagem de Padrões e Framework
Definição de um Processo de Evolução de Frameworks de
Aplicação
Definição de uma Abordagem de Reúso de Teste
Automatização de uma Ferramenta de apoio ao Controle de
Versões
Definição de um Pacote de Experimentação
Limitações e Trabalhos Futuros
Introdução

Evolução constante do software
 Constantes atividades de manutenção
 consome 70% do esforço no ciclo de vida (Pressman, 2004)
 Degradação
do código fonte
 Documentação desatualizada



Sistemas
Legados
código fonte: única documentação
 Migração de dados
Década 90
 Surgimento dos termos (Chikofsky,
 Engenharia Reversa e Reengenharia
1990):
Incremental
Introdução

Algumas vantagens da reengenharia:
 preserva
a solução existente do negócio em uma
nova arquitetura técnica (Sneed, 1995).
 em geral, promove custo efetivo e menos riscos do
que desenvolver um novo sistema (Warren, 2002).
Motivação

Uso de padrões de software e framework na
reengenharia

Uso de VV&T na reengenharia

Necessidade de apoio computacional na reengenharia

Preocupação de entregar o software sem atraso e
com custo não superior ao estimado na reengenharia

Importância da engenharia de software experimental
na reengenharia
Objetivos

Definir um processo ágil de reengenharia baseado
em framework no domínio de sistemas de informação

Definir um processo de evolução de frameworks de
aplicação

Definir uma abordagem de reúso de teste que agrega
recursos de teste funcional aos padrões de linguagens
de padrões

Fornecer suporte automatizado para apoiar a
iteratividade do processo ágil de reengenharia
baseado em framework

Definir um pacote de experimentação
Linguagem de Padrões GRN


Contém 15 padrões de análise
Pertence a um domínio específico
 Gestão de Recursos de Negócio
 concentrado na locação, comercialização e manutenção de
recursos.
 utiliza
alguns padrões de análise existentes
 é flexível
 Adição de atributos específicos da aplicação
 notação UML (Unified Modeling Language)
Identificar o Recurso (1)
Grupo 2:
Transações feitas
com o recurso
Quantificar o Recurso (2)
Armazenar o Recurso (3)
Locar o Recurso (4)
Reservar o
Recurso (5)
Comercializar o Recurso (6)
Cotar o Recurso (7)
Conferir a Entrega
do Recurso (8)
Itemizar a Transação
do Recurso (11)
Pagar pela Transação
do Recurso (12)
Identificar o Executor da Transação (13)
Grupo 1:
Identificação,
quantificação e
armazenamento
do recurso
Manter o Recurso (9)
Cotar a
Manutenção (10)
Grupo 3:
Detalhes da
Transação
Identificar as Tarefas
da Manutenção (14)
Identificar as Peças
da Manutenção (15)
Framework GREN




construção: baseada na linguagem de padrões
GRN
armazenamento: banco de dados MySQL
linguagem de programação: Smalltalk (VisualWorks
4.i.5)
arquitetura: três camadas


negócio, persistência e interface
alternativas de instanciação

manual (cookbook)
 ferramenta
de instanciação (GREN-Wizard)
Fonte: Braga, 2003
Métodos Ágeis

Década 90: reunião para estabelecer melhores
práticas de desenvolvimento de software


“Aliança Ágil” - Manifesto Ágil (Fevereiro/2001)
 4 valores e 12 princípios
Valores:
 Pessoas e interações são mais importantes do que
processos e ferramentas;
 Software
funcionando é mais importante do que
documentação compreensiva;
 Participação dos clientes é mais importante do que
negociação;
 Resposta a mudanças é mais importante do que seguir um
plano.
Métodos Ágeis








Elaboram pouca documentação;
Facilitam a incorporação de mudanças nos requisitos;
Exigem que a equipe de desenvolvimento seja pequena;
Preocupam-se com soluções simples;
Fornecem versões do software em intervalos freqüentes (a
cada hora, a cada dia, ou, mais usualmente, a cada mês ou a
cada bimestre);
Proporcionam constante interação e cooperação dos
usuários;
Exigem que desenvolvedores e representantes dos
usuários sejam bem informados, competentes e
autorizados para tomar decisões;
Realizam testes no software constantemente.
Método eXtreme Programming

As idéias de XP não são novas e a maioria
delas são tão velhas como programar (Beck,
2000).


Utilizado por


técnicas foram provadas durante décadas
equipes de desenvolvimento de software de tamanho
pequeno e médio
Novidade!

reconhecimento de que as pessoas são responsáveis
para o sucesso dos projetos

aumentar os níveis de competência individual e de
colaboração
Método eXtreme Programming



Conjunto de 4 valores e 12 práticas
Valores: 1) comunicação, 2) simplicidade, 3)
feedback e 4) coragem.
Práticas:






1) jogo do planejamento
2) versões pequenas
3) metáfora
4) projeto simples
5) testes constantes
6) refatoração constante






7) programação em pares
8) propriedade coletiva do código
9) integração contínua
10 semana de 40 horas
11) cliente presente
12) padrões de codificação
Contribuições

Definição de um Processo Ágil de Reengenharia
baseado em Linguagem de Padrões e Framework
 Definição de um Processo de Evolução de
Frameworks de Aplicação
 Definição de uma Abordagem de Reúso de Teste
 Automatização de uma Ferramenta de apoio ao
Controle de Versões
 Definição de um Pacote de Experimentação no
contexto de reengenharia
Processo Ágil de Reengenharia baseado
em Linguagem de Padrões e Framework

Objetivo: Migrar sistemas legados procedimentais para o
paradigma OO

Principais características:







é incremental, iterativo e baseado em framework;
considera diversas práticas ágeis (versões pequenas, cliente
presente,
testes
constantes,
jogo
do
planejamento,
programação em pares, propriedade coletiva do código e
integração contínua, metáfora e semana de 40 horas);
é dirigido ao cliente e dirigido ao risco;
utiliza “reengenharia guiada por teste”;
executa o sistema alvo concomitantemente com o legado;
não se limita a reproduzir a funcionalidade do sistema legado.
o formato da documentação: elementos fundamentais do
arcabouço do RUP (Rational Unified Process).
Processo Ágil de Reengenharia baseado em Linguagem
de Padrões e Framework
CONCEPÇÃO
Familiarizar-se com
o domínio do
framework
Confrontar as características não funcionais do framework x
sistema legado
Observar o domínio
do sistema legado
em relação ao do
framework
Elaborar o planejamento do projeto de
reengenharia
TRANSIÇÃO
Elaborar o Manual
do Usuário do
Sistema
Treinar os usuários
finais
ELABORAÇÃO
Converter a base de
dados do sistema
legado
Desenvolver o
diagrama de casos
de uso e elaborar os
casos de teste
Testar o sistema
alvo no paradigma
orientado a objetos
Documentar as
regras do negócio
do sistema
CONSTRUÇÃO
Legend:
Marco de referência no final de cada
fase
Atividade não obrigatória
Desenvolver o
sistema alvo no
paradigma orientado a objetos
Atividade iterativa e incremental
Adaptar o sistema
alvo
Atividade anterior provém de outra
fase
Executar os casos
de teste no sistema
alvo
Desenvolver o
diagrama de classes
do sistema
Documentar as
modificações realizadas no diagrama
de classes
Processo Ágil de Reengenharia baseado
em Linguagem de Padrões e Framework

Dois estudos de caso de reengenharia prospectivos
permitiram:




refinar a documentação do PARFAIT
observar a necessidade de evoluir framework GREN
motivar a criação de um PRocesso de Evolução de Framework
(PREF)
Um estudo de caso observacional permitiu:




coleta de dados: 84% do tempo gasto com VV&T
observar a necessidade de associar recursos de teste aos
padrões da linguagem de padrões
motivar a criação uma Abordagem Reúso de Teste (ARTe)
observar que a ferramenta GREN-Wizard não apoiava a
iteratividade do PARFAIT.
Contribuições
 Definição
de um Processo Ágil de Reengenharia
baseado em Linguagem de Padrões e Framework
 Definição de um Processo de Evolução de
Frameworks de Aplicação
 Definição de uma Abordagem de Reúso de Teste
 Automatização de uma Ferramenta de apoio ao
Controle de Versões
 Definição de um Pacote de Experimentação no
contexto de reengenharia
Processo
de
Evolução
Frameworks de Aplicação
7) Validar o framework
6) Atualizar ferramentas associadas
ao framework
8) Tratar do gerenciamento de controle de configuração
5) Atualizar a documentação do framewok
Início
Legenda:
Atividade de controle de
variabilidade
Atividades quando o requisito
não é essencial ao framework
Atividades quando o requisito
é essencial ao framework
4) Projetar, modificar e testar o framework para satisfazer o requisito
1) Controlar a variabilidade do framework.
2) Projetar, modificar e testar o
sistema para satisfazer o requisito
3) Atualizar o histórico de requisitos
de
Processo
de
Evolução
Frameworks de Aplicação
ID.
01
02
03
Requisito
Tipo
Livros podem ter diversos
autores.
Func.
Livro pertence a uma
determinada
área
(Exatas,
Biológicas,
Humanas)
Func.
Aparelho
eletrônico
possui proprietário
Func.
Solução de projeto
implementada na aplicação
Implementar
os
autores
de
um
livro
como
atributo multivalorado da classe Livro.
Implementar a área que um livro pertence como
tipo enumerado.
Implementar o proprietário de um aparelho
eletrônico na classe Aparelho como uma
referência da classe Proprietário por meio de um
Aplicação
Tipo de
manut.
de
Situação
Versão
Biblioteca
(REENG)
Perfectiva
Atendido
1.1
Biblioteca
(REENG)
Perfectiva
Atendido
1.1
Oficina
Eletrônica
(REENG)
Perfectiva
Sendo
atendido
-
Oficina
Eletrônica
(REENG)
Perfectiva
Pendente
-
-
perfectiva
Pendente
-
tipo enumerado.
04
06
Emissão de etiquetas de
mala direta
Func.
autenticar os
do
sistema,
Func.
É
necessário
usuários
Implementar as etiquetas de mala direta a partir da
criação da classe Etiqueta, contendo dois
tamanhos de etiquetas pré-estabelecidos.
Um sub-sistema de segurança foi
implementado em linguagem orientada a aspectos.
registrar os acessos efetuados e
bloquear o acesso a determinadas
operações do usuário, conforme o
seu papel.
Histórico de Requisitos
Contribuições
 Definição
de um Processo Ágil de Reengenharia
baseado em Linguagem de Padrões e Framework
 Definição de um Processo de Evolução de
Frameworks de Aplicação
 Definição de uma Abordagem de Reúso de Teste
 Automatização de uma Ferramenta de apoio ao
Controle de Versões
 Definição de um Pacote de Experimentação no
contexto de reengenharia
Abordagem de Reúso de Teste - ARTe
ETAPA 1
Definir tipos de requisitos (PASSO 1)
Selecionar critérios de teste (PASSO 2)
Elaborar requisitos de teste gerais (PASSO 3)
Para cada padrão da linguagem de padrões faça
Para cada classe do padrão faça
Elaborar requisitos de teste específicos (PASSO 4)
fimPara
fimPara
Documentar cada requisito de teste criado (PASSO 5)
Derivar e documentar casos de teste (PASSO 6)
Mapear requisitos de teste de gerais (PASSO 7)
Disponibilizar os recursos de teste (PASSO 8)
RT
RT
CT
RT
CT
CT
RT
CT
Linguagem de Padrões de Análise
com Requisitos de Teste (RT) e
Casos de Teste (CT) agregados
Linguagem de Padrões de Análise
Passos da estratégia para definir recursos de teste
ETAPA 2
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
XXXXXXXXXXXXXXX
Requisitos do
Sistema (Desenv.)
Para cada requisito funcional do sistema (sendo desenvolvido ou submetido à
reengenharia) faça
Identificar os padrões da linguagem de padrões que modelam tal requisito funcional
Para cada padrão identificado faça
Estabelecer correspondência das classes do padrão identificado com o
requisito funcional
Reutilizar casos de teste mapeados que possuem correspondência
direta com os dados do requisito funcional
Reutilizar casos de teste do negócio do padrão que posuem correspondência direta com o tratamento do negócio envolvido no requisito
funcional do sistema
fimPara
Reutilizar requisitos de teste de integridade e de consistência, que podem
ser
adaptados para o requisito funcional
Derivar e documentar os casos de teste baseados nos requisitos de
teste reusados
Reutilizar classes de equivalência de consistência e de integridade que
podem ser adaptadas para o requisito funcional
Derivar e documentar os casos de teste baseados nas classes de
equivalência reusadas
Criar casos de teste adicionais baseados nos critérios de teste funcionais
(Particionamento de Equivalência e Análise do Valor Limite)
fimPara
Verificar o uso correto dos padrões da linguagem de padrões
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
CT
Sistema Legado (Reeng.)
Passos das diretrizes para reúso dos recursos de teste
Massa dos Casos de Teste (CT) do Sistema
Abordagem de Reúso de Teste - ARTe
Passos da ARTe instanciados
para a GRN
Elaborar requisitos de teste de consistência
(PASSO 3.1)
Elaborar requisitos de teste de integridade
(PASSO 3.2)
Definir tipos de requisitos (PASSO 1)
Selecionar critérios de teste (PASSO 2)
Elaborar requisitos de teste gerais (PASSO 3)
Para cada padrão da linguagem de padrões faça
Para cada classe do padrão faça
Elaborar requisitos de teste específicos (PASSO 4)
fimPara
fimPara
Documentar cada requisito de teste criado (PASSO 5)
Derivar e documentar casos de teste (PASSO 6)
Mapear requisitos de teste de gerais (PASSO 7)
Disponibilizar os recursos de teste (PASSO 8)
Elaborar requisitos de teste do
Negócio (PASSO 4)
Abordagem de Reúso de Teste



Para cada requisito funcional do sistema
 Identificar os padrões que modelam o requisito funcional
 Para cada padrão identificado
 Estabelecer correspondência das classes do padrão com
o requisito funcional do sistema
 Reutilizar casos de teste do padrão
 fimPara
 Reutilizar requisitos de teste que podem ser adaptados
 Derivar e documentar casos de teste baseado nos requisitos
reusados;
 Reutilizar classes de equivalência que podem ser adaptadas;
 Derivar e documentar casos de teste baseados nas classes de
equivalência reusadas;
 Criar casos de teste adicionais, se necessário.
FimPara
Verificar o uso correto dos padrões
Abordagem de Reúso de Teste

Um estudo de caso observacional - Uso das diretrizes
de reúso
Informações
Sem Reúso VV&T Com Reúso VV&T
Tempo
reengenharia
Tempo VV&T
Total casos de
teste
675:29 h
84%
571:40 h
354
47%
42%
50%
320:40 h
75%
240:30 h
695
Contribuições
 Definição
de um Processo Ágil de Reengenharia
baseado em Linguagem de Padrões e Framework
 Definição de um Processo de Evolução de
Frameworks de Aplicação
 Definição de uma Abordagem de Reúso de Teste
 Automatização de uma Ferramenta de apoio ao
Controle de Versões
 Definição de um Pacote de Experimentação no
contexto de reengenharia
Ferramenta de Apoio ao Controle
de Versões
código fonte
inserido
manualmente
Framework
Aplicação v1
xxxxxxxxx
...
Aplicação v2
Tabela ClassMethodVersionControl
seq appIdCode className
methodName
methodType protocolName
methodBody
action
appVersion
version
--------------------------------------------------------------------------------------------------------------------------------------...
122
38
EmprestimoForm windowLabel
c
interface specs
windowLabel
u
1
2
^'Empréstimo de Livro'
...
...
Meta-base de dados
da Ferramenta GRENWizardVersionControl
Ferramenta de Apoio ao Controle
de Versões
Resulting Method
Continua a
instanciação
Contribuições
 Definição
de um Processo Ágil de Reengenharia
baseado em Linguagem de Padrões e Framework
 Definição de um Processo de Evolução de
Frameworks de Aplicação
 Definição de uma Abordagem de Reúso de Teste
 Automatização de uma Ferramenta de apoio ao
Controle de Versões
 Definição de um Pacote de Experimentação no
contexto de reengenharia
Pacote de Experimentação

Contém o planejamento parcial do experimento para
avaliar a aplicabilidade do PARFAIT (meio acadêmico e
industrial):
 completa: fases de definição, planejamento e
operação
 não possui: fases análise e interpretação
 incompleta: fases de apresentação e enpacotamento

Contém instrumentação necessária para apoiar os
interessados na condução do experimento.
URL: http://labes.icmc.usp.br/~istela/experimentos/index.htm

Limitações

Uso dos produtos da tese apenas com o GREN e
GRN




Processos PARFAIT e PREF são genéricos?
Abordagem ARTe é flexível?
Escalabilidade do PARFAIT


aplicado apenas em sistemas de pequeno porte
Ferramenta GREN-WizardVersionControl



PARFAIT, PREF, ARTe, Pacote Experimentação
específica ao framework GREN
impossibilita as práticas ágeis “propriedade coletiva do código” e
“integração contínua”
Não há validação
experimentação
completa
do
pacote
de
Trabalhos Futuros

Para eliminar as limitações do trabalho:







Conduzir estudos de caso de reengenharia com o PARFAIT com
outros frameworks
Conduzir estudos de caso com sistemas de médio e grande porte
para observar a escalabilidade do PARFAIT
Refinar a abordagem ARTe utilizando-a em outras linguagens
de padrões
Refinar o processo PREF utilizando-o em outros frameworks
Conduzir estudos de caso para completar a definição do pacote
de experimentação
Replicar o pacote de experimentação para validá-lo e evoluí-lo
Evoluir a ferramenta GREN-WizardVersionControl
Trabalhos Futuros

Para evoluir o trabalho realizado:







Definir estratégias de teste para testar frameworks baseados
em linguagens de padrões (GREN)
Documentar os recursos de teste criados com a aplicação da
abordagem ARTe em um formato específico (XML)
Desenvolver uma ferramenta para gerenciar os hot spots das
versões dos frameworks, apoiando o processo PREF.
Desenvolver uma ferramenta para apoiar a aplicação do
PARFAIT.
Formalizar a equivalência funcional do sistema legado com o
sistema alvo.
Conduzir estudos de caso de reengenharia para avaliar o
desempenho de cada prática ágil do PARFAIT.
Conduzir estudos de caso para observar a aplicabilidade do
PARFAIT no desenvolvimento de software e na engenharia
reversa.
Publicações
ARTIGOS COMPLETOS EM EVENTOS





CAGNIN, Maria Istela; MALDONADO, José Carlos; MASIERO, Paulo Cesar; BRAGA, Rosana
Terezinha Vaccare; PENTEADO, Rosangela Dellosso. An Evolution Process for Application
Frameworks. In: I WORKSHOP DE MANUTENÇÃO DE SOFTWARE MODERNA EM CONJUNTO
COM XVIII SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE, 2004, Brasília-DF.
Primeiro Workshop de Manutenção de SoftWare Moderna. Brasília-DF: 2004. p. 1-8.
CAGNIN, Maria Istela; PENTEADO, Rosangela Dellosso; GERMANO, Fernao Stella;
MALDONADO, José Carlos. Evolução do PARFAIT: Um Processo de Reengenharia de Software
Baseado em Framework. In: SIMPÓSIO DE DESENVOLVIMENTO E MANUTENÇÃO DE
SOFTWARE DA MARINHA, 2004, Rio de Janeiro. IV Simpósio de Desenvolvimento e Manutenção
de Software da Marinha. 2004. p. 1-12.
CAGNIN, Maria Istela; PAIVA, Débora Maria Barroso; MALDONADO, José Carlos; PENTEADO,
Rosangela Dellosso; FORTES, Renata Pontin de Mattos; GERMANO, Fernão Stella. From
DesignRationale to Reengineering Rationale: Lessons Learned in a Maintenance Pilot Case
Study. In: JORNADAS IBEROAMERICANAS DE INGENIERÍA DEL SOFTWARE E INGENIERÍA
DEL CONOCIMIENTO, 2004, Madrid, Espanha. 4ª Jornadas Iberoamericanas de Ingeniería del
Software e Ingeniería del Conocimiento. Madrid-Espanha: 2004. v. I, p. 231-243.
CAGNIN, Maria Istela; MALDONADO, José Carlos; PENTEADO, Rosangela Dellosso; BRAGA,
Rosana Terezinha Vaccare; GERMANO, Fernão Stella. GREN-WizardVersionControl: Uma
Ferramenta de Apoio ao Controle de Versão das Aplicações Criadas pelo Framework GREN.
In: SESSÃO DE FERRAMENTAS EM CONJUNTO COM XVIII SIMPÓSIO BRASILEIRO DE
ENGENHARIA DE SOFTWARE, 2004, Brasília-DF. XI Sessão de Ferramentas - SBES 2004. 2004.
p. 73-78.
CAGNIN, Maria Istela; MALDONADO, José Carlos; CHAN, Alessandra; PENTEADO, Rosangela
Dellosso; GERMANO, Fernão Stella. Reuso na Atividade de Teste para Reduzir Custo e Esforço
de VV\&T no Desenvolvimento e na Reengenharia de Software. In: SIMPÓSIO BRASILEIRO DE
ENGENHARIA DE SOFTWARE, 2004, Brasília-DF. XVIII Simpósio Brasileiro de Engenharia de
Software. Brasília-DF: 2004. p. 71-85.
Publicações
ARTIGOS COMPLETOS EM EVENTOS (CONT.)





CAGNIN, Maria Istela; MALDONADO, José Carlos; BRAGA, Rosana Terezinha Vaccare;
GERMANO, Fernão Stella; PENTEADO, Rosangela Dellosso. Uma Ferramenta de Apoio ao
Controle de Versão das Aplicações Criadas por um Framework. In: CONFERÊNCIA LATINOAMERICANA DE INFORMÁTICA, 2004, Arequipa-Peru. XXX Conferência Latino-Americana de
Informática. Arequipa-Peru: 2004. p. 414-425.
CAGNIN, Maria Istela; MALDONADO, José Carlos; GERMANO, Fernão Stella; MASIERO, Paulo
Cesar; CHAN, Alessandra; PENTEADO, Rosangela Dellosso. An Agile Reverse Engineering
Process based on a Framework. In: WORKSHOP EM ENGENHARIA DE REQUISITOS, 2003,
Piracicaba. 6th International Workshop on Requirements Engineering. 2003. v. 1, p. 240-254.
CAGNIN, Maria Istela; MALDONADO, José Carlos; GERMANO, Fernão Stella; PENTEADO,
Rosangela Dellosso. Investigation and Definition of a Computer-Aided Framework-based
Agile Reengineering Process. In: WORKSHOP DE TESES EM ENGENHARIA DE
SOFTWARE, 2003, Manaus, AM. VIII Workshop de Teses em Engenharia de Software e II
Workshop de Teses e Dissertações em Banco de Dados. Manaus, AM: EDUA - Editora da
Universidade Federal do Amazonas, 2003. p. 9-16.
CAGNIN, Maria Istela; MALDONADO, José Carlos; GERMANO, Fernão Stella; PENTEADO,
Rosangela Dellosso. PARFAIT: Towards a Framework-based Agile Reengineering Process.
In: AGILE DEVELOPMENT CONFERENCE, 2003, Salt Lake City, UTHA. IEEE. 2003. p. 22-31.
CAGNIN, Maria Istela; MALDONADO, José Carlos; GERMANO, Fernão Stella; CHAN,
Alessandra; PENTEADO, Rosangela Dellosso. Um Estudo de Caso de Reengenharia
Utilizando o Processo PARFAIT.In: SIMPÓSIO DE DESENVOLVIMENTO E MANUTENÇÃO
DE SOFTWARE DA MARINHA, 2003, Niterói, RJ. III Simpósio de Desenvolvimento e
Manutenção de Software da Marinha. 2003. p. 1-10.
Publicações
ARTIGOS SUBMETIDOS EM EVENTOS


CAGNIN, Maria Istela; BRAGA, Rosana Terezinha Vaccare; GERMANO, Fernão Stella; CHAN,
Alessandra; MALDONADO, José Carlos. Extending Patterns with Testing Implementation. In:
SugarLoafPlop'2005, V Conferência Latino-Americana em Linguagens de Padrões para
Programação, Campos do Jordão-SP, Agosto, 2005.
CAGNIN, Maria Istela; PENTEADO, Rosângela; MASIERO, Paulo César; BRAGA, Rosana
Terezinha Vaccare; MALDONADO, José Carlos. Process for Variability Control and
Application Frameworks Evolution. In: IWPSE'2005, International Workshop on Principles of
Software Evolution em conjunto com FSE/ESEC'2005. Lisboa, Portugal, Setembro, 2005.
ARTIGO A SER SUBMETIDO EM PERIÓDICO

CAGNIN, Maria Istela; PENTEADO, Rosângela; GERMANO, Fernão Stella; MALDONADO, José
Carlos. Agile Reengineering with Reuse. In: JOURNAL OF SOFTWARE MAINTENANCE AND
EVOLUTION: RESEARCH AND PRACTICE.
Universidade de São Paulo
Instituto de Ciências Matemáticas e de Computação
Departamento de Ciências de Computação e Estatística
Um Processo Ágil de
Reengenharia baseado
em Framework
II Workshop de Engenharia de Software
UNESP – FGP - UNIP
Maria Istela Cagnin ([email protected])
Orientador: Prof. José Carlos Maldonado
Maio/2005
Download

Ms. Maria Istela Cagnin (USP)