Desenvolvimento ágil: eXtreme Programming vs SCRUM Tiago Rodrigues de Mello CCO-230 – ENGENHARIA DE SOFTWARE / 2010.

Slides:



Advertisements
Apresentações semelhantes
Agilidade em um Contexto Hostil
Advertisements

Uma metodologia inovadora…
SCRUM para Gerência de Projetos
GUG Porto Alegre/Brasil Desenvolvimento em GeneXus, Métodos Ágeis e Scrum.
Gestão Ágil de Projetos
Modelos de processo de software:
um processo ágil de desenvolvimento de software
Ci&T SPIN – Campinas Equipe de testes em projetos com CI e TDD.
Israel M. Santos Rafael Mendonça
FDD.
O mundo ágil do SCRUM Alexsandro Marques 02/09/2009.
Workshop Smart Software SPA Saúde. Workshop Smart Software SPA Saúde.
Métodos Ágeis de Desenvolvimento
Ari Stopassola Daniel #
Métodos Ágeis e SCRUM VISÃO GERAL
Métodos Ágeis Agile Modeling, ou AG
Extreme Programming.
Técnicas e Projeto de Sistemas
Desafios do desenvolvimento de software
Michele de Vasconcelos Leitão Orientadora: Cristine Gusmão
Sumário Motivação Metas Metodologias Ágeis Caso de Estudo: Ambiente
Michele de Vasconcelos Leitão Orientadora: Cristine Gusmão
Michele de Vasconcelos Leitão Orientadora: Cristine Gusmão
Implantando SCRUM na Simplestec Equipe Tributária
Michele de Vasconcelos Leitão Orientadora: Cristine Gusmão
Implantando SCRUM na Simplestec Equipe Tributária
Washington Sena de França
SCRUM Equipe Amauri Cleverson Daiane Mauri Mauricio.
Engenharia de Software
Gerência de Projetos de TI 15
Raoni de Oliveira Franco
Desenvolvimento Rápido de Aplicação (RAD)
Gerência de Configuração - GC
Visão Geral sobre o XP – eXtreme Programming
XPRecife Madson Menezes Costa Ricardo de Oliveira Cavalcanti.
Visão Geral sobre o XP – eXtreme Programming
Metodologia Ágil SCRUM
Scrum Visão Geral Janeiro/2010.
EXTREME PROGRAMMING XP.
Metodologia ágil Lílian Simão Oliveira.
Scrum.
# development Teresa Maciel DEINFO/UFRPE. # Fidelidade do cliente CompetitividadeSobrevivência Prazos curtos Baixo custo Agregação ao negócio.
SCRUM Processo de Desenvolvimento de Software
Engenharia de Software
Metodologias Ágeis Para o Desenvolvimento de Software
Gerenciamento de Equipes com Scrum Curso de Verão 2008 – IME/USP Dairton Bassi Danilo Sato 24/Jan/2008.
Trabalho de PAW Scrum Nome: Jaila Cíntia.
SCRUM Metodologia para o Desenvolvimento Ágil de Software Rafael Rodrigues, Rafael Rost.
Metodologias Ágeis Para o Desenvolvimento de Software
Métodos Ágeis e Programação Extrema (XP)
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA TOCANTINS Campus Araguaína ANA PAULA LIMA.
SCRUM.
Extreme Programming João Gabriel Pedro Ramos Renan Santos.
Modelos de Processo de Software eXtreme Programming André DrummondRA Danilo BenzattiRA MO409 – Engenharia de Software Profa. Eliane Martins.
Gestão Ágil de Projetos
SISTEMA DE MONITORAMENTO DA TECNOLOGIA DA INFORMAÇÃO.
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.
PSP - Aula 02 Vanilson Burégio.
Extreme Programming Alexandre Nodari.
Utilizando práticas do PMBOK para implantar o Scrum
Contextualizando XP para Web engineering
SCRUM.
O uso de XP em uma Organização CMM 2 Renata Endriss
EXtreme Programming Eduardo Aranha.
SCRUM Development Process Universidade Federal de Pernambuco Lenylda Albuquerque
Agile Modeling Júlio Lins – Junho / 22 Agile Alliance Em 2001, reune-se um grupo de representantes das metodologias eXtreme Programming, SCRUM,
Joaquim Oliveira Grupo de Estudos em Processos 25/06/2002 Comparação entre Metodologias de Desenvolvimento.
Metodologia Ágil THOBER CORADI DETOFENO, MSC. Aula 04 JOINVILLE 2016 Universidade do Estado de Santa Catarina – CCT/UDESC.
GERENCIAMENTO DE PROCESSOS AGÉIS: SCRUM
Transcrição da apresentação:

Desenvolvimento ágil: eXtreme Programming vs SCRUM Tiago Rodrigues de Mello CCO-230 – ENGENHARIA DE SOFTWARE / 2010

