Se você não testa, você não é ágil!

O colega Robson Pelegrini reportou na lista [scrum-brasil] uma situação que é comum, principalmente em equipes que estão iniciando no desenvolvimento ágil de software e que (com a devida autorização) transcrevo abaixo:

Pessoal,

Gostaria de saber como vocês tratam a questão dos bugs que surgem dentro do SPRINT, por exemplo:

  • Criam um item no SPRINT BACKLOG, “correção de bugs”
  • Bugs é responsabilidade do time concertar, não podendo esse impactar na entrega do SPRINT

Acredito que a partir da 1ª entrega feito ao PO, temos o que podemos chamar de “legado”, e então começam a surgir bugs e mudanças de requisitos e funcionalidades que geralmente afetam o planejamento feito para o próximo SPRINT.

- Isso costuma ocorrer com vocês ? Como vocês lidam com essas situações ?

Necessário pontuar algumas coisas num cenário como este.  Vamos a elas.

O QUE VEM A SER UM “BUG” DE SOFTWARE?software-bug-03

Como seres humanos, todos estamos sujeitos a erros.  Assim, mais ainda quando estamos lidando com um produto em desenvolvimento, ou seja, que está sendo construindo.  Muitos projetos de software mantém dois ramos do produto –um estável e um em desenvolvimento– justamente para diferir a quantidade de bugs em potencial que podem estar contidos no produto.

Se por um lado tudo isso é verdade, por outro, quando tratamos de desenvolvimento ágil de software, deve-se partir da premissa de que a cada iteração no ciclo de desenvolvimento um item de valor deve ser entregue ao cliente.  São os releases curtos.

Isto posto, cabe nos perguntarmos: afinal o que é um “bug” de software?

Continuar lendo

Agile Weekend 2009: melhor impossível!

TaSafo! no Agile Weekend 2009

TaSafo! no Agile Weekend 2009

No fim de semana passado (25 e 26 de abril) aconteceu o Porto Alegre Agile Weekend 2009, um evento organizado pelo GUMA-RS e Spin-POA – muito bem organizado, diga-se de passagem – no qual o TáSafo! marcou presença. Um de nossos objetivos para este ano é participar dos principais eventos nacionais, trazendo para nossos leitores uma percepção paraense das coisas, mostrando com os nossos olhos como foram os eventos e comentando os assuntos abordados. O Agile Weekend foi o primeiro.

O GUMA-RS é um grupo criado há cinco anos, hoje coordenado por Luiz Parzianello e Daniel Wildt, que vem se fortalecendo bastante desde então. Esse foi o maior evento realizado pelo grupo, e provavelmente o de maior sucesso também. Foram mais de 300 inscritos para assistir palestras de altíssima qualidade, apresentadas por grandes agilistas brasileiros. Também houveram 2 mini-cursos apresentados por Luiz Parzianello (Requisitos de software: uma abordagem ágil) e Adail Retamal (TOC essencial: uma introdução à Teoria das Restrições) nos dias 23 e 24.

Além da qualidade das palestras, o público contribuiu muito para o sucesso do evento: pessoas entusiasmadas, desinibidas, curiosas ao extremo e participativas, muito mesmo. Perguntas interessantes surgiam nas palestras e painéis, fomentando discussões construtivas e algumas vezes ditando o rumo do assunto.

Quando fecho os olhos e lembro do evento, vejo uma compilação de imagens passando rapidamente: os palestrantes em momentos de apresentação, os coffee-breaks, discussões, chimarrão e muita risada. Em todas as “fotos” vejo pessoas conversando, com aquele brilho nos olhos, de quem acredita em algo e quer compartilhar essa crença com os outros, descobrir como fazer para realizar seus ideais e construir um mundo mercado melhor. Sobre mercado entenda qualidade de serviços, ambiente de trabalho, relação cliente-fornecedor e pessoas-pessoas em geral. Eu me senti assim e percebi que tantos outros também se sentiram dessa forma.

Tinha também muita gente “nova” em Ágil. A palestra do Samuel Crescêncio de introdução ao Scrum lotou tanto que ficou gente de fora. Outra que não cabia uma mosca na sala foi a palestra “Agilizando seu projeto de software”, por Bruno Pedroso.

