comparaçãoentremetodologias rational unified process (rup...
TRANSCRIPT
![Page 1: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/1.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
1
Comparação entre MetodologiasRational Unified Process (RUP)
eeXtreme Programming(XP)
Fundamentos de Engenharia de Software PPGIA
Carlos G. Vasco, Marcelo H. Vithoft, Paulo R. Estante
Design and programming are human activities; forget that and all is lost. Bjarne Stroustrup, 1991
![Page 2: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/2.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
2
Introdução
Sucesso projeto = planejamento + escolha metodologia adequadaPlanejamento- escolha do processo de acordo com recursos disponíveis.
Metodologias� Tradicional (waterfall)- etapas seqüências. Grande esforço em especificar e definir arquitetura.
� Cíclica (RUP e XP)- ciclos reduzem riscos quando ocorrem alterações de requisitos ou funcionalidades.
Cíclica divide-se em:� Iterativas- forma incremental, a cada iteração nova parte, aprendizado da equipe. Iteração meses.
� Ágeis- redução riscos, a cada iterações liberada uma versão com restrições. Foca aspectos humanos. Iteração semanas.
![Page 3: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/3.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
3
RUP
Objetivo: Processo busca disciplinar atribuições de tarefas e responsabilidades
Guia para produção de SW onde o desenvolvimento iterativo auxilia no refinamento e redução de riscos.
Valores:-Projeto baseado em casos de uso (base)-Faz-se aderência do processo-Suportado por ferramentas
Elementos primários:-Papéis (quem está fazendo o que)-Artefatos (o que é produzido)-Atividades (como o trabalho é conduzido)-Workflows (quando uma tarefa é conduzida)
![Page 4: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/4.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
4
RUP Arquitetura
Executadas durante todo projeto (intensidade variada). 4 fases definidas
Iterações, várias dentro de uma fase.
Aspecto dinâmico
Ciclos, fases, iterações e milestones.
Aspecto estático
Atividades
Disciplinas
Artefatos
Papéis
![Page 5: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/5.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
5
XP
Objetivo: Processo estressa trabalho em equipe, feedback e a comunicação
Elemento chave é iteração. Principal tarefa codificação.Atender demanda em cenários onde os requisitos não estão claros ou são voláteis.
Valores:-Comunicação-Feedback-Simplicidade-Coragem
Atividades:-Codificação-Teste-Escuta-Projeto
Papéis:-Programador-Cliente (membro da
equipe!)-Testador-Tracker(feedback)-Líder(Couch)
![Page 6: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/6.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
6
XP Arquitetura
6 fases
![Page 7: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/7.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
7
XP
Porque XP é designada como ágil? Iterações freqüentes.
Principal tarefa
![Page 8: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/8.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
8
Comparativo
Análise inicial indica que RUP/XP possuem mesma estrutura (baseadas iterações, orientadas a cliente e definição de papéis)
Formas de análise mais detalhadas:• Quantitativa (necessário 2 projetos em paralelo, custo elevado)Itens mensuráveis, papéis, artefatos, esforço, etc.
• Qualitativa (avaliação por framework, mais barata) FrameWork- conjunto de questões extendidas para domínio específico.
Zachman´s, 6 categorias: o que, como, onde, quem, quando e porque (foco em funções e processos)
Checkland´s Client Actor Transformation World OwnerEnvironment (foco em indivíduos)
![Page 9: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/9.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
9
Comparativo (questões)
� O que (what)?
RUP- evoluiu junto UML. Grandes projetos. Tool comercial(Rational/IBM)
XP- método leve para times pequenos e médios. Tool freeware.
� Porque (why)? 3 perpectivas (vantagens/desvantagens)
Técnica-RUP pacote ferramentas/docs. XP simplicidade(livre tool)
Financeira-RUP licença tool, suporte IBM. XP porque pagar tool?Social- mesma linha da discussão comercial vs freeware
� Quando/Onde (when/where)?
Tempo- RUP 4 fases seqüenciais, é 1 ciclo de desenv., gera 1 versão SW. XP foca código produzido (independente tempo)
Localização- RUP aplica-se melhor a projetos com grande distribuição (comunicação baseada em artefatos). XP comunicação oral (pouca documentação) dificuldade com distribuição.
![Page 10: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/10.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
10
Comparativo (questões)
� Como (how)?
Extensão- RUP grande coleção de docs, papéis, descrições, atividades. “pesado” . XP “leve” poucos papéis, poucos docs.
Flexibilidade- 2 dizem ser, RUP pelo tayloring e XP mudanças baseadas em feedback.
Drivers- RUP (casos de uso) descrições são implementadas, integradas e testadas. XP (projeto baseado em teste) casos de teste criados antes do código. Estórias para guiar o que deve ser implementado.
Planejamento- Completo não pode ser feito em detalhes. RUP mudanças contínuas. XP somente o futuro muito próximo.
� Quem (who)?
XP- foca no desenvolvedor individual (poder ao nível técnico), time(programação par, cliente faz parte equipe).
RUP- enfâse em papéis (tayloring), documentação (necessário motivar equipe para criá-la e mantê-la)
![Page 11: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/11.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
11
Comparação
Artefatos (Modelos, códigos, etc)
Adquiridas IBM
Análise detalhada,Milestones
49 30
Uso em grandes projetos (Distribuição Geográfica)
Oral, Cartões de Estória
Não especifica, porém háSoftwares Livre para XP
Maior esforço em produzir o software
647
Restrito as projetos “locais”
Comunicação /Documentação
Ferramentas
Planejamento
Fases / Disciplinas /
Papéis
Magnitude de Projetos
RUP XP
![Page 12: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/12.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
12
Conclusão
Apesar de metodologias iterativas, muitas palavras chaves e valores parecidos, são diferentes.
RUP- larga descrição processo, artefatos, papéis, atividades...XP- extressa valores e princípios, foca na liberdade e simplicidade.É possível paralelo com Windows (comercial) e Linux(freeware).
Qual atende melhor?� Necessário mais estudos de caráter qualitativos e quantitativos.
![Page 13: ComparaçãoentreMetodologias Rational Unified Process (RUP ...alcides/Teaching/mestrado/FundamentosEngenh... · Guia para produção de SW onde o desenvolvimento iterativo auxilia](https://reader036.vdocuments.site/reader036/viewer/2022070615/5c14917709d3f2340f8bfa96/html5/thumbnails/13.jpg)
11 de maio de 2006 Fundamentos de Engenharia de Software - PPGIA
13
Referências
• Smith, J. (2003) "A Comparison of the IBM Rational Unified Process and eXtreme Programming", IBM Whitepaper, ftp://ftp.software.ibm.com/software/rational/web/whitepapers/2003/TP167.pdf, Abril.
• Abrahamsson, P., Salo, O., Ronkainen, J. and Warsta J. (2002) "Agile Software Development Methods: Review and Analysis", Espoo 2002, VTT Publications 478.
• Beck, K. and Fowler, M. (2000) "Planning Extreme Programming", Addison Wesley, 1a edição.
• Kruchten, P. (2000) "The Rational Unified Process – An Introduction", Addison-Wesley 2a edição.
• Luiz, R. (2005) “Obtendo Qualidade de Software com o RUP”, TCC, Universidade de Uberaba.
• Runeson, P. and Greberg, P. (2004) "Extreme Programming and Rational Unified Process – Contrasts or Synonyms?", Lund University, Sweden.