Tdd e projeto_comperio
-
Upload
renan-silva-baptista-cabral -
Category
Technology
-
view
820 -
download
1
Transcript of Tdd e projeto_comperio
Projeto Comperio e
Desenvolvimento dirigido por testes(TDD)
Alunos: Flavia Fortes, Higor Ramos e Renan Cabral
Situação problema
• Dispersão da produção acadêmica do IST-Rio • Dificuldade na comunicação entre participantes de projetos e
sociedade acadêmica • Justificar a posição do IST-Rio como uma instituição de
ensino que busca a excelência através do ensino e produção científica
• Centralização de esforços para aprimoramento de
P&E(Pesquisa e extensão)
Solução computacional
• Um sistema capaz de manter informações sobre a P&E desenvolvida no Instituto
• Portal para divulgação da produção acadêmica
• Disponibilização de ferramentas para comunicação
• Software web totalmente gratuito e open source
• Inicialmente desenvolvido em C# na plataforma DotNet
Outras possibilidades
• Geração de uma Rede de relacionamento voltada à educação e Pesquisa
• Integração com centros de pesquisa, instituições de ensino e
organizações privadas e públicas • Fonte de informações para análise visando aprimoramento
do ensino e evolução de pesquisas
Cotidiano de um programador
Segunda-Feira
10:00- Resolução de bugs no componente de CPF que é utilizado em 48 telas do sistema... 14:00 -Integração com uma biblioteca de terceiro para calculo financeiro OpenSource 16:00-Integração com código desenvolvido pelo programador jr da equipe.
Testes de software
O que é mesmo TDD?
É uma técnica de desenvolvimento de software que se baseia em ciclos de desenvolvimento de pequenos: – Escreva um teste que defina uma funcionalidade desejada– Escreva o código que faz o teste passar– Refatore o código produzido
Um pouco de história...
• Design por contrato(DBC) • Programação extrema(XP)
Testes automatizados
• Documentação executável • Detecção de erros em tempo de programação
• Confiança e garantia de que tudo funciona
instantaneamente
Testar antes de desenvolver?
• Disciplina é liberdade! • Abandone o debug!
• Pare de programar por coincidência
• Aprender sobre os requisitos antes de escrever código
• Ser o primeiro cliente do seu código
• Garantir uma cobertura de código de 100%
Metodologia RGR
R-Escreva um teste para a nova funcionalidade desejada, G-Escreva o código que faz o teste passar R- Refatore o código
Bons testes unitários
• Automáticos • Replicáveis
• Independentes
• Cobertura de código JCover,NCover
• Frameworks de Teste XUnit,JUnit,NUnit,Visual Studio Test Tools,Rspec
Como começar...
• Tenha Fé! • Aplique TDD em pequenos módulos
• Compare a taxa de bug com a taxa de cobertura
Testes não são "bala de prata" !
• Testes unitários não são de aceitação • Testes fazem apenas simulações
Dojo do IST-Rio
Desenvolvedores também treinam
Mais informações
• Dojo Rio http://groups.google.com/group/dojo-rio/topics?pli=1
• Dojo DNA http://groups.google.com/group/dotnetarchitects/topics • http://improveit.com.br/xp/praticas/tdd
• http://www.extremeprogramming.org/
• http://en.wikipedia.org/wiki/XUnit
"Desenvolvedor que não testa é como um médico que não lava as mãos antes de fazer uma cirurgia"
Contato
Blogs:http://higorcesar.com.br/http://projetocomperio.org/blogEmail:Higor- [email protected] - [email protected] - [email protected]