Palestra "Agilizando seu projeto de software"

Sala lotada com Bruno Pedroso

Quando chegava a hora do coffee-break – de excelente qualidade – aquele mar de gente saia da sala sem deixar a peteca cair, formando grupos rapidamente, enquanto a comida e o assunto ainda estavam quentes.

Grandes nomes trazem grandes públicos. A grade de palestras estava ótima e o número de inscritos surpreendeu, comparecendo pessoas de várias partes do Brasil. É claro que a maioria era de Porto Alegre, mas os próprios organizadores ficaram surpresos com a quantidade de gente que viajou do interior do RS e de outros estados para participar do evento. Eu mesmo encontrei pessoas do RJ, SP e DF.

Palestras
Depois da abertura, Luiz Parzianello e Daniel Wildt fizeram uma abordagem geral da cultura Lean. Eles mostraram o que podemos aprender com esse pensamento que muitos crêem ser a base das metodologias ágeis. Interessante saber que a Toyota era uma fábrica de tecidos antes de virar a gigante dos automóveis, e que muitos conceitos foram concebidos nessa etapa da empresa, mostrando que essa cultura traz benefício não só para uma atividade específica, mas para uma infinidade de assuntos. Hoje, além dos diversos setores (automobilístico, construção civil, serviços, alimentação, farmaceutica, entre outros), tem até gente se beneficiando da cultura Lean no âmbito pessoal, utilizando-o como estilo de vida (alguém aqui?). A palestra foi tão boa que o que se viu ao terminar foi um pequeno tumulto no estande da livraria para comprar os livros sobre o assunto.

Improviso e entrosamento - introdução ao pensamento Lean

Improviso e entrosamento - introdução ao pensamento Lean

Uma das mais importantes mensagens que as pessoas estão passando sobre Ágil no momento atual é que não adianta usar as práticas sem acreditar nos princípios. Indo além de qualquer marca Ágil, Adail Retamal mostrou que existem muitas formas de desenvolver software além das nossas queridas Metodologias Ágeis®, apresentando a Corrente Crítica, um método de gestão de projetos que vem trazendo uma redução incrível na duração dos projetos de quem a usa, e que propõe métodos no mínimo diferentes, como remover as datas de início e fim das tarefas e diminuir pela metade o tempo estimado para cada tarefa, com o objetivo principal de evitar a síndrome do estudante e a Lei de Parkinson. Na verdade, a Corrente Crítica apresentada por Adail ataca ativamente as cinco doenças do gerenciamento de projetos.

Uma das grandes atrações do evento foram os divertidíssimos jogos de Luiz Parzianello e as simulações de Fávio Steffens e Rafael Prikladnicki. Ora na sala de palestra, ora no hall da PUC, “aprendemos fazendo” que os métodos tradicionais são em média 3 vezes mais lentos que os ágeis e que é melhor proteger a equipe para criar união, ao invés de tentar se proteger a todo custo, o que acaba gerando desunião.

No início do segundo dia, o pessoal da SEA mandou uma das palestras mais interessantes do evento. Contaram um case de sucesso que aconteceu em um ambiente hostil para as práticas ágeis, tendo como cliente os militares da Força Aérea Brasileira e a contratação feita através de licitação, o que eliminou a possibilidade de utilizar o contrato de escopo negociável.

O pessoal da SEA e seus conflitos militares

O pessoal da SEA e seus conflitos militares

Renato Willi, Alexandre Gomes e Bruno Pedroso mostraram de forma descontraída como o time da SEA conseguiu conquistar passo a passo a confiança da aeronáutica, incluindo Ágil aos poucos, sem avisar (e às vezes até escondendo). A partir da percepção da oportunidade de usar Ágil, eles começaram a aplicar e perceber a evolução do time entre os sprints, o aumento da velocidade da equipe e melhores estimativas. Apesar de algumas ameaças de prisão e berros nos ouvidos (diferentes culturas, diferentes formas de encarar erros), o projeto obteve grande sucesso e a conclusão foi: respeitar a cultura do cliente, aprender devagar, aceitar os erros e melhorar. E é claro, não se esquecer de falar no final que aquilo tudo que eles usaram eram as metodologias ágeis. =)

