sexta-feira, 1 de outubro de 2010

Voltando ao batende... De novo... rs

Olá pessoal, aqui estou eu, novamente, mais uma vez, de novo (a redundancia é proposital)rsrs...

Pois bem, mais um mês se passou, com ele mais uma turbulência, mas agora estou conseguindo me reorganizar e certamente conseguirei voltar a postar mais aqui no blog.

Antes de mais nada, gostaria de atualizar vocês com o status de nossa experiência Agile.

Vamos lá, vocês já devem estar imaginando né, se teve turbulência então o processo de implantação de Agile ou melhor, implantação/evangelização(esse tema merece um post dedicado rs), parou.

Pois acertaram em parte. Como muita coisa aconteceu, problemas, novas demandas e mudanças estruturais na empresa, acabou ficando quase que impossível manter o processo de adoção do Agile.

Não cabe aqui entrarmos no mérito do detalhe do que ocorreu, vale ressaltar apenas que, de fato, durante uma mudança de conceito, metodologia, pensamento etc... uma turbulência é tudo o que não precisamos e foi exatamente o que aconteceu.

Por outro lado, apesar de ter estado no meio da turbulência, nunca tirei da cabeça a certeza de que Agile é o caminho. O que quero dizer com isso é que apesar de estar o tempo todo ocupado com a turbulência, em todos os momentos não tirei da cabela onde queriamos chegar e o que precisariamos fazer para isso, ou seja, todos aqueles erros que cometemos e que já postei aqui no blog, ainda estão aqui, dentro de mim e é deles que partirei para a retomada.

Já de imediato, para a próxima semana, teremos as seguintes medidas para marcar nossa retomada:
- Reafirmar os valores e principios do Agile
- Fazer uma retrospectiva de retomada
- Retomar as reuniões do Scrum
- Iniciar o treinamento da equipe(Falarei especificamente sobre o que será aborado em um outro post)

Para a próxima semana a meta é esta, também não adianta sonharmos em mudar tudo do dia para a noite pois já vimos que isso não dá certo.

É isso pessoal, fico feliz por estar de volta e espero que nossa experiência possa agregar algo a vocês que nos acompanham.


Grande abraço.
Ricardo Coelho.

quarta-feira, 11 de agosto de 2010

Voltando ao batente...

Olá pessoal... há mais de um mês que não posto nada. Pois é, o mês de Julho foi péssimo, me envolvi em um projeto externo, crítico para a empresa, agora as coisas estão estabilizando e estarei voltando a postar com mais frequencia.

Pois bem, o mês de junho foi muito bom com o inicio da adoção oficial de praticas ágeis e do Scrum, com o cumprimento de todas as metas.

È senhores, já o mês de Julho foi o caos e eu tenho que admitir para vocês que não foi fácil.

Houve falha de comunicação na equipe em um determinado momento, ocacionando na sobreposição de uma base de testes do desenvolvimento.

Os valores do Agile ainda não foram completamente absorvidos.

Implantar Agile, ou melhor PENSAR Agile, VIVER Agile, SER Agile não é tão simples quanto muitas vezes parece.

Eu posso resumir Julho em uma frase: Não fomos Àgeis. Nem na postura, nem no pensamento, tampouco no comportamento. E isso é péssimo, é realmente frustrante. Mas.....

..... A boa notícia é que como bom Brasileiro e bom Potencial Agilista eu não desisto, ou melhor nós não desistimos.

Na ultima segunda-feira, fizemos uma retrospectiva e levantamos muitos problemas, a grosso modo chegamos aos seguintes problemas e soluções:

1 - Problema: Indisponibilidade do P.O
Solução: O P.O deverá eleger um Sub P.O, alguém que na ausencia dele possa aprovar os sprints e priorizar o backlog.

2 - Problema: Nao realização das reuniões diárias
Solução: Colocamos no servidor, agendado para as 17:45 um script para enviar uma mensagem para a maquina de todos os desenvolvedores lembrando da Daily Meeting.

