sauloarruda.eti.br

…revirando até chegar do outro lado…

August 1st, 2010

Tenho dito como um mantra para todos que “documentação boa, roda”. Digo isso pois vejo várias equipes gastando horas escrevendo casos de uso intermináveis que por muitas vezes não refletem as mudanças de requisitos muito comuns em projetos de software.

Isto significa que: a maioria dos casos de uso que vejo, estão desatualizados e/ou incompletos. Há algum tempo tenho usado e feito vários testes com Cucumber, que é uma ferramenta desenvolvida em Rails para automatização de testes de aceitação. O interessante do Cucumber é que é possível testar aplicações web usando Selenium, Webrat (Rails) ou Webdriver.

Porém recentemente um cliente comentou que gostaria de fazer um treinamento sobre como fazer planos de testes. Ele tem aplicações desktop desenvolvidas em Java Swing. Na mesma hora sugeri a idéia de implementação de testes automatizados e apresentei a proposta do Cucumber, mas expliquei que não tinha visto nenhuma integração de Cucumber com Java Swing.

Foi aí que encontrei o Swinger de um cara chamado Demetrius Nunes. Ele implementou os steps do Cucumber usando uma API em Java para automatizar testes de aplicações Swing, o Jemmy. Com isso, fiz o download do exemplo que ele disponibiliza no blog e realmente o negócio funciona. O vídeo abaixo prova isso:

Para testar, usei uma implementação simples de calculadora em Java e fiz um cenário de testes para subtrair dois números. Coloquei o código no github, se alguém precisar de alguma ajuda para executar o projeto, deixe um comentário abaixo.

August 1st, 2010

Recentemente terminei um trabalho em um cliente* onde ministrei um treinamento sobre gerenciamento ágil de projetos e agora estou fazendo um trabalho de coaching ajudando-os na utilização das técnicas nos projetos. Eles têm uma equipe de cerca de 10 pessoas entre analistas de negócio, DBAs e desenvolvedores. Trabalham também um uma fábrica de software que atende a maioria das solicitações de desenvolvimento.

Inicialmente, para melhorar a visibilidade do processo e conseguir gerar e coletar alguns indicadores, montamos um Kanban contemplando todos os projetos e analistas de negócio responsáveis e organizando as atividades pendentes com os desenvolvedores.

A partir desse trabalho, participo semanalmente da retrospectiva da equipe onde avaliamos os pontos positivos e implementamos novas melhorias. Vou fazer esse trabalho com eles por mais umas cinco semanas com o objetivo de identificar os pontos que precisam ser melhorados em uma nova fase da consultoria.

Disponibilizei todo o material usado no treinamento no meu slideshare organizado por aulas:

  1. Abordagens Ágeis (Parte 1)
  2. Abordagens Ágeis (Parte 2)
  3. Casos de Uso
  4. Histórias do Usuário
  5. Planejamento do Projeto
  6. SCRUM e Kanban

* Infelizmente ainda não posso mencionar o nome do cliente, mas em breve pretendo escrever mais sobre o trabalho.

July 16th, 2010

Dos dias 21 a 25 de junho estive em Porto Alegre para participar da Conferência Brasileira sobre Métodos Ágeis, o popular AgileBrazil 2010. Fui acompanhado dos meus sócios da JeraJefferson Moreira e Adriano Bacha e ficamos no Hostel Casa Azul próximo ao parque da farroupilha no coração de POA.

Galera no Hostel Casa Azul

Galera no Hostel Casa Azul

Curso: Coaching Agility

O Jefferson e Adriano fizeram o curso de XP na terça-feira. Eu fiz na quarta-feira o curso de Coaching Agility com o David “The Dude” Hussman da DevJam. A turma era de altíssimo nível e a maioria dos presentes trabalharam de alguma forma com coaching o que rendeu excelentes discussões durante as dinâmicas. Ele começou falando sobre a essência da atividade de coaching, desafios, apresentou técnicas para diagnóstico da situação atual da empresa e explicou como argumentar sobre a adoção de técnicas ágeis como refactoring ou pair programming. Pra mim foi bastante proveitoso e por um preço de banana (o curso custou R$ 250,00).

Primeiro Dia

