Mind map
XP, TDD, ATDD
Map content
XP, TDD, ATDD
eXtreme Programming
- Caraterísticas
- Uso de estorias de usuários
- Representa uma pequena parte funcionalidade
- Os testes automatizados implementam detalhes das estórias e as validam
- Atravessam verticalmente a arquitetura do produto
- Normalmente elas não estão focadas em um subsistema específico
- Extremo, pois recomenda-se que as boas práticas sejam levadas ao extremo!
- Foco em integração e testes
- Os testes de aceitação são obtidos de histórias de usuários
- Metodologia ágil para equipes pequenas, coesas e multidisciplinares. Requisitos vagos e em constante mudança
- Uso de estorias de usuários
- Práticas
- Planejamento incremental, Pequenos releases, Projeto Simples
- TDD, Refactoring, Programação em pares, Propriedade coletiva
- Integração contínua, Ritmo sustentável (40h semanais), Metáforas, Cliente On-Site
- Reuniões em pé, Time coeso (multidisciplinaridade e engajamento), Jogo do planejamento
- Atividades metodológicas principais
- Planejamento, Projeto, Codificação e Teste
- Valores fundamentais
- Coragem, Simplicidade, Comunicação, Feedback, Respeito
- MNEMÔNICO: CorSim ComFeRe
- Princípios básicos
- Feedback rápido, Abraçar mudanças, Presumir simplicidade
- Mudanças incrementais, Trabalho de qualidade
- Caraterísticas
Test-Driven Development (TDD)
- Características
- Método ágil de desenvolvimento de software
- Baseia-se na repetição de um ciclo de desenvolvimento curto, focado em estes unitários
- Filosofia 'Red, Green e Refactor'
- Os casos de teste que verificam uma nova funcionalidade são escritos antes mesmo da própria funcionalidade
- Escreve-se o teste, encontre uma falha e refatore-o, ciclicamente
- Uso de Teste unitários (majoritários), de integração e de aceitação
- TDD não é uma abordagem para realizar testes, mas sim um abordagem para desenvolver softwares
- Vantagem do TDD sobre outras metodologias ágeis
- Aumenta-se a produtividade: visto que se perde menos tempo com depuradores
- Software desenvolvido, em geral, apresenta maior qualidade, na medida em que é implementado direcionado às expectativas do cliente
- Redução de possíveis problemas no código
- Cria-se um código mais limpo, visto que o código para passar nos testes deve ser bastante simples
- Há mais segurança na correção eventuais de bugs
- Há a possibilidade de se testar todo o código desenvolvido, o que oferece maior confiabilidade ao sistema
- Em geral, o código é mais modularizado, flexível e extensível
- TDD apoiando XP
- Uso do "teste primeiro/codifique depois"
- Pode apoiar esse princípio por fornecer detalhes para a realização dos testes de unidade e de funcionalidade, que são importantes necessários
- TDD tem uma relação intrínseca com refatoração
- Confere ao programador maior segurança para identificar e remover o código duplicado, e permite, assim, a melhoria contínua do programa
- Uso do "teste primeiro/codifique depois"
- Características
Acceptance Test-Driven Development (ATDD)
- Método ágil de desenvolvimento de software que se baseia a comunicação entre clientes do negócio, desenvolvedores e testadores
- Ele se difere do TDD, na medida em que possui um foco maior na comunicação entre os colaboradores
- O ATDD é focado na captura de requisitos em testes de aceitação os utiliza para guiar o desenvolvimento do sistema
- Apenas o ato de se definir testes de aceitação ao discutir requisitos resulta numa melhor compreensão destes requisitos
- No final, o resultado estará alinhado às expectativas do cliente
Information
- Description
- Engenharia de software (Métodos ágeis) Mind Map on XP, TDD, ATDD, created by Michel Souza on 27/03/2018.
- Created by
- Michel Souza · Mar 2018
- Updated
- Apr 2, 2018
- Views
- 0
- History
-
- Created by Michel Souza · Mar 10, 2018
- Copied by Michel Souza · Mar 22, 2018
- Copied by Michel Souza · Mar 27, 2018
- Rating
More on Extreme Programming (XP)