3 - Problema: Não absorção dos valores do Agile
Solução: Fixar na parede e próximo ao Kanban os valores e principios do Agile e toda vez que pegarmos um ao outro violando o principio deveremos apontar para o mesmo, indicando que estamos indo contra o que pregamos.

4 - Problema: Kanban não muito claro
Solução: Divisão do kanban em outros quadros, agora teremos dois quadros para o kanban, um quadro terá dois projetos novos e o outro terá as atividades do produto atual em manutenção, separando o que é correção de bugs e o que é customização. Além disso teremos um terceiro quadro onde iremos colocar o BurnDown de cada projeto.

Em resumo é isso pessoal. Tivemos até mais falhas do que as descritas àcima, mas sinceramente são 01:09 da manhã e meus neurônios já não estão fazendo muitas Sinapses, não to me recordando dos outros itens rsrsrs

É isso, Julho foi complicadíssimo mas não desistimos, nem desistiremos, seguimos firmes e fortes nessa batalha.

Em breve trarei mais novidades, como a nova organização do Kanban, novidades no planning poker, dentre outras.

Agora tudo o que mais preciso é durmir rsrs

Um grande abraço a todos e uma ótima noite.
Ricardo Coelho.

quarta-feira, 7 de julho de 2010

Planning Poker

Olá pessoal, faz um tempinho que não posto mas é porque as coisas estão muito corridas, estou preparando um treinamento para a equipe, para dar uma nivelada no conhecimento e para nos prepararmos para implantar algumas práticas do XP. Quando tiver mais detalhes do treinamento posto aqui, hoje vou falar sobre o planning poker que realizamos na última planning.


Tivemos que improvisar um baralho de papel para um membro da equipe rsrs mas estaremos providenciando um baralho mais decente para os próximos plannings. rsrs

O importante é a técnica e os benefícios da mesma. =)






Foi nosso primeiro planning poker, foi bem interessante pois podemos perceber os beneficios desta técnica. Em algumas tarefas as diferenças foram consideráveis, chegando a variar e 5 a 13 horas, em outras parecia que tinhamos combinado, o que segnifica que a equipe possui um certo alinhamento. O legal foi perceber que cada um tinha uma visão da tarefa, cada um enxergava problemas e facilidades e o fato de as cartas serem apresentadas juntas, reduziu a zero qualquer possibilidade de influência entre os membros da equipe. Com isso, a cada rodada do poker com uma divergência muito grande, haviam as explicações que serviam para esclarecer a tarefa, expor possiveis obstáculos e facilidades.

Diante disso, posso citar alguns benefícios imediatos que identifiquei na adoção do planning poker:
- Reduçao do fator "influência" na estimativa da equipe
- Melhor esclarecimento das tarefas
- Exposição de possiveis problemas para todos os membros da equipe
- Toda a equipe por dentro das tarefas(desmembradas a partir das estórias)


É isso aí pessoal, vou ficando por aqui.
Um grande abraço.

quinta-feira, 1 de julho de 2010

Primeira Review e Planning

Boa noite galera.

Hoje foi um dia corrido, foi dia de review e planning com o Product Owner.
Desta vez, corrigindo uma falha cometida por mim no planejamento do primeiro sprint, toda a equipe participou das reuniões junto ao P.O.

Aproveitamos o encontro para reforçar os principios do Agile e o papel do P.O, em resumo, explicitamos o seguinte:
- Product Owner
- Nortear o desenvolvimento através da definição e priorização do BackLog.(É a nossa bússola de negócio/valor)
- Validar o resultado da entrega do sprint.
- Estar disponivel para dúvidas sempre que necessário.
- Equipe
- Se comprometer com aquilo que pode cumprir.
- Se dedicar e se auto-organizar para entregar o que foi acordado.
- Buscar melhorar a sí mesma através das reuniões de retrospectiva.
- ScrumMaster
- Antes de mais nada é um membro da equipe e tem as mesmas responsabilidades da mesma.
- Remover impedimentos da equipe.
- Estimular e potencializar o rendimento da equipe