Agenda Desenvolvimento Ágil de Software eXtreme Programming SCRUM Comparações Conclusão

Manifesto Ágil Indivíduos e interação entre eles mais que processos e ferramentas; Software em funcionamento mais que documentação abrangente; Colaboração com o cliente mais que negociação de contratos; Responder a mudanças mais que seguir um plano.

eXtreme Programming - XP Método de desenvolvimento de software; Conjunto de valores, princípios e práticas; Ciclo de desenvolvimento curtos e releases frequentes; Permite respostas rápidas a mudanças de requisitos em qualquer etapa do desenvolvimento; Enfatiza o trabalho em equipe que se auto- organiza em que todos são iguais num trabalho colaborativo.

XP - Valores Simplicidade; Comunicação; Feedbacks; Coragem; Respeito.

XP: Simplicidade Não tente prever o futuro! Comece por soluções simples e que funcionem. Melhorias são adicionadas depois.

XP: Comunicação Todos são parte do time, inclusive o cliente! Contato diário e face a face. Pair programming.

XP: Feedbacks Testes: Unitários; Integração. Cliente: Testes funcionais. Membros do time: Quando um novo requisito chega o time estima quanto tempo será necessário.

XP: Coragem Não deixe para amanha o que pode ser feito agora! Não ficou bom?! Refaça o quanto necessário! Se não precisa, jogue fora!

XP: Respeito Ninguém modifica o código no repositório sem testar antes; Todos buscam a melhor solução, o melhor design para poupar retrabalhos futuros; Todos os valores anteriores são respeitados; Pessoas são valorizadas e ninguém é ignorado.

XP - Práticas Process – On-site customer (cliente no local), testing (testes), small releases (versões pequenas), planning game (planejamento do jogo) Programming – Simple design (projeto simples), testing (testes), refactoring(reconstrução), coding standars(código padrão) ; Team – Collective ownership (código coletivo), continuous integration (integração continua), metaphor (metáfora), pair programming (programação em par), small releases (versões pequenas) ;

SCRUM Framework iterativo e incremental para desenvolvimento ágil de sofware; Não há prática de engenharia pré-definida; Conjunto de práticas e papéis predefinidos; Sprints (iterações);

SCRUM

SCRUM: Planejamento, Product Backlog Product Backlog é criado; Data de entrega do produto final é definida; Componentes do sistema são priorizados; Custo e riscos são estimados; Cliente participa.

SCRUM: Sprints Ciclo iterativo de desenvolvimento; 1 a 4 semanas de duração (o time define); Um subconjunto do Product Backlog é selecionado para fazer parte do Sprint atual (Sprint Backlog) ; Durante o sprint, nenhuma funcionalidade deve ser adicionada; no entanto as existentes no Sprint Backlog podem ser atualizadas ou alteradas.

SCRUM: Papéis Dono do produto (Product Owner); ScrumMaster; Equipe.

Dono do Produto Define as funcionalidades do produto e as prioriza; Responsável pela visão de negócios do projeto; Aceita ou rejeita resultados dos trabalhos; Cliente + Analista de Requisitos.

ScrumMaster Facilitador: responsável por remover obstáculos do time e assegurar que as práticas estão sendo executadas corretamente; Escudo contra interferências externas.

Time Reponsável pela entrega de soluções; Desenvolvedores de software, analista de testes, designers entre outros; Trabalha de forma auto-gerenciada.

Reuniões Sprint Planning 1 Product Backlog (Todos participam); Sprint Planning 2 (Cliente não participa) Sprint Backlog; Daily Scrum (Time + ScrumMaster) Sprint Review/Reflection (30 dias).

Daily Scrum Reunião curta (15 min); ScrumMaster é o responsável e pergunta a cada membro do time: O que fez ontem? O que fará hoje? Existe algum obstáculo?

XP vs SCRUM Semelhanças: Ambos não prevêem o futuro (não definem todos os requisitos já de início); Ambos produzem software que funcionam a cada iteração; Comunicação é essencial (Reuniões diárias).

XP vs SCRUM Diferenças: SCRUM tem papéis pré-definidos; XP a validação do software é feita a todo instante (Testes); SCRUM somente ao final de cada Sprint; XP adota a programação em par como prática fundamental; XP é um método e SCRUM é um FRAMEWORK?!

Conclusão Ambas abordagens procuram resolver limitações dos métodos tradicionais de desenvolvimento ; Reduzir custos com mudanças de requisitos ao longo do desenvolvimento; Reduzir tempo de entrega do produto final ao cliente. Embora SCRUM seja mais abrangente; ambas dependem de uma avaliação do contexto para serem utilizadas.

Referências Extreme Programming Explained: Embrace Change, Kent Beck; Wikipedia;

Dúvidas e discussões