Introdução - Cenário



Documentos relacionados
Uso de Métricas em Contratos de Fábrica de Software Roteiro de Métricas do SISP 2.0

Definition of a Measurement Guide for Data Warehouse Projects

Como Definir Processos de Estimativas aderentes às Melhores Práticas do CMMI?

Análise de Pontos por Função

Implantação de um Processo de Medições de Software

Uma Aplicação da Análise de Pontos de Função

Como evitar armadilhas em. contratos de fábricas de software. Doutrina

15/03/2010. Análise por pontos de função. Análise por Pontos de Função. Componentes dos Pontos de Função. Componentes dos Pontos de Função

Pontos de Função. André Chastel Lima Andréia Ferreira Pinto Diego Souza Campos. Engenharia de Software Mestrado Ciência da Computação - UFMS

UNIVERSIDADE FEDERAL DO PARANÁ - UFPR Bacharelado em Ciência da Computação

Métricas para Contratação de Desenvolvimento de Software

Function Point Analysis: Uma Aplicação na Gestão de Projetos de Manutenção de Software

Métricas para Contratação de Desenvolvimento de Software

Roteiro de Métricas de Software do SISP Versão 1.0

O Impacto da Engenharia de Requisitos no Processo de Métricas. Fátima Cesarino CAIXA

Diretrizes Propostas para Aplicação da APF em Programa Envolvendo Tecnologias Recentes Tais como Barramento, BPMS e Portal

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Guia de Contagem. Pontos de Função ANEXO XI. Última atualização em: 11/06/2015

Métricas para Contratação de Fábricas de Software - Pontos de Função

Pontos de Função na Engenharia de Software

Anexo VII GUIA DE CONTAGEM DE PONTO DE FUNÇÃO

Guia de Contagem APF Versão 1.00

Análise de Ponto de Função

Análise de Pontos de Função

Contabilização de Pontos de Função

Guia de Contagem de Pontos de Função do DATASUS. Versão 2.3

Síntese das discussões do fórum Livro-APF: Julho/2010

Roteiro de Métricas de Software da ANEEL - v1.0

Análise de Pontos de Função. Por Denize Terra Pimenta

Análise de Ponto de Função APF. Aula 08

Diretrizes Complementares para Aplicação da Análise de Pontos de Função no PAD

Medição de tamanho para Sistemas de Data Mart

Roteiro SERPRO de Métricas para Contratos de Software. Data Versão Descrição Autor Revisor Aprovado por

Análise de Pontos por Função - O Processo de contagem

Padrões de Contagem de Pontos de Função

Modelos de Negócio Baseados em Pontos de Função

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Análise de Ponto de Teste. Uma proposta de adaptação

Manual de Métricas de Software do <SISP> Análise de Pontos de Função

Experiência de contratação de empresa de contagem de Pontos de Função para auxílio na gestão de contrato administrativo

Estudo comparativo de contagens usando o CPM, NESMA Estimada e FP Lite TM na Dataprev

Claudia Hazan, MSc.

GARANTIA DA QUALIDADE DE SOFTWARE

Orientações iniciais. FATTO Consultoria e Sistemas -

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

Engenharia de Software Processo de Desenvolvimento de Software

Núcleo de Métricas: Alcançando a Excelência na Governança de TI

Determinar o Tipo de Contagem. Identificar o Escopo de Contagem e Fronteira da Aplicação. Contagem das Funções de Dados. Calcular os PFs Ajustados

Copyright Total Metrics

Planejamento de Projetos. Professor Gabriel Baptista ( gabriel.baptista@uninove.br ) ( )

Synergia. Synergia. Treinamento em Análise de Pontos de Função 1

ANÁLISE DE PONTOS DE FUNÇÃO. Análise de Pontos de Função (APF) Análise de Pontos de

Roteiro de Métricas de Software do SISP Versão 2.0

Software na medida certa: desmistificando pontos de função

Título do Trabalho: PONTUA - UMA FERRAMENTA PARA GESTÃO DE ANÁLISE DE PONTOS DE FUNÇÃO

TÉCNICAS DE ESTIMATIVAS DE CUSTOS ANÁLISE POR PONTOS DE FUNÇÃO. Alessandro Kotlinsky Deise Cechelero Jean Carlos Selzer. Resumo

