Grandes projetos de software são difíceis

Grandes projetos de software são frequentemente atrasados, excedem os seus orçamentos e, em alguns casos, falham completamente. Eles são difíceis de acertar. Se um projeto estiver dentro do prazo, dentro do orçamento, totalmente funcional e com qualidade satisfatória, ele será considerado bem-sucedido. Este tipo de sucesso raramente é alcançado. Um fluxo constante de novas técnicas e metodologias traz esperança de resolver velhos problemas. Mesmo assim, os problemas dos projetos de software não parecem desaparecer. A maioria dessas novas técnicas aumenta a mística em torno do desenvolvimento de software que, por sua vez, alimenta uma indústria não regulamentada de “treinadores ágeis”. Os executivos ficam muitas vezes frustrados porque, apesar de empregarem algumas destas novas técnicas, muitos dos seus projectos de TI ainda excedem o orçamento ou falham. Mostrarei que apenas quatro métricas são suficientes para resolver esse problema.

Métricas Ágeis Válidas

A previsibilidade do projeto pode ser melhorada? Os longos períodos de correção de bugs podem ser evitados? Pode haver uma maneira melhor? Isso pode ser alcançado sem mergulhar nos detalhes técnicos? SIM!

Mostrarei que usando essas quatro métricas você pode melhorar a base das decisões do projeto, aumentar a transparência do progresso do projeto e reduzir as taxas de fracasso do projeto. Essas métricas também podem ser facilmente compreendidas por líderes não técnicos. Passei 30 anos em TI, analisei centenas de projetos de software e aprendi muito com outros especialistas. Concluí que a maioria das organizações poderia ter mais sucesso usando apenas quatro métricas simples.

Em primeiro lugar, é importante utilizar válido Métricas. Existem muitas métricas inadequadas que são frequentemente promovidas, como contagem de linhas de código, pontos de história e tamanhos de camisetas, mas geralmente levam a decisões de gerenciamento inadequadas porque as métricas nas quais as decisões estão sendo baseadas não são confiáveis. Para ter sucesso, você precisará basear as decisões em métricas válidas, consistentes, universais e injogáveis; e quatro é tudo que você precisa.

Com apenas essas quatro métricas você pode controlar o escopo, os recursos, o cronograma e a qualidade. Usá-los também ajudará a reduzir alguns riscos comuns em projetos de software. Em breve você obterá a reputação de entregar projetos de software bem-sucedidos.

Essas quatro métricas contribuirão muito para ajudar os gerentes de TI a garantir que seus projetos sejam entregues com sucesso, independentemente das técnicas adotadas (ágil, ágil em escala, kanban, cascata). Para qualquer tipo de software (aplicativos de negócios, melhorias, manutenção, software de sistema, sistemas embarcados), focar apenas nestas quatro métricas realmente funciona:

1. Escopo

O tamanho não é tudo o que importa no software, mas é o fator mais significativo em projetos de software. Qual é realmente o tamanho do seu projeto? Você precisa de uma medida consistente antes de começar (para estimativa), durante o projeto (para controle) e depois (para benchmarking). Medir o tamanho é possível. Isso pode ser feito usando a medição padrão de engenharia (ISO) universalmente aplicável, válida, consistente e aberta para tamanho de software CÓSMICO pontos de função. Portanto, a primeira métrica é:

Métrica #1: Tamanho Funcional em Pontos de Função COSMIC (CFP)

2. Produtividade

Com que rapidez estamos criando o software? Terminaremos a tempo? Se soubermos o tamanho e monitorarmos o resultado entregue por mês (ou por sprint), podemos prever se estamos no caminho certo.

Métrica #2: CFP entregue por mês

3. Qualidade

Se houver muitos bugs, não poderemos lançar o software, por isso devemos monitorar a qualidade o tempo todo. Como verificamos a qualidade à medida que nos desenvolvemos?

Métrica #3: Defeitos (encontrados e criados) por CFP

4. Recursos

Quanto custará? De quantos técnicos serão necessários?

Métrica #4: Custo por CFP

Isso não é tudo para gerenciar software. Existem muitos outros factores importantes que influenciam estas métricas, tais como: condições de trabalho, ferramentas, apoio executivo, complexidade, confiança da equipa, colaboração e competência do pessoal. No entanto, ao focar apenas nessas quatro métricas, os líderes técnicos e não técnicos de qualquer organização podem aumentar a taxa de sucesso de seus projetos.

Na maioria dos casos, também é útil acompanhar algumas medidas relacionadas, tais como:

  • Mudança de escopo durante o projeto no CFP.
  • Potenciais de defeitos por CFP e testes por CFP.
  • Defeitos encontrados por hora de testes exclusivos
  • Defeitos corrigidos versus defeitos encontrados a cada mês/sprint.
  • ROI ajustado ao risco

Pontos de função COSMIC – O padrão moderno de engenharia de software para medição de software

No centro desta recomendação está a medição do tamanho em pontos de função COSMIC. Confira nossa introdução ao CFP. Contar CFPs é uma habilidade que pode ser aprendida em questão de dias. A documentação padrão é aberta, o download do manual é gratuito e está disponível em https://www.cosmic-sizing.org. Existe até um exame de certificação para garantir que você mede corretamente. Para aqueles que desejam abreviar e acelerar o processo, uma estimativa CFP pode ser gerada automaticamente a partir dos requisitos usando o ScopeMaster.

Se você quiser saber mais sobre como gerenciar projetos de software com mais sucesso e como usar essas métricas de forma eficaz, por favor entrar em contato.

Resumo

Aqui está uma recapitulação dessas quatro métricas principais para gerenciar projetos de software bem-sucedidos:

  1. Escopo: Tamanho Funcional em Pontos de Função COSMIC (CFP)
  2. Produtividade: CFP entregue por mês
  3. Qualidade: Defeitos (encontrados e criados) por CFP
  4. Recursos: Custo por CFP

Colin Hammond é consultor em garantia de projetos e criador do primeiro analisador de requisitos de software do mundo para estimativa e garantia automatizada de qualidade. https:///www.scopemaster.com

Métricas Ágeis Úteis Adicionais

Qualidade

  • Medidas de complexidade de código (McCabe)
  • Cobertura de teste unitário
  • Frequência de implantação
  • Taxa de correção de defeitos
  • Defeitos encontrados e corrigidos em cada etapa

Escopo

  • CFP afetado por requisitos não funcionais de desempenho
  • Mudança de escopo por mês (% do CFP total)

Métricas para líderes não técnicos

A maioria das métricas de software não é adequada para líderes não técnicos. Não se pode esperar que o diretor financeiro entenda a terminologia e as nuances da agilidade escalonada, das taxas de cobertura de testes baseados em riscos, dos níveis de complexidade do código, dos pontos da história, dos tamanhos das camisetas, etc. investimento que todos possam compreender. O que é necessário é um conjunto válido de medidas universais que informem de forma confiável os líderes não técnicos. Apresentarei apenas quatro métricas válidas que podem fornecer uma linguagem comum para os executivos usarem no contexto das decisões de investimento em software e que ajudarão a alcançar maior sucesso no projeto.