Análise de Pontos de Função Medição, Estimativas e Gerenciamento de Projetos de Software 1
Agenda Importância da medição Uso da APF na gerência de projetos Uso da APF em estimativas Uso da APF em contratos de software Visão geral da APF Mundo das métricas funcionais Certificação CFPS 2
Por que medir software? 3
Por que medir software? Estimar custo e recursos de projetos Avaliar a aquisição de pacotes (make-or-buy) Suportar análises de produtividade e qualidade Remunerar fornecedores Apoiar a gerência de escopo do projeto Apoiar a gerência de requisitos do projeto Benchmarking 4
Dilema do desenvolvimento SW Requisitos - qualidade, funcionalidade e performance são infinitos: tendem a expansão Recursos - trabalho, logística, capital são restritos: pressão para menor utilização Como manter esta situação sob controle? Atender ao máximo as expectativas com a utilização do mínimo de recursos 5
As Respostas de Hoje Terceirização e gestão de contratos Uso intensivo de pacotes de software - ERP em especial Orientação para gerência de projetos Iniciativas de Melhoria de Processos Mas o que é gerência de projetos e onde entra a APF? 6
Desafio do GP Tornar o gerenciamento de projetos baseado em fatos, não em achismos Para isto, deve-se buscar métricas e indicadores que orientem a gerência pois: Não se pode controlar o que não se pode medir - Lord Kelvin ou Não se pode gerenciar o que não se pode medir - Tom de Marco 7
Importância da medição..., quando feita adequadamente, a medição em seqüência de atributos de qualidade de produtos e processos pode fornecer uma base efetiva para a iniciação e gerência de atividades de melhoria de processos. PSM: Measuring for Process Management and Improvement William A. F. et al, 1997 8
O que medir? Planejamento Objetivo Objetivo Objetivo Questão Questão Questão Questão Questão Questão Métrica Métrica Métrica Métrica Métrica Métrica 9
Indicadores derivados de PF A APF, junto com outras métricas permite a geração de vários indicadores para o GP Horas / PF PF / Homem Mês R$ / PF Defeitos / PF Estabilidade dos requisitos Baseline da organização Tamanho do backlog 10
Uso da APF em Estimativas 11
Estimativas de Projetos de Software Quanto Tempo? Quanto Custa? Respostas dependem dos Requisitos da Equipe da Tecnologia Exatidão apenas ao término Podem ser mais ou menos exatas 12
Podem ser mais ou menos exatas 13
Paradoxo: quando mais se exige precisão, menos se tem 14
fatores de risco coletar requerimentos estimar novamente sempre que necessário estimar tamanho estimar esforço cronograma estimar custo aprovar estimativas dados históricos recursos estimativas aprovadas de tamanho, esforço, etc. desenvolver produto dados de custo medidas reais de tamanho, esforço, etc. Analisar o processo de estimativa 15
Onde entra a APF? Tamanho pode ser estimado antes da especificação de requisitos estar completa Muito útil em tempo de proposta e análise de viabilidade É uma técnica para macro-estimativas Não recomendada para estimativas pontuais de atividades ou projetos muito pequenos 16
Estimando Esforço Necessidade das horas apropriadas para Produtividade (PF / H) Taxa de Entrega (H / PF) Classificação de projetos por similaridade processo de desenvolvimento deve ser estável Extrapolar o comportamento histórico Indicadores de Mercado Indicadores Internos 17
Estimando Custo Necessidade dos custos apropriados para Preço do ponto de função ( R$ / PF) Classificação de projetos por similaridade processo de desenvolvimento deve ser estável Extrapolar o comportamento histórico Indicadores de Mercado Indicadores Internos 18
Estimando Duração Neste ponto o ideal é conjugar outras técnicas pois: Nem sempre Prazo = Esforço / Tamanho Equipe Cuidado com fórmulas mágicas duração = PF ** 0,4??? 19
Outras Estimativas Possíveis? Número de casos de teste (= PF x 1,2)??? Número de defeitos (= PF ** 1,25)??? Tamanho da equipe de desenvolvimento (= PF / 150)??? Tamanho da equipe de manutenção (= PF / 1500)??? 20
Uso da APF em Contratos de Software 21
Aspectos Contratação Sofware Foco no negócio principal Terceirização do desenvolvimento SW Parcial Equipe Projeto Atividade (codificação, teste, análise, etc) Total Outsourcing 22
Gestão do Contrato A necessidade de gerenciar o contrato existe seja qual for o nível da terceirização Equipe: produtividade e qualidade Projeto: prazo, escopo Atividade: prazo Outsourcing: custo, qualidade 23
Formas de contratação Homem Hora Seleção do Tipo de Contrato APF Preço Global Fixo Preço Unitário 24
Homem Hora (HH) Body shopping, time and material Equipe mista Nem sempre apenas um fornecedor Infra-estrutura própria Remuneração Nível de qualificação Experiência dos profissionais Horas apropriadas 25
HH - Por um lado Simples administração Flexibilidade Agilidade em picos de demanda Mudança real dos requisitos: Aumento de escopo Aumento do esforço Aumento da fatura É justo. Responsabilidade direta do contratante.br 26
HH - Por outro lado Quantidade mínima de horas: Mês ou ano Potencial subutilização de recursos Garantia Gerenciar a produtividade dos contratados: Competência não necessariamente disponível Remuneração não vinculada a resultados Falta de estímulo ao aumento de produtividade NÃO é justo. Responsabilidade do contratado 27
Aplicação da APF x HH Monitoramento da qualidade Defeitos quantidade, severidade, origem... Funcionalidade fornecida (pontos de função) Monitoramento da produtividade Pessoal envolvido em manutenção Baseline ou base instalada.br 28
Preço Global Fixo (PGF) Privilegia a abordagem de projeto Exige maior grau de organização Quanto melhor definidos estiverem os requisitos, menor a chance de atritos Em geral: O fornecedor não dispõe de muita informação Ele não dispõe de tempo para análise detalhada Superdimensionamento ou subdimensionamento (mais provável) Ambos assumem que os requisitos não mudam Mas eles mudam... 29
Os requisitos mudam... Quanto maior a duração do projeto, mais provável de ocorrer Nova negociação (aumento do escopo): como saber se as condições originais serão mantidas? APF como fator de normalização Dimensionar o projeto original Calcular o valor unitário Aplicar os números ao objeto da mudança de escopo Instrumento de COMUNICAÇÃO 30
Quem disse que eles mudaram? 31
Medição da variação do escopo [1.200 PF] Especificação Inicial de Requisitos Estimativa [1.500 PF] Projeto de Alto Nível [1.700 PF] Projeto Detalhado Dimensionamento Horas, Reais, Pontos de Função, etc. [1.900 PF] Produto Entregue Estimativa Incial...: 1.200 PF Produto Entregue.: 1.900 PF Crescimento...: 58,3% ( 1.900 1.200 ) * 100 1.200 Projeto A Equipe 1 32
Preço Unitário (PU) Remuneração sobre elementos do projeto Relatórios, telas, tabelas, casos de uso, linhas de código, pontos de função Equilibrar riscos Produtividade e qualidade - Contratado Escopo - Contratante Desafio: O elemento Reconhecido pelo contratante e contratado Uniforme Consistente 33
Por que APF como unidade Pontos de função como unidade padrão Método padrão de medição funcional Centenas de empresas e profissionais IFPUG - organização responsável Pontos de função facilitando a comunicação Vocabulário independente da tecnologia Perspectiva do negócio 34
Quem usa APF em contratos BANDES CEF SERPRO PM- SP DATAPREV CORREIOS BRADESCO ABN/REAL EXÉRCITO PETROBRÁS EMBRATEL PRODEB EDS POLITEC MSAInfor DBA CPM STEFANINI 35
Visão Geral da APF 36
Definição da APF Método Padrão para Medir Software do Ponto de Vista do Usuário através da quantificação da Funcionalidade Fornecida 37
Objetivos da APF Objetivos da Técnica Medir a Funcionalidade que o usuário solicita e recebe Medir o desenvolvimento e melhoria de software de forma independente da tecnologia utilizada para sua implementação Objetivos do Processo de Contagem Simples o suficiente para minimizar o trabalho adicional envolvido no processo de medição Uma medida consistente entre vários projetos e organizações 38
Componentes da contagem 39
Processo de contagem ANÁLISE DE PONTOS DE FUNÇÃO Determinar o Tipo de Contagem Determinar Escopo da Contagem e Fronteira da Aplicação Contar Funções Tipo Dados Contar Funções Tipo Transação Copyright 2001, 2002 por FATTO CONSULTORIA E SISTEMAS LTDA. Determinar Contagem de Pontos de Função não Ajustados Calcular o Número de Pontos de Função Ajustados CARTÃO DE REFERÊNCIA Baseado na Versão 4.1.1 do Manual de Práticas de Contagem do IFPUG.br Determinar Valor do Fator de Ajuste 40
O Mundo da Métricas Funcionais 41
Evolução das métricas funcionais 42
IFPUG Conferência e Workshop Educacional Comitês e Grupos de Trabalho Programa de Certificação (cursos, produtos, profissionais) Counting Practices Manual - CPM Associações locais - Chapter O BFPUG é um Chapter 43
APF no Brasil Difusão no início da década de 90 - Unisys/IBPI 6 ENUPF entre 1991 e 1994 Grandes licitações públicas ISO e CMM BFPUG evolução do FPUG-Rio Fórum de discussões Exame CFPS no Brasil 44
ISBSG International Software Benchmarking Standards Group Repositório com dados de +2.000 projetos Possibilita análise comparativa de produtividade e qualidade, geração de estimativas, validação de boas práticas, etc The Software Metrics Compendium Estímulo à contribuição ao repositório 45
Certificação CFPS 46
Programa de Certificação CFPS Objetivo Reconhecer formalmente os profissionais: Capazes de realizar contagem de pontos de função precisas e consistentes Conheçam as práticas de contagem mais recentes Consulta Pública http://www.ifpug.org/other/search.htm. Prazo de Validade: três anos Necessária associação ao IFPUG Programa de extensão de certificação 47
O Exame CFPS A prova é dividida em 3 seções definições (50 questões objetivas) aplicação de regras (50 questões objetivas) 2 ou 3 estudo de casos (50 a 55 questões) Consulta ao CPM permitida Taxa de Acerto mínimo de 90% no geral, com pelo menos 80% em cada seção Duração: 3h (inglês) 3,5h (português) 48
Brasil - Evolução da certificação Possui 24% dos CFPS do mundo, atrás apenas dos EUA Ano Candidatos Aprovados % Locais # 96 6 3 50 rj 3 01 31 10 32 rj 12 02 56 34 61 rj 45 03-1 76 45 59 rj/sp/df 89 03-2 105 50 48 rj/sp/df/es 139 49
Conclusões APF é uma técnica eficaz na geração de indicadores para a gerência de projetos de software Resultados melhores à medida que dados históricos de projetos são incorporados Facilitador da comunicação Uso crescente em contratos de software Brasil está na vanguarda do uso da APF 50
Referências IFPUG - www.ifpug.org BFPUG - www.bfpug.com.br FATTO -.br ISBSG - www.isbsg.org ASMA - www.asma.org.au NESMA - www.nesma.nl UKSMA - www.uksma.co.uk COSMIC - www.cosmicon.com SPR - www.spr.com 51
Perguntas??? 52
Obrigado! Guilherme Siqueira Simões E-mail: guilherme.simoes@fattocs.com.br 53