Manual Geral do OASIS

Estimativa de Projetos de Software com Pontos de Função

Nome da Empresa. <Nome do Projeto> Plano de Desenvolvimento de Software. Versão <1.0>

5. Contagem de Pontos de Função no Desenvolvimento de Software utilizando Métodos Ágeis

UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas

Síntese das discussões do fórum Livro-APF: Abril/2012

Roteiro de Métricas de Software do SISP Versão 2.1

Tecnologia e Sistemas de Informações

Instituto de Ciências Matemáticas e de Computação. PONTOS DE FUNÇÃO Uma medida funcional de tamanho de software N RELATÓRIOS TÉCNICOS DO ICMC

Gestão de contratos de Fábrica de Software. Secretaria da Fazenda do Estado de São Paulo

A visão do Controle sobre contratos de Fábricas de Software

Guia de Contagem de Pontos de Função para Sistemas de

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

Guia Prático em Análise de Ponto de Função

Desmistificando Pontos de Função: Entendendo a Terminologia por Carol A. Dekkers, Quality Plus Technologies, Inc. dekkers@qualityplustech.

Requisitos de Software

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar

Engenharia de Software II

Atividade da gerência da qualidade

As partes interessadas incluem todos os membros da equipe de projetos, assim como todas entidades interessadas, tanto externas quanto internas; Cabe

Uma Aplicação da Análise de Pontos de Função no Planejamento e Auditoria de Custos de Projetos de Desenvolvimento de Sistemas

MÉTRICAS DE SOFTWARE

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Histórico de Revisão. Data Versão Descrição Autor

Proposta de Utilização de FDD e APF para Melhoria do Processo de Software

pacotes de software na forma em que são É importante salientar que não é objetivo do software, suas atividades e produtos

Metodologia de Gerenciamento de Projetos da Justiça Federal

Objetivos. Processos de Software. Tópicos abordados. O processo de software. Modelos genéricos de modelos de processo de software.

Metodologia e Gerenciamento do Projeto na Fábrica de Software

Aplicações da FPA em Insourcing e Fábrica de Software

SISTEMA INTEGRADO DE GESTÃO GOVERNAMENTAL ETAPA 01 SEÇÃO IX GUIA DE CONTAGEM DE PONTOS DE FUNÇÃO SEÇÃO IX. Guia de Contagem de Pontos de Função

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Medição e Análise. Orientação Contagem de Pontos de Função Versão 2.7. PD-DATAPREV Processo de Desenvolvimento de Software da Dataprev

Implantação dos Processos Gerência de Projeto e Medição com Auxílio de Ferramenta Baseada em Planilhas Carlos Simões Claudia Lasmar Gleison Santos

Transcrição:

Como evitar Armadilhas em Contratos de Software Baseados na Métrica Pontos de Função Claudia Hazan Serviço Federal de Processamento de Dados (SERPRO) 1 Introdução - Cenário Demanda crescente por Sistemas de Informação. A indústria de software precisa de mais recursos especializados para desenvolver os novos sistemas e manter os sistemas legados. As organizações estabelecem contratos com fábricas de software externas para suportar a enorme demanda por produtos de serviços de software. A Métrica Pontos de Função (PF) tem sido usada como base para contratos de software em muitas organizações Brasileiras. 2 1

Introdução - PF Benefícios PF mede o tamanho funcional do projeto de software, independentemente da tecnologia e metodologia utilizadas. PF torna possível a estimativa de tamanho de projetos de software nas fases iniciais do ciclo de vida. O Manual de Práticas de Contagem (CPM) possui regras objetivas para contagem de Pontos de Função. PF considera a visão do usuário. PF é independente da forma da modelagem dos requisitos. 3 Introdução - Motivação Problema: Como as organizações devem estabelecer seus contratos de Fábrica de Software? Solução: Estabeleça um contrato baseado na métrica Pontos de Função. Defina uma cláusula contratual: A Contagem de Pontos de Função deve ser realizada de acordo com o CPM 4.2.1 (ou a versão mais atual do CPM). Algumas organizações contratantes estabeleceram seus contratos de software baseados em PF e continuaram com conflitos e problemas com as empresas contratadas. WHY? 4 2