Comecei participando do Keynote do Martin Fowler. Ele falou sobre o artigo “The New Methodology“, também sobre Integração Contínua e por final falou sobre Débito Técnico. Nenhuma novidade daquilo que ele já vem escrevendo no Bliki e nos artigos. Como era de se esperar, Fowler é extremamente didático e metódico, e diria até um tanto que estranho como ser humano. Quem estava lá e deu uma reparada sabe do que estou falando. De qualquer forma, como ele não curte que as pessoas tirem fotos com ele, incluimos ele em uma foto nossa! :P

Saulo, Adriano e Jeffmor (fowler ao fundo)

Saulo, Adriano e Jeffmor (fowler ao fundo com sono)

Depois do keynote participei do workshop com Philippe Kruchten sobre Planejamento de Release. Ele criou um Jogo que simula a situação de uma equipe de astronautas fica preso na lua e precisa tomar algumas decisões sobre o que fazer: Consertar a nave ou se organizar para sobreviver até o resgate chegar. No jogo, ele explora de maneira bem inteligente as métricas relacionadas à velocidade, além da questão de débito técnico. Semana passada fiz uma adaptação da dinâmica e apliquei em uma consultoria que estou dando e também na Agence. Vou escrever nos próximos dias sobre isso mostrando os resultados! Enfim, esse workshop foi pra mim o ponto mais alto do evento.

Após isso, assisti a palestra do José Papo com o tema “It’s the Economy! Agilidade, indicadores financeiros e criação de valor“. Apesar do tema ser muito interessante, o tempo de 40 minutos não foi suficiente para apresentar de forma abrangente o tema, ficando limitado no básico. Sinceramente, lendo o artigo aprendi muito mais que a palestra… Faz parte. Depois acabei ficando nos bastidores trocando idéia com o pessoal da BlueSoft, David Hussman e Phillippe Kruchten que estavam por lá!

Mais tarde, durante a palestra dos patrocinadores participei do open space com o Klaus Wuestefeld que mostrou a solução de computação soberana na qual ele está trabalhando, o Sneer. Eu particularmente havia ouvindo somente alguns “palpites” sobre computação soberana mas depois de conversar com o Klaus e ver o Sneer funcionando tive uma noção muito mais clara sobre como isso funciona. Na minha opinião a idéia é muito boa, mas infelizmente os grandes “players” não devem gostar muito da proposta de independência do usuário na rede.

Já bastante cansado no fim da tarde assisti parte da palestra do Greg Warren e Carlos Lopes, ambos da ThoughtWorks que estavam falando sobre XP no mundo real. Bastante interessante, mas infelizmente não consegui ficar até o fim…

Segundo Dia

O dia começou com o Keynote do Philippe Kruchten falando sobre Agilidade em contexto. Bastante interessante o tema pois trata do velho dilema de “ser ou não ser ágil”. Tem gente que quer uma métrica (algo do tipo CMMi nível 2, 3 ou 5) para agilidade. Tipo, a empresa A é MAIS ÁGIL que a empresa B. Bullshit! Depois tivemos o decepcionante jogo do Brasil X Portugal. A transmissão estava em excelente qualidade nos telões do evento.

