Upload
igor-abade
View
1.145
Download
1
Embed Size (px)
DESCRIPTION
o Empresas no mundo inteiro têm cada vez mais dificuldade para desenvolver e entregar software de qualidade. Os desafios são vários, tais como gerenciar as expectativas do usuário e as mudanças constantes de requisitos, bem como garantir a coesão e o foco do time. Venha ver como o desenvolvimento ágil de aplicações, apoiado sobre o SCRUM e o novo Team Foundation Server “11”, podem ajudar times de desenvolvimento a melhorar seu dia-a-dia de trabalho para entregar software de qualidade a seus clientes.
Citation preview
Desenvolvimento Ágil com SCRUM
e Team Foundation
Server “11”
Microsoft TechDay – Sorocaba – 19/05/2012
@IgorAbadeblog.lambda3.com.br/L3/IgorAbade
www.buildwindows.com
• Introdução• Priorização• Planejamento• Execução• Respondendo às
Perguntas
Agenda3
www.buildwindows.com
“Nossa equipe não produz o quanto gostaríamos”
“Nosso cronograma está atrasado”
“Nossa equipe de desenvolvimento não se comunica”
“Precisamos nos adequar aos novos requisitos”
“Não conseguimos garantir a qualidade das soluções”
Típico Projeto de Software
www.buildwindows.com
1996 1998 2000 2002 2004 20060%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Taxa de Sucesso nos projetos de software
Sem sucessoCom desafiosBem-sucedido
Fonte: Standish Group, Relatório da Pesquisa do Terceiro Trimestre 2006, Resultados da CHAOS Research
Típico Projeto de Software
Desafios: Problemas comuns• Requisitos de negócios não são gerenciados de
forma efetiva• Ferramentas e dados dispersos• Testes não alinhados aos objetivos de negócios • Falta de orientações e processos definidos• Problemas de comunicação entre os membros
da equipe• Visibilidade limitada do status do projeto para
tomada de decisões
www.buildwindows.com
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
Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda.
www.manifestoagil.com.br
www.buildwindows.com
Lean
XP
Framework de gestão ágil de projetosPapéis e cerimônias, melhoria contínua dos times, entrega rápida, limitar trabalho à capacidade
Cultura ágil, mindset e práticasEliminar desperdícioRespeitar as pessoas, foco principalmente em P&D
Otimizar todo o fluxo Foco na otimização de todo o processo de negócios
Práticas de engenhariaTrazer qualidade para dentro do desenvolvimento – Automação, integração contínua, revisão por pares etc.
Práticas Ágeis
Scrum• Iterativo• Comunicação• Auto-organizado
• Define– Papéis– Artefatos– Eventos
www.buildwindows.com
Elementos do Scrum Scrum Master
Product Owner
Team
www.buildwindows.com
ULTIMATE
Team Explorer Everywhere
Extensibility
SharePoint
Project Server
System Center
Premium
ProfessionalTest
Professional
TEAMFOUNDATION
SERVER Lab Management
Office
Web Access
Windows Azure
Version Control Test Case Management
RequirementsManagement
Build Automation
ProjectManagement
Reporting
Priorização
www.buildwindows.com
Priorização Planejamento Execução Respostas
www.buildwindows.com
5
3
8
3
Product Backlog
1
8
Pri
ori
ty
5
Cuidando do Backlog
www.buildwindows.com
5
3
8
3
Product Backlog
1
8
5
Cuidando do Backlog
5
www.buildwindows.com
Critério de Aceitação• Eu posso pesquisar por ….• Eu posso pagar com ….• Eu posso ver e editar …
Product Backlog
Critério de Aceitação
Priorizaçãodemo
Planejamento
www.buildwindows.com
Priorização Planejamento Execução Respostas
www.buildwindows.com
5
8
5
Product Backlog Sprint Backlog
Planejamento
3
www.buildwindows.com
Product Backlog Sprint Backlog
Planejamento
5
8
5
www.buildwindows.com
Product Backlog Sprint Backlog
Planejamento
www.buildwindows.com
Product Backlog Sprint Backlog
Planejamento
TOO BIG!
www.buildwindows.com
Product Backlog Sprint Backlog
Planejamento
www.buildwindows.com
Product Backlog Sprint Backlog
COMMIT!
Planejamento
Planejamentodemo
Execução
www.buildwindows.com
Priorização Planejamento Execução Respostas
www.buildwindows.com
Product Backlog Sprint Backlog
Execução
TaskBoard
www.buildwindows.com
XP: Extreme Programming
31
www.buildwindows.com
• Integração Contínua é uma prática
• Integrar código cedo e com frequência, para evitar “Integration Hell"
• Objetivo final é “parar e consertar” o mais cedo possível
Integração Contínua
Princípios• Automatize o Build e o mantenha rápido• Crie um Build “auto-testável”• Todo mundo faz check-in diariamente• Todo check-in deve ser compilado• Testes numa cópia do ambiente de produção• Facilite o acesso aos últimos entregáveis• Todo mundo pode ver os resultados do
último build
www.buildwindows.com
Developer
• Code + Build + Unit Testing until stable
• Get latest and Merge• Local Build + test +
code analysis …• Check-in
Product Build
• Build and Package• Unit Testing• Deploy and Test
• Integ / Acceptance / System
• Code Quality Checks• Profiling• Log Analysis
Cross Products
• End to end flows
Fluxo de Integração Contínua
Relatório de Falhas
www.buildwindows.com
TDD – Test-driven Development
Execuçãodemo
Responding
Respondendo às Perguntas
www.buildwindows.com
Priorização Planejamento Execução Respostas
www.buildwindows.com
Product Backlog Sprint Backlog
Planejamento
www.buildwindows.com
Product Backlog Velocity
Sprint 1:
Sprint 2:
Sprint 3:
Sprint 4:
13
15
12
18
Velocidade
www.buildwindows.com
Product Backlog
Pri
ori
ty
Cuidando do Backlog
www.buildwindows.com
Product Backlog
Pri
ori
ty
Respondendo às mudanças
www.buildwindows.com
• Pronto (Done) define quando um incremento do produto é potencialmente entregável
• Definition of Done (DoD)– Uma lista simples, auditável,
pertencente ao time– Pode ser influenciada por
padrões organizacionais e requisitos específicos do produto ou da entrega
• Exemplo de um DoD simples:– Código completo– Testes passando– Tudo em check-in– Critérios de aceitação
definidos pelo PO foram atingidos
“Pronto!"
Takeaways
Conclusão
www.buildwindows.com
• Defina o “pronto”• Falhe rápido• Entenda a velocidade do seu
time• Termine o que você começou• Bugs são trabalho de
verdade
• Escreva testes de unidade. Sempre
• Autonomy, mastery, purpose• Faça a coisa certa… na hora
certa• Planeje até que você precise
aprender• Qualidade não é uma variável
Dez coisas para levar para pensar
Dúvidas?
www.lambda3.com.br