Tudo funciona Nenhum erro Isso é impossível mas é um objetivo a ser perseguido
Testes
O tanto que você testar
Porque não? E você trabalhasse em uma cia. aérea? Ou na Nasa?
Quando tentamos ir rápido nos vemos dessa forma
Mas a figura mais real é parecida com isso
Geralmente custa muito, o código não foi feito pra mudar Porque? Se os requisitos mudam toda hora...
Mentira
Vai quebrar meu brinquedo!
Só se resolve isso com testes
E em vários níveis
Programe em pares
TDD vai te permitir não usar o debugger Os ciclos curtos vão permitir isso
Testes demonstram como usar uma API
Não do seu chefe Não do seu professor
Médico sim Atores sim Desenvolvedores não
Entenda o negócio em que você está atuando Você não precisa ser um expert Não importa o seu papel no projeto, aprenda o domínio Quando o software não funciona, sempre é culpa sua -se os requerimentos estavam errados é sua responsabilidade saber disso Entenda porque o expert de domínio quer o que quer, entenda-o
1 Favorite
Wesley Cota, Developer at Home, favorited this 4 weeks ago
Caminho Do Desenvolvedor Amador Para o Profissional - Presentation Transcript
Giovanni Bassi Arquiteto de software independente www.giovannibassi.com unplugged.giggio.net
Giovanni Bassi
Arquiteto de software
Microsoft MVP
Consultoria, gestão, mentoring
Treinamento
Palestrante
Professor universitário
Dezenas de artigos na .Net Magazine
Parte do corpo editorial da .Net Magazine
C#, VB, J#, F#, IronRuby, etc... (beta a beta)
Líder e fundador do .Net Architects (1º grupo de arquitetura de software com .Net do Brasil)
Ineta Board Member
Certificações/Títulos
Giovanni Bassi:
Email: giggio@giggio.net
Blog técnico: http://unplugged.giggio.net
Site: http://giovannibassi.com
Twitter: @giovannibassi
.Net Architects:
Grupo: http://dotnetarchitects.net
Podcast: http://podcast.dotnetarchitects.net
Online: http://tinyurl.com/DotNetArch
Twitter: #DotNetArchitects
Online @
Tudo que vocês acham que sabem está errado
Profissionalismo é algo muito diferente do que vocês imaginam
Quais são as práticas de um engenheiro mecânico profissional? Quais são as práticas de um médico profissional? Quais são as práticas de um engenheiro de software profissional?
Bugs Escopo fechado “ Nada muda” Comando e controle Estimativa assinada com sangue Prazo fechado Múltiplas linguagens Preço fechado Foco nas ferramentas Processos complexos Documentação extensa Silos Atrasos constantes Inexistência de testes Qualidade sofrível
Chaos Report Desafiado: atrasou, custou mais, ou entregou menos Fracasso: cancelado, ou entregue e nunca usado Fonte: Standish Group
Uso de Funcionalidades 64% Nunca ou Raramente Utilizadas 20% do Software é Realmente Útil Fonte: Standish Group, 2002
Cone da incerteza Fonte: NASA (Cone of uncertainty)
Falsa percepção de progresso
Os primeiros 90% da aplicação levam 90% do tempo para ficarem prontos Os 10% finais levam mais 90% do tempo para terminar
Seu time se parece com isso?
Visão de futuro
Sua produtividade se parece com isso?
Ou com isso?
Software tem que funcionar
Quantos erros QA deve encontrar na homologação?
Você deve isso
Quanto da sua aplicação você quer que funcione?
Confie sua vida ao seu código
Quanto custa mudar o seu código?
Escrevemos código que não é feito para mudar Requisito Código
“ Não se mexe em time que está ganhando”
Refatore seu código o tempo todo
Com testes não há medo
“ Sempre deixe as coisas mais limpas do que estavam quando você chegou” Regra dos escoteiros
Trabalhe iterativamente
Use Test Driven Development
TDD
Quantas pessoas você conhece que executaram o próprio código cinco minutos atrás?
Stress Aceitação Funcional (Regressão vem de graça) Faça outros tipos de testes
“ A distinção entre estimativas, metas e compromissos é crítica para entender o que uma estimativa é, o que uma estimativa não é, e como tornar suas estimativas melhores.” Steve McConnell No livro “Software Estimation: Demystifying the Black Art” http://tinyurl.com/estimativa
Conheça... Padrões arquiteturais Padrões de projeto Princípios de OO Algoritmos Processos
Aprender é sua responsabilidade Assim como transmitir seu conhecimento
Saia do cubículo!
Desligue o fone de ouvido!
Utilize o quadro branco
Conheça o negócio em que você atua
Saiba que você não é seu usuário
Como fazíamos software?
Manifesto Ágil Indivíduos e interações mais que processos e ferramentas Produto 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 http://agilemanifesto.org Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas
Palestra realizada no MS Tech Days. Veja o vídeo a more
Palestra realizada no MS Tech Days. Veja o vídeo aqui:
http://unplugged.giggio.net/post/Palestra-do-caminho-desenvolvedor-amador-para-o-profissional-ao-vivo!.aspx less
0 comments
Post a comment