Após o almoço marcamos de apresentar um Open Space sobre o programa de imersão ágil que implementamos na Agence nos últimos 6 meses, que foi a palestra que submetemos e não fomos aprovados para o evento. Infelizmente não tivemos público :( , mas de qualquer forma ainda pretendo escrever um pouco mais detalhadamente sobre o assunto.

Conteúdo do nosso Open Space

Depois disso participei do Open Space com o Philippe Kruchten sobre Débito Técnico. O bate-papo foi muito produtivo gerando vários exemplos e casos reais bastante interessantes. Esse Open Space durou bastante sempre renovando o pessoal que participava o que enriqueceu ainda mais a discussão!

Open Space com Philippe Kruchten

Por fim tivemos o Keynote do Klaus Wuestefeld com o tema Beyond XP, um título bastante polêmico visto que o que pode estar além do Extremo!? Brincadeiras de lado, foi uma excelente palestra que está resumida de forma bastante objetiva no blog do Klaus. Na verdade ele fechou o evento com chave de ouro explicando que Agilidade não é seguir XP ou SCRUM ou qualquer outro método com um nome bacana. Agilidade é uma nova maneira de pensar, de agir e de fazer software de qualidade.

Na minha opinião, este foi o melhor evento que tive oportunidade de participar! É um evento que converge todas as tecnologias, linguagens, tipos de empresa e pessoas de uma forma muito democrática, sem nenhum tipo de fanatismo ou verdade absoluta. Para aqueles que perderam, tem bastante material na web sobre o assunto, inclusive um diretório de reviews compilado pelo pessoal da SEA.

Porto Alegre!

Sinceramente gostei muito de Porto Alegre! No Hostel que ficamos tinha várias pessoas de outros países com quem pude trocar várias experiências e “desenferrujar” meu inglês! Além disso demos um rolê pela cidade conhecendo Pubs, Churrascarias (CTG!) e Bares! Gostei muito da estadia e recomendo fortemente a cidade, mesmo com um frio de 10ºC quase todos os dias!

May 9th, 2010

Com uma pergunta dessas eu com certeza estou causando confusões nas mentes das pessoas que não entendem exatamente o que estou dizendo. Vou dar alguns exemplos de coisas que tenho visto ultimamente para que as conclusões possam fazer algum sentido…

Primeiro, o contexto: as experiências têm se passado no dia-a-dia do trabalho de imersão Ágil que temos feito na Agence. Segundo, não vou citar nomes de clientes ou coisas do tipo e tentarei ser o mais claro possível sem ofender ninguém. Terceiro, se alguém se ofender, sinta-se à vontade para expressar seus argumentos nos comentários, pessoalmente ou de qualquer outra forma. O que vou colocar aqui é apenas meu ponto de vista atual sobre desenvolvimento (ágil) de software.

Tenho visto uma tendência de empresas que tem mostrado um trabalho legal, de não atenderem grandes corporações multinacionais para dar preferências à startups. Com isso, refleti um pouco sobre como isso acontece no meu dia-a-dia, visto que tenho a oportunidade de atender tanto clientes abrindo um novo pequeno negócio ou dando uma “guinada” no seu pequeno negócio atual, quanto grandes corporações multinacionais ou governo.

Percebi algo interessante. Se falando de desenvolvimento ágil, mais especificamente SCRUM, temos a figura do Product Owner (PO). Esse é um papel bastante difícil de se assumir, visto que este cara visa o ROI como principal fator de sucesso de um projeto de software, pelo menos na cartilha. Fazendo um paralelo para o mundo real, nem com os cliente mais “engajados” que atendemos, tenho nutrido esperanças de ter um legítimo PO.

Vou mostrar o que geralmente acontece em dois cenários distintos: projetos para grandes empresas e para pequenas empresas.

Grandes empresas

Quando temos nosso “gerente de projeto” dentro das grandes empresas, esse cara geralmente tem uma formação em TI e pós-graduação/mestrado/MBA/cursos de extensão na área de Gerenciamento de Projetos. OK, ele entende um pouco de software e também um pouco de PMI. Infelizmente, ele não PAGA pelo projeto, mesmo havendo cobrança de seus clientes internos, o dinheiro não sai do bolso dele. Esse é o que considero nosso pior cenário de trabalho pois, a mentalidade cascata (ou cascateiro) é predominante (com raras exceções). Argumentos por parte do cliente:

  • Nossos analistas do departamento de TI vão levantar os requisitos para o projeto e abrir uma RFPRFQ ou outro nome novo para isso.
  • Temos um orçamento pré-definido para esse projeto.
  • A área (leia-se, quem solicitou o projeto/cliente interno) não tem disponibilidade de “homologar” o projeto em partes. E, como é de praxe, nós que estamos desenvolvendo o projeto não costumamos ter contato com “a área“.
  • Não faz o menor sentido o projeto “ir para o ar” antes de ser terminado.
  • Há um contrato a ser cumprido, que muitas vezes prevê multas para atrasos.

Como era de se esperar, não é um espanto haverem divergências de requisitos (e várias reuniões para discutir o assunto) no final do projeto. Mesmo tentando trabalhar de forma iterativa, isto é, apresentando o sistema em partes para esse gerente de projeto, no final, quem de fato vai usar o sistema, acaba por não participar dessas “entregas” parciais e acaba “mudando” de idéia quando vê o projeto terminado, meses depois que ele foi “concebido”. As palavras entre aspas nessa frase tem um significado muito relevante:

  • Concebido: O custo/prazo/escopo do projeto tem que ser fixo. Logo, antes de assinar um contrato, temos que entender muito bem o que vai ser feito, geralmente apresentando protótipos que são “assinados à sangue” pelo gerente de projeto e pelo pessoal que solicitou o projeto.
  • Mudando: naturalmente, você já entendeu que as reuniões no fim do projeto são para negociar mudanças que, é óbvio que acontecem.
  • Entregas: como são feitas para o gerente de projeto e obedecendo a especificação inicial (ou as datas de pagamento do contrato), é uma mera prova de que o cronograma está sendo cumprido.

Resultado final: na maioria das vezes o projeto sai mais caro e demora mais que o previsto. Lembre-se que o escopo mudou e até hoje não vi nenhum projeto que não tenha mudado. A não ser que seja algo muito pequeno (entenda-se, projetos com menos de 300 horas ou 2 profissionais durante 1 mês).

Pequenas empresas

Pequenas empresas por outro lado não tem árvore de dinheiro e por isso tem que otimizar ao máximo cada centavo “gasto” em software. Por isso, não é nenhuma novidade que consigamos fechar projetos de escopo aberto com duração e custo fixo. Neste caso, conseguimos à cada apresentação para o cliente, ter um feedback exato se estamos mesmo indo no caminho certo. E, acreditem, na maioria das vezes o projeto vai para o ar antes daquele prazo inicial previsto terminar.

Aqui, de fato, conseguimos aplicar a cartilha de desenvolvimento iterativo de forma eficiente. Conseguimos fazer menos software, reduzir o time-to-market, gerar valor para o cliente e cultivar um relacionamento muito bom com os clientes.

Para concluir, segue um paralelo sobre custos e prazos (esta informação é empírica e baseada apenas na minha observação dos projetos no último ano):

Perfil dos projetos analisados: o prazo geralmente é de 3 a 4 meses para um volume de cerca de 1.500 horas. Nesses projetos trabalhamos com equipes de 3 a 6 pessoas envolvendo uma pessoa que faz o atendimento ao cliente, dois desenvolvedores plenos, um ou dois desenvolvedores júniors e um designer.

Grande empresa Pequena Empresa
Tempo para primeira versão ir para o ar 6 meses 2 meses
Esforço para desenvolvimento da primeira versão 1500 horas (ou mais) 800 horas
Lucratividade para a consultoria (isto é, nós) Alto risco, já houveram casos de prejuízos Baixo risco, vários casos de sucesso
Fechamento de um contrato de “manutenção evolutiva” Nem sempre Quase sempre

Para finalizar… Nem sempre é fácil usar princípios básicos que norteiam desenvolvimento ágil como neste caso, desenvolver de forma iterativa. Muitas vezes os projetos já começam no modelo cascata e, como somos consultorias que prestam serviço para esses clientes, não temos muito o que fazer para alterar o cenário. Neste caso, posso afirmar que seu cliente não é Ágil!

Obrigado para quem leu até aqui!! Fico à disposição para trocar idéias sobre o assunto. []‘s e boa semana!

May 3rd, 2010


Como já comentei aqui, escrevi uma proposta para o AgileBrazil 2010 com o tema: “Em 6 meses de imersão ágil o que mudou?”. Hoje saiu definitivamente o resultado e ficamos de fora. Realmente a concorrência foi muito grande, de 150 propostas apenas 35 foram aceitas e naturalmente estava “concorrendo” com os principais nomes da comunidade Agile nacional e até internacional.

É uma pena, mas mesmo assim pretendo ministrar a palestra em algum evento regional mesmo. Estamos preparando bastante material entre fotos, relatos (devidamente registrados no blog), retrospectivas e centenas de boas e más experiências. Realmente um programa de imersão ágil tem grande valor!

Sobre o AgileBrazil, vou reforçar minha determinação a participar do evento sabendo que teremos ótimas palestras e cursos. Pretendo inclusive participar do curso de Agile Coaching ministrado por  David Hussman. Com certeza será um grande evento!

April 7th, 2010

Hoje recebi uma newsletter da Teamware que divulga um programa que achei bastante interessante. Chama-se Brasil Mais Ágil e prevê a realização de treinamentos gratuitos sobre tecnologias relacionadas ao mundo ágil. Já me inscrevi para participar e colaborar, e você?

March 26th, 2010

Muito se fala sobre trabalho em equipe, equipe unida, uma equipe é melhor que um grupo, e outras buzzwords do tipo. Mas todos sabemos que nada substitui o valor de um time! E todo garoto desde cedo aprende que saber jogar video game é uma obrigação para todo candidato a nerd (no bom sentido da palavra)!

A imagem ao lado mostra claramente a motivação de dois times duelando entre si em um Barcelona Vs Real Madrid com o placar de 1 x 1. Detalhe: são 13:30 da tarde e eles estão em seu ambiente de trabalho.

Eu já havia me esquecido da última vez que algo assim tinha acontecido na empresa. Resgatei alguns arquivos e nos lembramos que isso foi há 2 anos atrás, em uma época que tínhamos uma equipe muito unida e rolava Diablo, Conter Strike ou um joguinho de corrida que era muito divertido, tanto no horário de almoço, quanto algumas vezes depois do expediente!

Todos participavam da jogatina e uma vez por semana (pelo menos) rolava um happy hour no posto ao lado da empresa, geralmente com a presença de quase todos! Nessa época também tínhamos capeonatos de Kart, Boliche, Sinuca e outras atividades para atletas de computadores. Me lembro até hoje da satisfação que tive quando toda a equipe se reuniu em uma sexta-feira para almoçar junto no dia do meu aniversário! Foi demais!

Detalhe importante: Nessa época não tínhamos reclamações da equipe, a rotatividade era baixa e com certeza a produtividade era maior. Com o tempo, algumas pessoas foram saindo, não rolou mais o Kart, Boliche, joguinhos na hora do almoço. E um detalhe importante, a produtividade geral caiu drasticamente e nunca mais tivemos um ambiente bacana como esse.

Aí muitos se perguntam: Qual o segredo do sucesso de uma equipe? Na minha opinião é: A equipe tem sucesso a partir do momento que age como Time! E formar um time não é nada fácil. Primeiramente, um time não é formado de estrelas (leia-se arquitetos de software super poderosos). Não adianta contratar os melhores e mais caros profissionais achando que você terá um time (a seleção brasileira de futebol está aí para provar isso).

Um time só é formado quando as pessoas se gostam, se ajudam, se admiram, se desafiam e principalmente, quando se divertem juntas. Eu ando falando há algum tempo sobre o projeto de Imersão Ágil que estamos implantando na empresa, dos resultados positivos que temos conquistado. O interessante é que o manifesto ágil não “prega” que devemos jogar vídeo game no horário de almoço, fazer happy hour uma vez por semana, promover campeonatos de atividades “esportivas” com frequência, ministrar treinamentos uma vez por semana, estimular as pessoas a se divertirem juntas!

Na minha opinião esse é o fator que gera mais resultado do que qualquer método (ágil ou não) que se possa inventar. O poder da química entre as pessoas não é uma coisa que se aprende. Ela acontece naturalmente, e você gerente/diretor/coaching/consultor/instrutor/professor/CEO pouco pode fazer para que isso aconteça senão fazer parte!

March 22nd, 2010

Muito tem se falado sobre desenvolvimento ágil como uma forma de aproximar mais a equipe de desenvolvimento do seu cliente/usuário. O objetivo é sempre um feedback mais rápido obtido por meio de entregas mais rápidas.

Porém, muitas pessoas do mercado (leia-se: donos de empresa) não entendem muito bem o que é um feedback do cliente. Não procurei nenhuma pesquisa sobre o assunto, mas tenho certeza que sempre haverá clientes regularmente satisfeitos, ou insatisfeitos mesmo, com seu produto. Destes, uma parcela mínima se dará ao trabalho de te passar esse feedback.

Pense no seu dia-a-dia usando vários softwares em seu computador. Eu tenho certeza que a maioria das pessoas tem pequenas sugestões que poderão fazer uma diferença enorme no quesito produtividade, satisfação ou (melhor ainda) admiração pelo seu produto.

Estou escrevendo isso após analisar um episódio que aconteceu comigo recentemente que gostaria de transcrever aqui para exemplificar o que estou falando:

Há pouco mais de três meses tenho usado um software on-line que me deixou bastante satisfeito, visto que já havia tentado várias soluções similares, mas não havia encontrado algo que me atendesse. Animado com o produto, e após alguns meses de uso, percebi que poderia colaborar com algumas pequenas sugestões que facilitariam muito meu uso e até mesmo algumas delas seria eliminar algumas coisas que na minha opinião não estavam me ajudando.

Resolvi mandar um e-mail para o pessoal de suporte me oferecendo para colaborar com sugestões e até mesmo atuar como beta-tester de novas versões. Segue a mensagem:

Olá!
Venho usando o software de vocês* há 2 meses e estou gostando muito do sistema. Também sou desenvolvedor de software e gostaria de fazer uma proposta para vocês: Como estou usando o sistema, tenho percebido várias melhorias que facilitariam bastante minha vida, e me ofereço para trabalhar com vocês como beta tester e sugerindo melhorias. Naturalmente, peço em troca a isenção da mensalidade**, o que acredito não ser um grande problema para vocês!
Aguardo contato!

Dois dias depois recebi a seguinte resposta:

Olá Saulo,
Ficamos muito contentes que esteja gostando do sistema. Por enquanto não estamos precisando de beta testers pois já temos pessoas trabalhando nesta área e nossa lista de funcionalidades a serem implementadas já está definida para mais um mês de trabalho. Então sugestões neste momento não serão de grande valia pois estas funcionalidades tem prioridade por agora.
De qualquer forma agradeço a proposta.

Realmente, as pessoas (leia-se: donos de empresa) reclamam bastante quando perdem clientes, ou não cumprem suas metas, mas deixam ótimas oportunidades de relacionamento com clientes passar bem na sua frente. Tenho aprendido que as pessoas querem fazer parte do negócio, mesmo sem ganhar nada. Nós queremos indicar para todos os amigos aquele produto bacana que acabamos de descobrir.

Li hoje no blog do Paulo Vasconcellos, alguns trechos do livro REWORK da 37 signals (já pedi o meu!). Gostaria de citar um deles que fala exatamente sobre isso:

Todas empresas têm clientes. As sortudas têm fãs. Mas as mais felizardas têm uma audiência. E audiência pode ser sua arma secreta.

Ao invés de correr atrás de pessoas, você quer que as pessoas venham atrás de você. Uma audiência sempre retorna – por vontade própria – para saber o que você tem a dizer. E este é o mais receptivo grupo de clientes ou clientes potenciais que você vai ter.

Se eles gostarem do que você tem a dizer, muito provavelmente gostarão também do que você tem a vender.

Quando você constrói uma audiência, não tem que pagar pela atenção dela – ela a dá para você. E isso é uma baita vantagem.

Asterísticos…:

* Retirei o nome da empresa por motivos de confidencialidade, quero contar o milagre, mas sem citar o santo ;)
** A mensalidade custa R$ 12,00, resolvi “pedir” algo em troca como forma de valorizar meu trabalho e ter um maior comprometimento com minha proposta.