Após este breve reforço dos papéis e mais uma passada nos principios do Agile, que agora guiam o departamento de desenvolvimento, iniciamos a review.

Durante a review apresentamos o acordado para o primeiro sprint, durante a apresentação o P.O fez algumas ressalvas como por exemplo quanto a usabilidade e layout. Em relação a funcionalidades o mesmo ficou satisfeito com a entrega.
O interessante foi que já notamos um grande benefício da adoção de Agile. O Feedback precoce. Já discutimos mudanças na interface visando melhorar a usabilidade evitando que construissemos novas telas seguindo um padrão não tão produtivo para o usuário.

Após a review já geramos um insumo para o próximo sprint, que seriam os ajustes deste primeiro.

Seguimos da review para o planning, onde discutimos a sequencia dos recursos a serem desenvolvidos.

Após discutirmos os recursos desejados e priorizados pelo P.O, fizemos uma lista com o que seria entregue em duas semanas(Definimos que trabalharemos com o sprint de 10 dias pois o de 5 dias ficou muito apertado). Além disso, solicitamos ao mesmo uma definição de PRONTO para o próximo sprint, dessa forma corrigimos mais uma falha do primeiro sprint, quando isso não foi tão bem definido pelo P.O.
Explicamos que era fundamental essa definição para o próximo sprint pois essa definição iria nos guiar como meta e consequentemente determinar o sucesso ou fracasso do sprint.

Em suma a review e o planning foram isto, foi bem interessante pois sentimos que o P.O gostou e que o mesmo viu o desenvolvimento completamente aberto a mudanças, flexível e focado em gerar valor para o negócio. Sem contar que sentimos que estamos dando passos seguros rumo ao sucesso do projeto além de estarmos todos alinhados com o mesmo(P.O - Equipe - ScrumMaster).

A idéia é já colocar o software em produção em um cliente ao final do próximo sprint. Ou seja, ao final de cerca de um mês(Sprint 1 + Sprint 2), pretendemos ter um produto no ar, algo que jamais conseguimos com outras abordagens. As reuniões de hoje só me reforçaram o sentimento e certeza de que Agile é, atualmente, a melhor forma de se desenvolver projetos de software.

Agora fico por aqui pessoal, feliz e ansioso pelos próximos sprints e evoluções :)

Amanhã tem retrospectiva :) e em breve estarei de volta.

Um abraço.
Até mais.

terça-feira, 29 de junho de 2010

Smart retrospective

Na semana passada, realizamos uma reunião para ajustar alguns pontos que percebemos que não estavam muito bem definidos. Foi uma espécie de prévia da retrospectiva do sprint para ajustarmos algumas coisas que percebemos que estávamos falhando.

Apesar de ser a primeira e a equipe não saber muito bem o que levantar e o que discutir, foi interessante. Aos poucos o pessoal foi se soltando e percebendo que a idéia não é o foco individual, ou seja, falhas e melhorias individuais, mas sim coletivas.

Com isso, resumidamente, chegamos ao seguinte cenário:
- O que foi legal ? O que temos que continuar fazendo ?
- Conseguimos iniciar o sprint dentro do prazo. Apesar de ser um requisito básico para a maioria das equipes, para a nossa tem um valor especial, pois dividmos nosso tempo do sprint com manutenção e customização de um produto que já está em produção.
- O novo layout da sala facilitou a integração da equipe e fez com que a comunicação ficasse mais fluída.
- Pró-atividade, inclusive dos novos membros da equipe, na solução de problemas, na busca de tarefas etc...

