Um Processo Ágil de Reengenharia baseado em Framework

Slides:



Advertisements
Apresentações semelhantes
Rational Unified Process
Advertisements

Engenharia de Software
ISO Processos do Ciclo de Vida do Software
Gerência de Projetos Wesley Peron Seno Introdução
Natanael (njsj) Thiago (tan2) Rodrigo (rml2)
O Processo Praxis 3.0 Processos de Software 25/03/2017
Rational Unified Process(RUP)
Modelos de Processos de desenvolvimento de Software
Desenvolvimento ágil: eXtreme Programming vs SCRUM Tiago Rodrigues de Mello CCO-230 – ENGENHARIA DE SOFTWARE / 2010.
Engenharia de Software Professor Sandro de Paiva Carvalho.
INTRODUÇÃO A INFORMÁTICA
FACULDADE DOS GUARARAPES
Mitos e Problemas Relacionados ao Software
Metodologia de Desenvolvimento de Software
RUP Rational Unified Process (Processo Unificado de Desenvolvimento da Rational) 1.
CK 119: Engenharia de Software DC/CC/UFC © Rossana Andrade, Setembro CK119: Engenharia de Software Rossana Andrade Ph.D, SITE, University of Ottawa,
MO409 / Engenharia de Software I - 1º Semestre / Prof. Eliane 1 1ª Apresentação (A1) Modelos de Processos de Software RA: / Edson Amorina.
Alexandre Paiva Guylerme Velasco
Processo Desenvolvimento de Software Tradicional
Reutilização de Software
Carlos Alberto de Freitas Pereira Júnior
Composição e Geração de Aplicações usando Aspectos
Introdução Visão Geral do Método.
FERRAMENTA PARA ANÁLISE DE IMPACTO BASEADO EM RASTREABILIDADE DE
FERRAMENTA PARA ANÁLISE DE IMPACTO BASEADO EM RASTREABILIDADE DE
Gerencia de Projeto OO Aspectos Avançados em Engenharia de Software Aula 5 Fernanda Campos DCC/UFJF.
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
FDD.
Engenharia de Software
Classes e objetos Modelagem
Métodos Ágeis Agile Modeling, ou AG
Processo de Software Prof. Dr. rer. nat. Daniel D. Abdala
RUPinho Qualidade de Software
Técnicas e Projeto de Sistemas
Desafios do desenvolvimento de software
Fundamentos de Engenharia de SW
Cap 2 – Processo de Software
Processos de Desenvolvimento de Software – Parte 2
Fase de Elaboração: Fluxo de Requisitos
Análise e Projeto de Sistemas
Engenharia de Software
Engenharia de Software
Fevereiro/ Resultado dos Projetos de Software Pesquisa Motivação.
Prof. Alexandre Vasconcelos
Desenvolvimento Rápido de Aplicação (RAD)
Técnicas e Projeto de Sistemas
PAS Características: Elaborado com o propósito de ser utilizado em práticas acadêmicas de desenvolvimento de software. Foi desenvolvido de forma iterativa.
Especificação em Projeto de Sistemas
Análise e Projeto Orientados a Objetos
O Processo Unificado (UP)
Engenharia de Software
RUP - Cap. 4 – Processo Centrado na Arquitetura
METODOLOGIA, MÉTODOS E FERRAMENTAS
Processos de Software.
Engenharia de Software
Métodos Ágeis e Programação Extrema (XP)
Mestrando: Pedro Barbosa Cordeiro Orientador: Bernardo Lula Júnior
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Engenharia de Software
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA TOCANTINS Campus Araguaína XP (EXTREME PROGRAMMING) Pós-Graduação em Engenharia de Software Metodologias.
Erton W. Vieira Metodologias Ágeis, Qualidade de Software e Design Centrado no usuário: Pontos de Interação Erton W. Vieira.
ISO/IEC Prof. Dr. Sandro Ronaldo Bezerra Oliveira
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
Estudo Comparativo Entre Metodologias Ágeis e Tradicionais Aluno: Márcia Seabra Cabral Professor: Augusto Sampaio Disciplina: Tópicos Avançados em Engenharia.
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
/ de Abril de UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado.
Uma Extensão do Fluxo de Análise e Projeto do RUP com suporte a Desenvolvimento Baseado em Componentes Eduardo Almeida
Joaquim Oliveira Grupo de Estudos em Processos 25/06/2002 Comparação entre Metodologias de Desenvolvimento.
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