Introdução - Objetivos Apresentar o uso de PF em contratos de software. Mostrar erros freqüentes em Contagem de Pontos de Função, observados em revisões e auditorias de Contagem de Pontos de Função. Discutir alguns problemas comuns de contratos de software baseados em PF e apresentar sugestões de soluções. Objetivo: Reduzir os conflitos entre contratantes e contratadas. 5 Análise de Pontos de Função (APF) APF mede projetos de software pela quantificação da funcionalidade que o software fornece para o usuário, baseando-se nos requisitos funcionais. Os Principais Objetivos da APF: Medir a funcionalidade requisitada e recebida pelo usuário. Medir projetos de desenvolvimento e de manutenção evolutiva de software independentemente da tecnologia utilizada na implementação. 6 3

Documento de Requisitos Visão Geral da Contagem de PF Pontos de Função Não Ajustados Identificação das Funções Consulta Externa (CE) Princesas Ariel Aurora Belle Cinderella Jasmine Entradas Externas (EE) Fronteira da Aplicação APLICAÇÃO Arquivos Lógicos Internos (ALI) Função de Dados (Internos) Função de Dados (Externos) Funções Transacionais Contagem PF Saída Externa (SE) Mês Vendas Junho R$500 Julho R$300 Total R$800 Outras Aplicações Arquivos de Interface Externa (AIE) 7 Fórmulas de Contagem de PF Projetos de Desenvolvimento PF_DESENVOLVIMENTO = (PF_NÃO_AJUSTADO + PF_CONVERSÃO) x FATOR_AJUSTE Projetos de Manutenção Evolutiva PF_MANUTENÇÃO = ((PF_INCLUÍDO + PF_ALTERADO + PF_CONVERSÃO) x FA_ATUAL) + (PF_EXCLUÍDO x FA_ANTERIOR) 8 4

10 Erros Contagem PF 1 Erro na Definição do Tamanho Funcional x Esforço de Desenvolvimento PF: métrica de tamanho funcional, baseada nos requisitos funcionais do projeto de software. Estimativa de Esforço: considera a estimativa de tamanho e os requisitos não-funcionais. PF pode ser usado como um insumo para as estimativas de custo e esforço. 9 10 Erros Contagem PF 2 Erro no Uso do PF nas Fórmulas de Contagem descritas no CPM PF_DESENVOLVIMENTO = (PF_NÃO_AJUSTADO + PF_CONVERSÃO) x FATOR_AJUSTE PF_CONVERSÃO: Conversão de Dados Aplicação Antiga Extração de Dados SRH Empregados Entrada Externa Empregados Aplicação sendo Contada 10 5

10 Erros Contagem PF 3 Erro: Consulta Externa x Saída Externa Consulta de Alunos Dados Calculados Nome Idade David 11 Giselle 10 Nancy 11 Robert 11 Saída Externa (SE) Relatório de Alunos Dados Recuperados Nome Código David 2008_1 Giselle 2008_2 Nancy 2008_3 Robert 2008_4 Consulta Externa (CE) 11 10 Erros Contagem PF 4 Erro na Identificação dos Arquivos Lógicos Alguns arquivos físicos são contados como ALI ou AIE, por exemplo entidades fortes e independentes. Alguns arquivos físicos podem ser contados como parte de um ALI ou AIE, por exemplo entidades fracas. Alguns arquivos físicos não são contados, por exemplo Code Data. 12 6

10 Erros Contagem PF 5 Erro na Identificação de Processos Elementares Tela de Entrada de Dados Código do Empregado: Tela de Apresentação de Dados Detalhes do Empregado: Nome: Telefone: E-mail: Departamento: Gerente: Conte como apenas um Processo Elementar 13 10 Erros Contagem PF 5 Erro na Identificação de Processos Elementares um processo elementar deve ser auto-contido e deixar o negócio da aplicação sendo contada em um estado consistente CPM 4.2.1 Dica da Tia Claudinha Funcionalidades seqüenciais fazem parte de um mesmo processo elementar. Funcionalidades independentes fazem parte de processos elementares diferentes. 14 7