- O que não foi legal ? O que devemos evitar e/ou mudar para os próximos sprints ?
- Falha no planejamento do sprint, onde apenas o ScrumMaster participou da reunião com o Product Owner e realizou a estimativa do primeiro sprint. No próximo sprint a equipe participará mais ativamente da reunião de planejamento e da estimativa.
- Sofremos com um número um pouco elevado de intervenções externas ao sprint, seja com problemas de infra ou suporte. Buscaremos medir estas intervenções para tratarmos como podemos reduzir as mesmas(Através treinamento, orientação, desenvolvimento de ferramentas, automatização etc...)
- Pecamos no planejamento da infra-estrutura para o sprint. Tivemos que, durante o sprint, finalizar a configuração de algumas máquinas com instalação de componentes e frameworks, quando deviamos ter feito isso antes para não correr o risco de afetar a evolução do sprint.
- O quadro Kanban está numa base instável(cadeira) rsrs. Parece bobeira mas isso acarretou num acidente durante a semana rsrsrs. Prenderemos o quadro na parede.
- Não estávamos seguindo religiosamente as reuniões diárias.
- Não haviamos discutido a definição de PRONTO.
- Os principios do Agile não foram completamente absovidos, cairam no esquecimento três dias após o treinamento. A equipe lembrava que era algo dinâmico, dividido em iterações curtas com entregas frequentes, mas não lembrava do manifesto e nem dos principios. Esta semana iremos prender o manifesto e os principios de forma que fiquem bem visiveis na sala para que não esqueçamos e possamos nos policiar melhor caso tomemos alguma decisão contrária a estes principios.

É isso aí pessoal, as coisas estão caminhando, seguimos nessa gratificante batalha, aos poucos vamos nos ajsutando, fazendo análises críticas, implementando boas práticas, evoluindo e crescendo. Sabemos que é pouco, estamos apenas engatinhando, mas acreditamos no que estamos fazendo e temos certeza que em breve colheremos (a equipe, a empresa e nossos clientes)os frutos que o desenvolvimento Ágil gera.

Um grande abraço a todos.

quinta-feira, 24 de junho de 2010

Domine os fundamentos e não as ferramentas

Nesta última quarta-feira, tive mais um dia no treinamento de Agile com o Vinicius Morgado. Na ocasião discutimos sobre Domain Driven Design, dentre vários pontos positivos do treinamento, posso destacar:
- Design incremental - Nosso primeiro modelo é necessariamente imperfeito e trata-se apenas de uma abordagem exploratória, sem necessidade de muito detalhamento, o detalhamento é realizado com o tempo a medida em que se explora e conhece o modelo. De forma incremental. ;)
- O código deve ser a representação exata do modelo. O programador deve olhar o código e ver o modelo, olhar o modelo e ver o código, como se fossem um único artefato.
- Em DDD, uma entidade é definida pela sua identidade e um VO é definido pelo seu valor
- É desejável que os VO's sejam imutáveis, ou seja, se precisar mudar o valor de um VO, elimine-o e crie um novo.

Durante o treinamento, fizemos um modelo de alto nivel baseado em um estudo de caso, desenvolvendo o pensamento de forma orientada ao dominio. A aula foi bem interessante com todos estes tópicos nos agregando bastante conhecimento e mais importante que isso, agregando valor. Porém eu gostaria de destacar e compartilhar com vocês, uma frase do Vinicius durante a aula.

"Olhe as mudanças pelo aspecto do fundamento, não pelas ferramentas."

Essa frase surgiu durante uma discussão a respeito das evoluções tecnológicas que nossa área sofre. É interessante olhar pela ótica do fundamento, pois como ele bem ressaltou, o fundamento não muda a cada ano ou a cada semestre, na verdade as ferramentas mudam bastante mas continuam girando em torno dos mesmos fundamentos ou pelo menos em fundamentos que sofrem poucas mutações.
Acho interessante termos consciência desta ótica pois as vezes temos a sensação de que quando acabamos de aprender XPTO, sai o XPTO 2.0.

