O tamanho do software é o determinante mais significativo de esforço e custo em um projeto de software. Quando você sabe o tamanho do projeto, você se verá tomando decisões melhores, baseadas em dados, o que, por sua vez, leva a maiores taxas de sucesso.
estimativa de software - automatizada
O dimensionamento consistente de software pode ajudar todos os aspectos do gerenciamento do portfólio de software
Estimativa de software—e especificamente Ágil estimativa de software— é considerada difícil e notoriamente pouco confiável, mas estimativas confiáveis são essenciais para decisões de investimento sólidas e planejamento eficaz.

Estimar o tamanho do software (e subsequentemente o custo e o cronograma) é importante para dar aos gerentes uma compreensão de quanto custará e quanto tempo levará. Gerentes e executivos enfrentam constantemente decisões difíceis sobre o trabalho de software. Em projetos maiores, orçamentos e cronogramas são frequentemente excedidos, o que leva a consideráveis desperdícios e ineficiências. Gerentes preciso saber o custo e a duração prováveis para desenvolver software para que possam planejar adequadamente. Espera-se que tomem decisões confiáveis sobre prioridade e alocação de pessoal e, ainda assim, muitas vezes o fazem sem estimativas confiáveis de software do tempo e esforço necessários.

A maioria dos profissionais de software acredita que é impossível estimar o trabalho de desenvolvimento de software, ou que ele consome muito tempo. Este não é necessariamente o caso.

Por que as estimativas dos desenvolvedores não são confiáveis?

Às vezes, os desenvolvedores resistem a oferecer estimativas de esforço, geralmente porque temem que suas estimativas possam ser maltratadas como compromissos. Eles resistem a muitas análises detalhadas de dimensionamento antecipadamente, caso os requisitos não sejam implementados. A estimativa de esforço em pontos de história (usando o planning poker) é uma prática comum em equipes ágeis. É bastante demorado e uma fonte de muita discussão desperdiçada. Apesar de sua popularidade, é uma abordagem falha. É inconsistente entre equipes e até mesmo dentro das equipes ao longo do tempo. É altamente jogável, o que significa que os membros da equipe podem manipular seus pontos para atender às suas intenções. O mérito dos pontos de história é que eles ajudam a comunicar dentro de a equipe sobre o quão difícil algo pode ser de fazer. No geral, não os recomendamos, pois são inconsistentes, manipulados, abusados, jogáveis e, para a maioria dos propósitos, sem sentido.

Além disso, os desenvolvedores quase sempre subestimam o tempo e o esforço realmente necessários para a entrega do software. É da natureza humana fazer isso. Eles consideram apenas fatores conhecidos, mas com o software, muitas vezes há incógnitas que causam atraso. Teses raramente são permitidas em estimativas técnicas por esse motivo.

Estimativas ruins levam a decisões comerciais ruins e são frequentemente citadas como uma das causas raiz de grandes falhas de projetos. Líderes de projeto precisam estimar projetos de software antes do investimento para que possam determinar o custo-benefício geral da iniciativa.

Com estimativas mais confiáveis e antecipadas do trabalho de software, melhores decisões podem ser tomadas e desastres de projeto evitados.

Então, como estimamos o trabalho do software de forma confiável?

Dezenas de fatores podem afetar o tempo e o esforço para desenvolver software (como complexidade, ambiente de trabalho, suporte executivo, experiência técnica, volatilidade de requisitos). O fator mais significativo na determinação do esforço ou custo é o tamanho, especificamente o tamanho funcional. Depois de saber o tamanho funcional, você pode rapidamente derivar estimativas válidas para outras dimensões, como:

Uma vez que você conhece o funcional tamanho, você pode derivar rapidamente estimativas válidas para outras dimensões, como:

  • pessoal
  • custos
  • tempo de desenvolvimento
  • testes necessários para alcançar a qualidade adequada
  • …e muito, muito mais

O que é tamanho funcional?

O tamanho funcional surge de Medição de Tamanho Funcional (FSM). É uma técnica padronizada madura e comprovada para dimensionamento de software, uma prática formal de engenharia aprovada por grupos de padrões ISO e agnóstica de tecnologia, codificação e metodologia de desenvolvimento. Como medida universal que se aplica a todos os tipos de software, é considerada da perspectiva do usuário. Acima de tudo, o tamanho funcional é objetivo, válido e consistente — em outras palavras, duas pessoas medindo o tamanho funcional devem chegar ao mesmo número todas as vezes. A unidade de medida é o ponto de função; para ser mais específico, é o ponto de função COSMIC (ou CFP), que pode ser estimado ou contado única e precisamente a partir de requisitos e especificações. O FSM existe há muitos anos e provou ser a medida mais confiável de tamanho de software, permitindo que você estime ou meça o tamanho antes, durante e depois do processo de codificação.