Um Processo Ágil de Reengenharia baseado em Framework 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 Contribuições Motivação e Objetivos Contexto Linguagens de Padrões Frameworks Métodos Ágeis 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 Limitações e Trabalhos Futuros

Introdução Evolução constante do software  Migração de dados 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 código fonte: única documentação Sistemas Legados  Migração de dados Década 90 Surgimento dos termos (Chikofsky, 1990): Engenharia Reversa e Reengenharia 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)

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) Manter o Recurso (9) Cotar a Manutenção (10) Identificar as Tarefas da Manutenção (14) Identificar as Peças da Manutenção (15) Itemizar a Transação do Recurso (11) Pagar pela Transação do Recurso (12) Identificar o Executor da Transação (13) Identificar o Recurso (1) Grupo 1: Identificação, quantificação e armazenamento do recurso Grupo 2: Transações feitas com o recurso Grupo 3: Detalhes da Transação Here is a figure that shows the relationship among the patterns. The arrows suggest the order in which we apply the patterns, but this order is best explained in a particular section of each pattern, called “following patterns”. The main patterns of the language are Rent the Resource, Trade the Resource and Maintain the Resource. This is denoted by a thicker line in these patterns. Patterns 12, 13 and 14 are applicable to all transaction patterns. This is why they are placed within a box. Now I’ll briefly define the problem of each pattern.

Exemplo de um Padrão da GRN Padrão 4: Locar o Recurso Contexto Sua aplicação lida com aluguel de recursos, que podem ser bens emprestados a um cliente por um certo período ou serviços efetuados por um especialista por determinado tempo. Você já identificou e quantificou tais recursos. Problema Como gerenciar aluguéis de recursos realizados por sua aplicação? Now I’ll show you one of the patterns. It is pattern number 4: Rent the Resource

Exemplo de um Padrão da GRN Estrutura

Uso de um Padrão da GRN Exemplo

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). técnicas foram provadas durante décadas Utilizado por 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

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 de Frameworks de Aplicação

Processo de Evolução de Frameworks de Aplicação ID. Requisito Tipo Solução de projeto implementada na aplicação Aplica-ção Tipo de manut. Situa-ção Ver-são 01 Livros podem ter diversos autores. Func. Implementar os autores de um livro como atributo multivalorado da classe Livro. Biblioteca (REENG) Perfectiva Atendi-do 1.1 02 Livro pertence a uma determinada área (Exatas, Biológicas, Humanas) Implementar a área que um livro pertence como tipo enumerado. 03 Aparelho eletrônico possui proprietário Implementar o proprietário de um aparelho eletrônico na classe Aparelho como uma referência da classe Proprietário por meio de um tipo enumerado. Oficina Eletrônica (REENG) Sendo atendi-do - 04 Emissão de etiquetas de mala direta Implementar as etiquetas de mala direta a partir da criação da classe Etiqueta, contendo dois tamanhos de etiquetas pré-estabelecidos. Penden-te 06 É necessário autenticar os usuários do sistema, registrar os acessos efetuados e bloquear o acesso a determinadas operações do usuário, conforme o seu papel. Um sub-sistema de segurança foi implementado em linguagem orientada a aspectos. perfectiva 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

Abordagem de Reúso de Teste - ARTe Elaborar requisitos de teste de consistência (PASSO 3.1) Elaborar requisitos de teste de integridade (PASSO 3.2) Passos da ARTe instanciados para a GRN 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 675:29 h 320:40 h Tempo VV&T 571:40 h 240:30 h Total casos de teste 354 695 47% 84% 42% 75% 50%

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 Framework código fonte inserido manualmente Aplicação v1 Aplicação v2 ... xxxxxxxxx

Ferramenta de Apoio ao Controle de Versões 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 PARFAIT, PREF, ARTe, Pacote Experimentação 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 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 completa do pacote de experimentação

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 LATINO-AMERICANA 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.

Um Processo Ágil de Reengenharia baseado em Framework 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 (istela@icmc.usp.br) Orientador: Prof. José Carlos Maldonado Maio/2005