Buscar

Agile_TI_Basico_2013

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 29 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Introdução a Métodos Ágeis 
Engenharia de Software – Turma TI Básico 
Prof. Thiago Souza – thiagosouza@cos.ufrj.br 
Apresentação 
2 
}  Professor 
}  Formação 
}  Doutorando em Engenharia de Sistemas e Computação/UFRJ 
}  Mestre em Informática/UFRJ 
}  Especialista em Desenvolvimento de Sistemas Distribuídos/UFRJ 
}  Bacharel em Sistemas de Informação/UNIGRANRIO 
}  Certificações 
}  Certified Professional for Requirements Engineering/IREB 
}  Certified Tester Foundation Level/BSTQB 
}  Sun Certified Java Associate/Oracle 
}  Experiência Profissional 
}  Analista de Sistemas/SERPRO (desde 2005) 
}  Professor Universitário/UNIGRANRIO (desde 2004) 
}  Professor Pós-Graduação Lato Sensu/UFRJ (desde 2013) 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Programação 
3 Técnicas de Verificação e Validação de Software - Prof. Thiago Souza 
Data Assuntos 
29/04 Fundamentos de Engenharia de Software 
06/05 Rational Unified Process (RUP) 
13/05 Rational Unified Process (RUP) 
20/05 Introdução a Métodos Ágeis 
27/05 Scrum e Extreme Programming (XP) 
03/06 CMMI 
10/06 MPS.BR 
17/06 Engenharia de Requisitos 
24/06 Engenharia de Requisitos 
01/07 Qualidade do Produto 
08/07 Qualidade do Produto 
15/07 Gerência de Configuração de Software 
22/07 Gestão de Projetos 
29/07 Métricas de Processo e de Produto 
05/08 Reengenharia e Engenharia Reversa 
Roteiro 
}  Desenvolvimento Tradicional de Software 
}  Desenvolvimento Ágil de Software 
}  Referências 
}  Exercícios 
4 Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Tradicional de Software 
5 
}  Tendência até os anos 90 
}  Processos prescritivos e formais 
}  Heavy-weight process 
}  Tendência atual 
}  Processos descritivos e comportamentais 
}  Light-weight process 
}  Métodos ágeis 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Tradicional de Software 
6 
}  Modelo Cascata 
}  Considera que requisitos não irão mudar ao longo do 
projeto. 
}  Requisitos sempre mudam. 
}  Cliente não tem chance de pedir novamente. 
}  O cliente tem contato com um produto executável muito 
tempo depois da primeira reunião com a equipe. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Tradicional de Software 
7 
}  Modelo Cascata 
}  Problemas 
}  É impossível conhecer todos os requisitos logo no início do 
projeto. 
}  Mesmo fazendo todo o esforço possível é improvável que todos 
os requisitos sejam levantados no início do projeto. 
}  Existem requisitos que usuários e analistas não conseguem 
identificar de forma antecipada. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Tradicional de Software 
8 
}  Custo das mudanças 
}  Quanto mais tarde for feita uma mudança maior será seu 
custo. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Tradicional de Software 
9 
}  A crise de software 
}  Standish Chaos Report 
}  Análise regular sobre milhares de projetos de desenvolvimento 
de software nos EUA. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
10 
}  O que é 
}  Conjunto de métodos e práticas para desenvolver 
software. 
}  O termo é abrangente e engloba conceitos como: 
}  Atenção maior está no que as pessoas podem fazer e 
não somente nos processos que elas utilizam. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
11 
}  O que é 
}  O software é construídos por partes (incrementos) e para 
cada parte executa-se um ciclo (iteração). 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
12 
}  Por que se tornar ágil? 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
13 
}  O que é agilidade? 
}  Ter rapidez e desembaraço. 
}  Fazer as coisas complexas de forma simples. 
}  Ter a equipe comprometida com os objetivos do projeto. 
}  Entregar aquilo que gera maior valor para o cliente, de 
forma cada vez mais rápida e com qualidade. 
}  Ter capacidade de responder rapidamente a mudanças. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
14 
}  O que é agilidade? 
}  Agilidade não significa necessariamente diminuir o tempo 
de entrega do sistema. 
}  Agilidade está relacionada a diminuir o tempo de 
manutenção corretiva do sistema. 
}  Para alcançar agilidade pode ser necessário incluir mais 
atividades de desenvolvimento. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
desenvolvimento manutenção 
desenvolvimento manutenção 
Tempo 
“Apressado” 
Ágil 
Desenvolvimento Ágil de Software 
15 
}  O que é um método ágil? 
}  É uma atitude, não um processo prescritivo. 
}  É um complemento aos métodos existentes, e não uma 
metodologia completa. 
}  É uma forma de se trabalhar em conjunto para atingir as 
necessidades das partes interessadas no projeto. 
}  É uma coisa que funciona na prática, não é teoria 
acadêmica. 
}  É para o desenvolvedor médio, mas não é um substituto 
de pessoas competentes. 
}  Não é um ataque à documentação, pelo contrário 
aconselha a criação de documentos que têm valor. 
}  Não é um ataque às ferramentas CASE. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
16 
}  Métodos ágeis 
}  Há diversas metodologias para desenvolvimento ágil. 
}  Cada metodologia enfatiza um conjunto particular de aspectos 
de desenvolvimento de software. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
17 
}  Origem dos métodos ágeis 
}  Apesar de algumas metodologias ágeis existirem há mais 
de 20 anos, no ano de 2001 que foi dado o pontapé para 
a grande disseminação das abordagens ágeis. 
}  Nesta época, os principais responsáveis pela teoria e 
aplicação de diversos métodos se reuniram para discutir 
sobre as melhores maneiras de gerenciar e desenvolver 
projetos de software. 
}  Entre os participantes do grupo estavam nomes como: 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
18 
}  Origem dos métodos ágeis 
}  Estes encontros iriam resultar no Manifesto Ágil e na 
formação da Aliança Ágil, uma organização sem fins 
lucrativos destinada a promover a adoção dos métodos 
ágeis. 
}  O Manifesto Ágil documentou princípios orientadores 
para o desenvolvimento ágil e definiu uma filosofia em 
torno de um conjunto de metodologias existentes. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
19 
}  Manifesto Ágil 
Rational Unified Process (RUP) - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
20 
}  Métodos ágeis enfatizam 
}  Comunicação face a face. 
}  Colaboração entre clientes e desenvolvedores. 
}  Software operacional como a principal demonstração de 
progresso. 
}  Demonstração frequente de progresso. 
}  Técnicas de engenharia que agreguem valor 
}  Test-Driven Development (TDD), Behavior Driven Development 
(BDD), Integração Contínua (IC), refatoração,etc. 
}  Retrospectivas e melhoria contínua. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
21 
}  Princípios ágeis 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Desenvolvimento Ágil de Software 
22 
}  Comparação 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Referências 
23 
}  Manifesto Ágil 
}  http://manifestoagil.com.br/ 
}  The new methodology 
}  http://www.martinfowler.com/articles/newMethodology.html 
}  Cockburn, A. Agile Software Development.Addison-
Wesley, 2002. 
}  Crispin, L.; Gregory, J. Agile Testing. Addison-
Wesley, 2009. 
Introdução a Métodos Ágeis - Prof. Thiago Souza 
Exercícios 
Engenharia de Software – Turma TI Básico 
Prof. Thiago Souza – thiagosouza@cos.ufrj.br 
Exercícios 
25 Fundamentos de Engenharia de Software - Prof. Thiago Souza 
Exercícios 
26 Fundamentos de Engenharia de Software - Prof. Thiago Souza 
Exercícios 
27 Fundamentos de Engenharia de Software - Prof. Thiago Souza 
Exercícios 
28 Fundamentos de Engenharia de Software - Prof. Thiago Souza 
Exercícios 
29 Fundamentos de Engenharia de Software - Prof. Thiago Souza

Outros materiais