March 4th, 2010
Continuando os relatos sobre imersão Agil da Agence, essa semana estamos trabalhando em provas de conceito para desenvolver orientado a testes (TDD) em PHP. Como acontece com Ruby (Linguagem) + Rails (Framework), partimos para a premissa de utilizar um framework PHP, no caso, o que estamos mais usando por aqui que é o CakePHP.

Para nossa “sorte” o Cake já tem algumas facilidades para implementação de testes no estilo xUnit, usando o framework SimpleTest, que é uma mistura de JUnit com JWebUnit permitindo tanto a implementação de testes de unidade/integração como testes funcionais/aceitação simulando comportando do Browser.

O código-fonte produzido está disponível no GitHub, e em breve vamos escrever alguns artigos explicando melhor como foi a experiência. Mas, como sempre, feedbacks já são muito bem vindos!

Fica algumas boas referências de sites e blogs sobre o assunto:

  • KISS: blog muito movimentado sobre TDD em CakePHP, em PT-BR!
  • Debuggable: empresa especializada em desenvolvimento em CakePHP, acredito que alguns componentes de teste foram desenvolvidos por eles.
  • Mark Story: blog dedicado a CakePHP e assuntos relacionados.
  • Testes automatizados no CakePHP: excelente apresentação sobre TDD em CakePHP.
March 3rd, 2010

Dando continuidade aos relatos da imersão Ágil na Agence, nosso colega Fernando Cezar publicou no Geeks Anônimos um artigo explicando (e ilustrando) como estamos usando Kanban (e SCRUM??) em projetos 12 projetos de manutenção. Aproveite e deixe seus comentários sobre o tema, o feedback da comunidade é muito importante.