10 Erros Contagem PF 6 Erro na Identificação de Consultas Implícitas Atualização de Dados de Professores Código: 2008_1_8 Nome: Claudia Hazan Data de Nascimento: July 8th e-mail: claudinhah@yahoo.com Curso: Function Point Analysis OK Cancel 15 10 Erros Contagem PF 7 Erro na Estabelecimento do Fator de Ajuste A aplicação sendo contada possui: Reuso de componentes de uma outra aplicação Reuso Interno Reusabilidade: 1 Existe ainda muita dificuldade na identificação do nível de influencia (NI) das 14 Características Gerais dos Sistemas. 16 8

10 Erros Contagem PF 8 Erro na Fórmula de Cálculo da Planilha de Contagem de PF Tipo de Função Compl. Simples Compl. Média Compl. Complexo Arquivo Lógico Interno (ALI) 7 PF 10 PF 15 PF Arquivo de Interface Externa (AIE) 5 PF 7 PF 10 PF Entrada Externa (EE) 3 PF 4 PF 6 PF Saída Externa (SE) 4 PF 5 PF 7 PF Consulta Externa (CE) 3 PF 4 PF 6 PF 17 9 10 Erros Contagem PF Erro na Determinação da Complexidade das Funções Alteradas em Projetos de Manutenção Evolutiva PF_MANUTENÇÃO = ((PF_INCLUÍDO + PF_ALTERADO + PF_CONVERSÃO) x FA_ATUAL) + (PF_EXCLUÍDO x FA_ANTERIOR) PF_ALTERADO: PF das funções modificadas pelo projeto de Manutenção Evolutiva Considere a nova funcionalidade disponível para o usuário pela aplicação, por exemplo: incluir mais UMA informação a ser apresentada em uma SE Complexa 7 PFs. PF_Alterado: 7 PFs 18 9

10 Erros Contagem PF 10 Erro no Uso do CPM : Contagem de PF de Projetos de Manutenção (diferentes de manutenção evolutiva) Como contar PF de projetos de manutenção, tais como manutenção corretiva e manutenção cosméticas em contratos de software baseados no CPM 4.2.1? Resposta: Infelizmente, Você não pode contar PF destes tipos de projetos de manutenção de acordo com o CPM. Estes possuem Zero PFs. Porque não existem mudanças em funcionalidades da aplicação implantada. 19 Problemas em Contratos de Software O projeto X tem muitos bugs. O projeto Y está atrasado. Contrato de Fábrica de Software Pagamento baseado em Contagem de PF seguindo as regras de contagem do CPM 4.2.1. O CPM não considera todos os aspectos importantes que devem ser observados em Contratos de Software, visando evitar conflitos entre contratantes e contratadas. 20 10

Problemas em Contratos de Software 1 Obter um Documento de Requisitos com Qualidade O Documento de Requisitos constitui: um acordo comum entre o cliente e o fornecedor; a base para a estimativa de PF; a base para a construção do projeto de software. É fundamental garantir a Qualidade do Documento de Requisitos. Documentos de Requisitos com má qualidade ou um Pesadelo? 21 Problemas em Contratos de Software 1 Obter um Documento de Requisitos com Qualidade Sugestão: Realizar inspeção de requisitos durante a Estimativa de Pontos de Função. Hazan tem o aplicado o método CEPF para estimar o tamanho dos projetos em PF. Como um efeito colateral desta estimativa, ela encontra defeitos nos documentos de requisitos, ex: requisitos omissos, requisitos inconsistentes, requisitos incompletos, e requisitos ambíguos. HAZAN, C. et. al. É possível substituir processos de Engenharia de Requisitos por Contagem de Pontos de Função? 8th International Workshop on 22 Requirements Engineering (WER2005), Porto, Portugal, June 2005. 11