Posso aprender a estimar o tamanho do software rapidamente?

Sim, você pode aprender a dimensionar software (corretamente usando um padrão de dimensionamento funcional) em alguns dias ou menos. Você pode se tornar totalmente proficiente e certificado em apenas algumas semanas. Pode levar mais tempo para aprender como alavancar o valor da medição, mas para isso, há consultores experientes. O ScopeMaster faz o trabalho pesado aqui, então usar o ScopeMaster acelerará seu aprendizado e automatizará a estimativa padronizada!

O ScopeMaster é a primeira e única ferramenta para estimar de forma confiável o tamanho funcional direta e automaticamente a partir de um backlog de requisitos escritos. Mas não acredite apenas em nossa palavra; especialistas e acadêmicos ao redor do mundo concordam que o ScopeMaster é um ferramenta de dimensionamento automatizada inovadora.

Se você deseja começar a usar estimativas de software rápidas e eficazes, use o ScopeMaster para estimar os pontos de função COSMIC diretamente e instantaneamente a partir de seus requisitos ou histórias de usuários. Junto com o ScopeMaster, você pode trazer segurança ao seu trabalho de software com medição automatizada de tamanho funcional.

Para obter mais informações sobre medição de tamanho funcional COSMIC, visite https://www.cosmic-sizing.org.

O ScopeMaster pode automatizar a estimativa de tamanho de software em pontos de função COSMIC e pontos de função IFPUG (ambos padrões ISO) direta e instantaneamente a partir de seus requisitos ou backlog de história do usuário.

estimativa de software - automatizada

Estimativas de software automatizadas com ScopeMaster

O ScopeMaster foi concebido como uma ferramenta para automatizar o trabalho administrativo de medir o tamanho funcional do software a partir de requisitos. Nas palavras do nosso fundador, Colin Hammond, “A razão pela qual me propus a escrever uma ferramenta para fazer isso é porque, como gerente de projeto de software, descobri que tamanho funcional é o fator mais significativo que preciso para gerenciar um projeto com sucesso.”

O ScopeMaster interpreta a intenção funcional da história do usuário ou do requisito de software e, portanto, é capaz de automatizar o dimensionamento funcional, que pode então ser usado para posterior estimativa de desenvolvimento de software.

O ScopeMaster não só é muito mais rápido do que medir manualmente, como também custa substancialmente menos do que o dimensionamento manual. Contadores certificados são escassos, e o ScopeMaster tira muito do trabalho penoso de fazer o trabalho. O ScopeMaster “lê” os requisitos, interpreta a intenção funcional e então os dimensiona de acordo. Ele pode estimar o tamanho em cerca de três CFP por segundo. Você poderia dimensionar um conjunto de requisitos de 1.000 CFP (cerca de $1m de software terceirizado) em cerca de dois ou três minutos. Você pode então revisar os resultados para corrigir quaisquer erros de requisitos e verificar o tamanho funcional de cada requisito. Uma vez verificada pelo analista, a estimativa se torna uma medida exata, que pode então ser usada para terceirização de preço fixo de trabalho de desenvolvimento de software.

Dimensionamento funcional COSMIC

Ao longo dos anos, várias variações de métrica de tamanho funcional foram criadas. Apenas cinco obtiveram reconhecimento ISO (COSMIC, IFPUG, Mark II, NESMA e FiSMA). IFPUG, Mark II, NESMA e FiSMA são todos semelhantes, pois são derivados do conjunto de regras original criado por Allan Albrecht na IBM na década de 1980. A metodologia de tamanho funcional COSMIC evoluiu de metodologias anteriores, projetadas especificamente para lidar com suas deficiências. As principais vantagens que tornam Metodologia de dimensionamento COSMIC mais relevantes para o software moderno são:

  • É baseado em princípios de software, lidando elegantemente com camadas e arquiteturas de software interconectadas.
  • Estimativas e medições podem ser feitas antes que todos os requisitos sejam conhecidos, o que é altamente adequado ao desenvolvimento ágil.
  • Ele foi automatizado e, portanto, requer aprendizado insignificante.

