Tdd e projeto_comperio

Post on 11-Jun-2015

817 views 1 download

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- higor.crr@gmail.comRenan - renan.cabral.baptista@gmail.comFlavia - flaviafortes88@gmail.com