resgatando projetos com problemas usando pontos de função proceedings/isma11-2015/marcio...
TRANSCRIPT
Resgatando Projetos Com Problemas Usando Pontos de Função
Márcio Silveira, PMPHPE-ABS
Cristian Ferreira, CFPSSigma
Novembro/2015
Requisitos
Estimativas
Mudanças
Acompanhamento
Se está naufragando, por onde a água normalmenteentra ?
Requisitos (II)
Requisito de Alto-NÍvel Requisito Detalhado Durante o
Desenvolvimento
1. A aplicação deverá calcular
a comissão do vendedor
1.1 A comissão do vendedor
deverá ser calculada
através da aplicação do %
máximo de comissão do
seu job-code sobre o total
de vendas no mes em
curso
1.1 A comissão do vendedor
deverá ser calculada
através da aplicação do %
máximo de comissão do
seu job-code sobre o total
de vendas no mes em
curso. A comissão não
poderá ultrapassar o valor
máximo para categoria de
venda e caso isto aconteça
uma aprovação desta
comissão de ser obtida do
seu gerente superior
– Em que nível os requisitos encontram-se ?
Requisitos (III)
– Não há melhor ferramenta para formalizar um escopo do que Pontos de Função !
– Porque ?
Fronteira
Requisito Verbal/Escrito Tipo de Objeto Complexidade Tamanho
Redução da Complexidade + Redução da Subjetividade + Baseline para negociação
Requisitos (IV)
– Não há melhor ferramenta para identificar requisitos não funcionais do que Pontos de Função
– Porque uma boa contagem traz à tona :
• Múltiplos meios de entrada de dados
• Múltiplos meios de saída de dados
• Code data
• Algoritmos/processos complexos
• Dentro outros ...
Requisitos (V)
– Mas o projeto está afundando, não tenho tempo para contar !
Desculpa
!!!!!!!!!!!!!!!
• Se nada for feito, a tendência é piorar !
• É ilusão, em TI principalmente, que os problemas resolvem com o
tempo
• A velocidade de contagem depende do contador e da disponibilidade da
documentação e especialistas de negócio e por isso há uma variação
muito grande.
• Digamos que esta produtividade seja da ordem de 50 a 150 Pontos de
Função por hora.
• Um projeto de 2.000 Pontos de Função (Grande) deveria levar entre 15
e 40 horas para ser contado.
• Será que não vale a pena gastar este esforço para saber o tamanho da
encrenca ?
Estimativas (II)
– Qual foi o tamanho do meu otimismo ?
Em seu livro “Controlling Software Projects”, meio da década de 80, Tom de Marco, discute estatisticamente que existe uma zona limite que o projeto pode habitar sem que corra o risco de atraso, excessivo volume de defeitos, overtime, etc. Acima deste limite, o projeto começa a entrar na “Zona do Impossível”, onde provavelmente estará fadado ao fracasso ou alguma perda. Parece que esta zona começa quando o projeto sofre uma compressão de 30%
Estimativas (IV)
– Será que o que estamos querendo fazer é único ? “Impossível” ?
Produtividade – Horas/PF – ISBSG R11 Produtividade – PFs/Mes – ISBSG R11
O que acha que está acontecendo com um projeto em Java de 6.500 PFs
para ser entregue em 18 meses e com uma produtividade estimada de 12,3
horas/PF ?
Mudanças (I)
Mudanças são inevitáveis ...
A cada mês os requisitos do
projeto vão mudar entre
1% e 2%, pode ter certeza ...
Mudanças (II)
–Tenho como saber o que está mudando ? Claro PF nelas !!!!!!
− Mudanças contadas usando versão simplificada da NESMA (Alteração)
− Percentuais de apropriação estabelecidos em conjunto com o cliente por
fase
− Percentuais de re-trabalho normalmente : 0%, 50%, 75% ou 100%.
Mudanças (II)
– É preciso saber quando parar de mudar ...
É preciso não
confundir :
“Mudança é um
fato inevitável ...
Com “Perda do
controle do
escopo”
Acompanhamento (II)
– Ao acompanhar o progresso usando Pontos de Função, alguns subprodutos podem surgir ...
Fórmula Original SPI = EV / PV
Este SPI = % da Contribuição do
tamanho do modulo no tamanho total do
projeto / % da Contribuição do esforço
total do módulo no projeto
Acompanhamento (III)
–Pode ter certeza, se a produtividade está “baixa”e datas estão sendo perdidas, requisitos não-funcionais podem sem os vilões da história !
Acompanhamento (IV)
–Se a correlação entre SLOCs/PFs pode variar de 100 LOCs/PF até 400 LOCs/PF, porque a produtividade também não pode, o esforço idem, e o preço também.
O maior cego é aquele que não quer ver …
– Projetos com problemas fatalmente tem suas causa nos quatro tópicos discutidos : Requisitos, Estimativas, Mudanças e Acompanhamento.
– A técnica de Pontos de Função é uma excelente ferramenta para diagnosticar e ajudar na resolução dos problemas.
– Por si só, ela não tem como resolvê-los mas muitas vezes vai ajudar a sair da pior situação que podemos estar em um projeto :
“Não saber, o que não se sabe “
Mas tudo isto pode ser evitado se APF for usada …
• Definir e Validar o Escopo;
• Estimar Prazo, Esforço e Custo;
• Planejar as Entregas
• Controlar a Execução das Fases Conceitual, Lógica, Física e Homologação
• Controlar as Mudanças
• Gerar Indicadores de Performance
• Armazenar Informações históricas para retroalimentar o processo
Mas este papo interessante vai ficar para a próxima Métricas/ISMA