Nas apresentações de Declan Whelan na Agile Testing centradas na promoção da aprendizagem em equipes de software. “Entregando valor a longo prazo para a nossa organização é bloqueada por nossa capacidade de aprender”, disse Whelan, apresentando várias grandes idéias como garantir que as equipes continuarão a aprender e melhorar.
Uma idéia para mim foi a criação de um projeto de estimação para a equipe experimentar coisas novas. As equipes podem, muitas vezes, apenas experimentar coisas novas para produzir um código evoluído. A única maneira que você pode ver como ele realmente funciona e como é fácil de manter, como muitos bugs existem e como eles são resolvidos rapidamente, a experiência realmente tem que ser prática. A menos que ele faça, você não pode realmente dizer se vai funcionar ou não. Às vezes as coisas acabam grandes e você decidi manter a experiência lá, às vezes eles acabam azedos e se pretende levr para outros projetos. Por exemplo, fiquei muito impressionado com o Grails vários meses atrás e minha equipe decidiu construir uma aplicação web back-office com ele. Desenvolvimento inicial foi bem, mas que acabou por ser um desastre completo depois de bugs por causa de o ORM não ser fixo, upgrades quebraram a compatibilidade com versões anteriores e tivemos muito trabalho para manter a aplicação. O problema com algo parecido com isto é que é preciso ter tempo para mostrar como se comporta algo a longo prazo e o mundo não pára enquanto você está fazendo isso. No ponto em que você decide fazer alguma coisa, o projeto muda e outros componentes dependem do que você está fazendo agora. Isto é especialmente verdade se você quiser experimentar uma nova ferramenta de infra-estrutura.
Para resolver este problema, Whelan sugeriu a criação de campos de “prática” – têm uma base de código que está definido para jogar. Este poderia ser um projeto de estimação que a equipe está trabalhando em quanto está de folga, onde se pode experimentar e aprender novas ferramentas separadas do projeto de produção real. Para que isso funcione, pelo menos no meu caso, o projeto deve ser algo solto (sem dependências), para que você realmente sentir o alívio ou dor que o novo quadro ou a ferramenta trás depois de alguns meses. Se ele azeda, é um projeto de teste assim que você pode se dar ao luxo de tornar instável por um tempo. A manutenção de um projeto de teste trás trabalho suplementar e custo, mas isso deve ser orçado em R&D, que ajuda as equipes a aprender e não aumenta o risco da produção.
Aprendendo o Mapa Cultural
Whelan centrou sua apresentação em torno da Cultura de Aprendizagem do Mapa, de forma eficaz as coisas fundamentais que as organizações têm que fazer a fim de promover a aprendizagem. As áreas em que o mapa são intencionais, Infra-estrutura, evolução e de segurança individual.
Aprendizagem tem de ser intencional. “Não espere que a aprendizagem só acontecerá”, disse Whelan, “Nós precisamos começar a aprender”. Equipes e as organizações podem utilizar retrospectivas, trazendo a tona para pesquisar (enviar pessoas a conferências, leitura de blogs, listas de discussão, …) e promover a aprendizagem. Eles também devem promover uma cultura de que fazer perguntas é OK e exercitar o cérebro R (um conceito tirado de Refactor Andy Hunt seu livro Wetware)
Whelan aconselhou a criação de um espaço de trabalho que promove a aprendizagem radiadores (informação, listas de e-mail …) e a criação de sessões especiais de aprendizagem (grupos de estudo, road trips, …). Como um dos truques que a aprendizagem proporciona, Whelan sugeriu “fazer comida” (extraído do livro de Linda Rising Fearless Change). Outra idéia é integrar ferramentas para aprender e trabalhar com programação em pares, sessões de planejamento, stand-ups e demos.
Como uma atividade constante, a aprendizagem deve ser incremental.
Finalmente, Whelan disse que a segurança individual é fundamental para o aprendizado. Neste contexto, a segurança individual significa que as pessoas têm de se sentir seguras para expor o seu modelo mental para o mundo e fazer perguntas. Parte da segurança é dar às pessoas a chance de optar por sair de qualquer atividade que não se sentem seguras ou não querem participar, sem consequências.
via: http://gojko.net/2009/10/15/how-to-promote-learning-in-software-teams/