Samuel Crescêncio e Adriano Campestrini apresentaram um projeto open source bem bacana que a OnCast desenvolveu para automatizar e monitorar os testes de performance chamado Lobo, criado a partir de uma necessidade da empresa, e convidaram a platéia para meter a mão na massa e ajudar a desenvolver a ferramenta.

Adriano e Samuel apresentando o projeto open source Lobo

Adriano e Samuel apresentando o projeto open source Lobo

Bruno Pedroso fez uma abordagem mais humanista da coisa, dando dicas pessoais de como entrar no “mundo ágil” de desenvolvimento de software. Enfatizando qualidade de vida e princípios mais do que marcas, nos falou para adotar ágil sem se preocupar com aquele dedo que aponta para a gente dizendo: “tu não usas Ágil porque não é assim que se faz sprint planning”. Temos que parar de nos preocupar se estamos usando a metodologia x ou y, e começar a se preocupar em ser ágil de fato, em aderir aos princípios (note que ágil ≠ de Ágil).

Pedroso falou incisivamente, como que para mexer com a platéia, parecendo irritado com essa situação de hoje na qual muitos estão mais preocupados com a marca do que com os princípios em si. Disse para adotarmos ágil de forma simples, começando pelo básico, e sem medo de tentar. Não é preciso estudar todos os livros de todas as metodologias e decorar todas as práticas antes de usá-las. Entenda e acredite nos princípios e crenças e comece a praticar, sem mais delongas.

Em seguida, o cutucador de feridas Daniel Wildt guiou uma sessão livre denominada “Eu odeio métodos ágeis”, na qual discutimos sobre a reação de algumas pessoas na internet perante a popularização dos métodos ágeis. Chegamos a um consenso de que “pessoas que nem praticam mas falam mal geralmente são pessoas que criticam por pura preguiça, medo de mudanças, de mudar de pensamentos e comportamento; que têm medo de evoluir.” Daniel falou também de suas brigas pela internet, inclusive mexendo com “gente grande”, que normalmente não encontra resistência quando escreve algumas besteiras em seus blogs famosos.

No final, rolou um grande debate no auditório sobre compra e venda de projetos ágeis, com a participação efetiva do público em geral. Rolaram muitas perguntas, principalmente sobre novas formas de contrato de projetos e licitações. No final das contas, ainda não temos uma forma de contratação “ótima” para projetos de software. Contratos de escopo negociável – por enquanto a melhor opção – já estão sendo usados por algumas empresas, o que é um avanço, mas muitos clientes ainda são resistentes em relação a novas formas de contratação. Hoje algumas empresas que já conquistaram a confiança de seus clientes conseguem usar esse tipo de contrato. Porém, em se tratando de licitações, os contratos ainda vão dar muita dor de cabeça às empresas de software. A famosa lei 8.666 anda assombrando muita gente Brasil afora.

Evento terminado, mais algumas conversas antes de deixar a PUC, uma última confraternização no barzinho, e depois direto para o aeroporto.

Porto Alegre vai deixar a saudade de sua gente muito amistosa, da cidade agitada, de ver gente carregando o seu material para fazer chimarrão e do sotaque engraçado (tudo é relativo, né?).

Eu, Luiz e Daniel: sorrindo à toa com o sucesso do evento

Eu, Luiz e Daniel: sorrindo à toa com o sucesso do evento

Ir a um evento desses nos faz reafirmar nossas crenças e acabamos retomando fôlego para lutar pelo que acreditamos. Uma lição aprendida: não subestimar essa comunidade ágil, que já começa a mostrar resultados de seus trabalhos; que atrai cada vez mais gente; que está começando a mudar a relação da informática com as outras áreas, nos unindo cada vez mais a elas, ao invés de ser “o carinha de TI” ou aquele setor da empresa que mais parece uma caixa preta. A TI – e mais especificamente no nosso caso, os projetos de desenvolvimento de software – deve se entendível, o que fazemos deve estar claro para as pessoas; é preciso humanizar as empresas e a relação cliente-fornecedor, através de parcerias e confiança; é preciso tratar as pessoas como pessoas.

Tem coisas que a gente só vê no sul mesmo...

Tem coisas que a gente só vê no sul mesmo...