Problemas em Contratos de Software 2 Estabelecer Regras para Evolução de Requisitos Requisitos de Software não permanecem congelados. Sugestão: Estabelecer um percentual para cada atividade do processo de software, ex: Requisitos: 20%, design: 10%, implementação: 50%, teste: 15%, implantação: 5%. Quando um requisito é alterado, identificar as atividades executadas. Exemplo: Relatório de Clientes SE média 5 PF foi alterado no final da fase de requisitos. Assim, a quantidade de PF para o pagamento é: Novo requisito (alterado) : SE média 5 PF + 20% do requisito original (1 PF) Total: 6 PFs 23 Problemas em Contratos de Software 3 Estabelecer Clausulas de Garantia da Qualidade O CPM não estabelece regras para garantir a qualidade do projeto de software recebido. Contudo, a Contagem de PF considera a funcionalidade requisitada e recebida (sem defeitos). Algumas vezes, o tempo de espera para correção de defeitos é muito grande. Assim, é importante estabelecer cláusulas contratuais para garantir a qualidade do produto. Sugestão: Definir um indicador de defeitos/ PF e uma cláusula de multa. Por exemplo, uma multa se o resultado do indicador de defeitos é maior que 0,3 defeitos/pf. É importante definir os tipos de defeitos no contrato, ex: bugs, defeitos em documentos, etc. 24 12

Problemas em Contratos de Software 4 Estabelecer cláusulas contratuais considerando coronograma e taxa de entrega Problema: a contratada não entrega nenum projeto de software Sugestão: Estabelecer uma taxa de entrega mensal, ex.: 500 PF/mês Definir o modelo de estimativa a ser usado para definir o prazo de entrega, por exemplo Formula de Capers Jones Td (em meses) = V**t JONES,C. Estimating Software Costs Bringing Realism to Estimating. 2nd Edition, Mc Graw Hill, New York, 2007. New York. 25 Problemas em Contratos de Software 5 Estabelecer o CPM como base para as contagens de PF ao invés de conversões Situação Comum: Algumas organizações estabelecem o uso do CPM no contrato, contudo elas não contam PF de acordo com o CPM. Algumas vezes, a Contagem de PF é baseada em uma fórmula de conversão, ex: Pontos por Casos de Uso (PCU) para PF. Não existe uma fórmula para converter PCU para PF com acurácia. As vezes, o contrato é baseado em PF, no entanto este é gerenciado como um contrato de alocação de horas. A empresa contratada comunica as horas alocadas sem a gestão da contratante. Estas horas são convertidas em PF, considerando uma taxa de produtividade definida com base no preço por PF. Conte PF de acordo com as regras do CPM 26 13

6 Problemas em Contratos de Software Estabelecer regras de dimensionamento de projetos de manutenção Contagem de PF é aplicada apenas em projetos de desenvolvimento e de manutenção de acordo com CPM. Como considerar projetos de manutenção em Contratos baseados em Contagem de PF? Sugestão: Defina os tipos de projetos de manutenção comuns em sua organização. Defina formulas baseadas na fórmula de manutenção evolutiva do CPM no contrato de software. 27 Problemas em Contratos de Software Estabelecer regras de dimensionamento de projetos 6 de manutenção Manutenção Cosmética: demandas associadas à correção de problemas de interface, por exemplo, fonte de letra, cores de telas, logotipos, mudança de botões na tela. Estabeleça uma fórmula, por exemplo: PF_COSMÉTICA = (PF_ALTERADO x FATOR_AJUSTE) x 0,10 Assim, se a contratante requisitar uma mudança no Título de uma Tela, que está contido dentro de uma Consulta Externa, identificada como: CE Simples 3 PF. Então, o tamanho deste projeto, supondo o FA = 1, é: PF= (3 x 1) x 0,10 = 0,3 PFs Ajustados. 28 14

Conclusão Não conte PF de alguma maneira. Conte PF corretamente de acordo com as regras de contagem do CPM. PF é a melhor métrica para ser utilizada em Contratos de Fábrica de Software. Contratos de Software baseados em preço fixo por PF, por exemplo R$ 900/ PF, não é uma boa prática. Porque o esforço e o custo de projetos de software também são influenciados por requisitos não funcionais. Defina um contrato baseado em preço por esforço (hora). O esforço deve ser estabelecido com base na Contagem de PF. Defina um modelo para de derivar horas, baseandose nos PFs e requisitos não funcionais da aplicação. 29 OBRIGADO Perguntas e Contato Claudia Hazan claudia.hazan@serpro.gov.br claudinhah@yahoo.com Certified Function Point Specialist Consultora de Métricas de Software Sonhos se tornam realidade 30 15