Os pontos de história são predominantes em todos os projetos Agile; eles são uma medida proxy específica da equipe para esforço. Cada equipe tem um entendimento comum da magnitude de um ponto de história — normalmente na ordem de algumas horas de esforço — embora não haja regras rígidas. Os pontos de história não são uma moeda universal; eles não são um padrão e não podem ser usados de forma confiável para comparar equipes ou projetos. Os pontos de história são um indicador interno útil de esforço antecipado quando nenhum outro meio de estimativa está disponível. Os pontos de função, no entanto, são universais, padrão e altamente aplicáveis ao desenvolvimento Agile tanto quanto qualquer outra metodologia de desenvolvimento. Clique aqui para ler mais sobre os méritos de CFP vs Story Points.

Saber o tamanho é essencial para um planejamento confiável de projetos de software

Depois de saber o tamanho funcional em pontos de função COSMIC (CFP), você pode estabelecer rapidamente outras métricas que são diretamente relacionadas ao tamanho, como custo, esforço e cronograma. Depois que o tamanho em CFP for estabelecido, você pode usar valores de conversão do setor que mapeiam pontos de função para essas métricas. Em vez de usar conversões do setor, você pode usar seus próprios dados históricos do projeto para estabelecer seus próprios benchmarks de velocidade.

Estimativa ágil sem esforço

Em vez de queimar tempo discutindo pontos de história ou brincando com cartas de Fibonacci, achamos que a estimativa Agile é idealmente alcançada por meio de dimensionamento funcional com COSMIC FP. Isso significa que você pode estimar melhor:

  • Velocidade (média de CFPs entregues por semana)
  • Agendar (número de semanas necessárias para entrega)
  • Custo (custo total para projetar, desenvolver, testar e entregar)
  • Esforço (esforço necessário para projetar, desenvolver, testar e entregar)
  • Qualidade (potenciais de defeito para cada constituinte da entrega)

Com que rapidez você consegue obter estimativas?

Manualmente, um analista competente pode medir pontos de função a uma taxa de várias centenas de FPs por dia (o que se traduz em software que vale centenas de milhares de dólares), embora isso dependa da qualidade e clareza dos requisitos e especificações. A velocidade também depende da experiência e habilidade do analista. Com o ScopeMaster, você pode esperar atingir essas regras sobre quatro vezes mais rápido.

Estimativa automatizada em pontos de função COSMIC

Estimando enquanto você escreve histórias de usuário no Jira

Usando o Analisador de histórias ScopeMaster para Jira, você pode estimar o tamanho funcional das suas histórias sem nem mesmo sair do Jira. O texto da sua história de usuário é analisado pelo poderoso mecanismo de linguagem do ScopeMaster para detectar a intenção funcional e o tamanho funcional.

Estimar o tamanho do software a partir da perspectiva do usuário é possível com análise de requisitos de linguagem sofisticada

Benchmarking com ScopeMaster

Pegue alguns projetos passados e insira seus requisitos no ScopeMaster para obter o tamanho funcional. Dado que você já sabe o custo daquele projeto passado, agora você pode estimar o esforço e o cronograma do novo projeto.

O tamanho não é o único fator que determina os custos e o cronograma do software, mas é o mais significativo. A melhor medida de tamanho é o ponto de função COSMIC.

Para aqueles que consideram a automação prejudicial, sem importância ou simplesmente muito difícil, confira o excelente artigo de Steve McConnelle por que estimativa é uma habilidade importante e valiosa que os gerentes de projeto precisam.

Problemas com pontos da história

  • Inconsistente
  • jogável
  • Não linear

Os pontos de história são uma opinião baseada em equipe sobre a quantidade de esforço que pode ser necessário para construir software da perspectiva de um desenvolvedor. Os pontos de história são essencialmente um proxy para estimativas de esforço, por exemplo, um ponto de história pode ser o equivalente a um funcionário ideal trabalhando por um dia ideal. Eles são altamente subjetivos e dependem das opiniões da equipe. Além disso, eles variam de equipe para equipe, e até mesmo dentro da mesma equipe ao longo do tempo. Sua inconsistência e jogabilidade os tornam impraticáveis como uma métrica de engenharia confiável.

 

Leitura adicional