Planning Poker e Ideal Day: Técnicas de Abordagem de Estimativa Ágil

image001

Um projeto de software consiste de atividades realizadas por uma equipe de trabalho que atua em busca de um objetivo comum. Dentro desse processo, pode-se considerar que a atividade de estimar o esforço necessário para o desenvolvimento de um projeto é um elemento fundamental para o sucesso.

Dados mensuráveis relevantes desses fatores são oriundos da utilização de técnicas de estimativas sobre a métrica do tamanho de um projeto, e que podem ser as mais diversas variando desde analogias entre projetos e baseadas na experiência do desenvolvedor, até abordagens mais metódicas utilizando modelos matemáticos.

Continue reading

Kanban Scrum: Características de uma boa métrica em desenvolvimento de software

iamge1
Os métodos ágeis de desenvolvimento de software promovem um processo empírico, esta forma de se desenvolver exige um ciclo de constante inspeção, adaptação e melhoria. Encontrar maneiras eficazes de se avaliar o processo e uma equipe não é uma tarefa trivial, e muitas vezes leva a uma crença que se cada parte do processo for otimizada, o resultado também será. O que nem sempre é uma verdade.

A preocupação com medidas erradas pode gerar incentivos errados, levando a consequências indesejáveis. GILGUN (1992) diz que as pessoas se comportam de acordo com a forma com que estão sendo medidas: “Diga-me como serei avaliado e eu lhe direi como me comportarei”.

Continue reading

Scrum e Planning Poker: Análise de estimativa de software

image001 (1)

A atividade de determinar o esforço para o desenvolvimento de um projeto é um elemento fundamental para obter um bom resultado. O esforço abrange diversos fatores como o cronograma, o custo e os recursos humanos do projeto, desta forma, estimar e planejar estão correlacionados e são atividades críticas em todas as abordagens de desenvolvimento de software.

O Scrum, como uma destas abordagens, é um framework que Schwaber (2013) afirma empregar outros processos e técnicas de acordo com a necessidade de uma equipe. Dentre os processos e técnicas que se pode empregar no framework, Boeg (2012) destaca o Kanban, que tem se tornado um complemento dos métodos ágeis como o Scrum e XP. Destacando também, uma técnica de estimativa de tamanho voltada as metodologias ágeis de desenvolvimento de software, denominada de Planning Poker. Que conforme Grenning (2002) e Cohn (2013), é uma técnica utilizada para determinar o tamanho de um software permitindo a interação entre membros de uma equipe.

Continue reading

A importância dos testes não funcionais.

Qualidade_Software1

Muitas vezes nos preocupamos tanto com os Testes Funcionais (principalmente quem faz uso de metodologias ágeis) que não reservamos tempo para testes não funcionais como testes de segurança, de desempenho, de usabilidade entre outros.

Foi exatamente isto que muitas pessoas pensaram quando viram o ‘escândalo’ causado por Marco Agner através das suas descobertas de falhas no site ingressos.com.

Em seu blog ele publicou em 03 de maio de 2014, falhas de segurança no site do serviço prestado pela empresa Ingressos.com caracterizando como falhas críticas por dois motivos:

  • Expõem informações de clientes;
  • Coloca em risco o principal serviço oferecido;

Continue reading

O que é Planning Onion?

Planning-Onion-en-2

Muitos gerentes de projetos ainda se perguntam o que irá mudar quando começarem a utilizar o framework Scrum ou o framework Kanban ou Scrum com Kanban, ‘como assim não haverá documentação?’ ou ‘Qual é o tempo ideal para planejar um projeto de software?‘.

Estas são algumas das perguntas mais frequentes quando cogita-se em fazer alguma migração de metodologia de desenvolvimento. Mas como já diziam alguns dos professores que tive:

– Tá difícil, complicado? Método Jack resolve, é só dividir em partes! (Neste caso, em anéis!)

Planning Onion

 

Segundo Fábio Cruz (2014), o Planning Onion ou PO é um termo inglês que teve origem a partir da cebola como base em seus anéis, ou camadas. Representando os diferentes níveis de planejamento que deve-se realizar em projetos de software.

Continue reading