Apesar de ja ter percebido isso há algum tempo, nunca tinha conseguido explicitar isso de forma tão clara como o Vinicius o fez nessa frase, portanto, fiquem com esta mensagem na cabeça. Procure enriquecer seu conhecimento no fundamento e não apenas na ferramenta. Procure por Orientação a Objetos, Design Patterns, Agile(Em sua essência), SOA etc... enfim... estude, pratique, se dedique, DOMINE!!! Os fundamentos, os conceitos e não apenas as ferramentas.

Um grande abraço a todos.

terça-feira, 22 de junho de 2010

Ajustando alguns pontos...

Olá pessoal, estou de volta.

Iniciei na última segunda-feira um treinamento na Infnet sobre métodos ágeis com o Vinicius Morgado, a primeira aula foi bem interessante e já me ajudou a perceber alguns descuidos nessa caminhada rumo ao "hall dos agilistas" rsrs

Com isso, faremos uma reunião amanhã aqui na empresa para repassarmos os principios do Agile e o manifesto, além disso vamos espalhar os mesmos pelo departamento para que estejam sempre visiveis a todos. Faremos ainda um alinhamento sobre algumas definições e também sobre as datas das reuniões. Na verdade será meio que uma retrospectiva dentro do próprio sprint, sei que o correto é no final mas como to vendo que estamos saindo do caminho Agile em questões básicas, considerei importante realizar estes ajustes dentro do próprio sprint.

Amanhã voltarei aqui para dizer como foi essa "smart retrospective" hehe.

Um grande abraço.

quarta-feira, 16 de junho de 2010

Olá pessoal, estamos finalizando todos os preparativos para iniciar nosso primeiro sprint de um novo projeto na próxima semana. Já realizamos um treinamento sobre os príncipios do Agile, disseminamos o conhecimento da metodologia entre a equipe.

Usaremos o Scrum e algumas técnicas do XP. Já fizemos a definição do Product Backlog, elegemos junto ao Product Owner o nosso primeri Sprint backlog e fizemos a reunião de plnejamento dio sprint. Agora estamos finalizando os últimos detalhes para o início do desenvolvimento. Abaixo temos algumas das modificações que fizemos no nosso ambiente.

O Kanban está montado... Fizemos algumas adaptações para nossas necessidades pois temos três tipos de tarefas a serem gerenciadas e executadas.

Ali no lado direito superior, temos uma folha com as metas da equipe.




Mudamos o layout da sala para facilitar mais a comunicação da equipe, agora estamos todos voltados para o kanban e sem divisórias, melhorando a comunicação entre os membros da equipe.






Aqui temos uma DailyMetting onde fizemos um "remake" da famosa reunião que deu origem ao manifesto ágil... rsrs
{{ O efeito foi idéia do Joany rsrs }}







É isso aí pessoal, seguimos aí nessa jornada de implementação de Agile em nosso ambiente, estamos apenas engantinhando porém estamos muito esperançosos e ansiosos por começar a colher os resultados dessa incrível metodologia que vem mudando a forma de se desenvolver projetos de softwares no mundo.

Um grande abraço, até a próxima.

terça-feira, 15 de junho de 2010

Olá mundo !!!

Olá mundo, estamos iniciando hoje, oficialmente, nossa experiência Ágil na Sinapse Informática. Criamos este blog para falar sobre nossas expectativas, problemas enfrentados, soluções encontradas e o que estamos passando nesta nossa nova fase.

Estamos muito empolgados com a oportunidade de aplicar os príncipios ágeis, no começo não será possível aplicar todos, mas trabalharemos com metas mensais e cobrança mútua para estarmos o quanto antes com estes todos estes príncipios aplicados.

O espírito Ágil e a cafeína necessária já temos rsrs, aos poucos vamos implantando as técnicas de cada metodologia que possa ser aplicada a nossa realidade.

Um grande abraço.