Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
* * * Universidade Estácio de Sá Medidas do Esforço no Desenvolvimento de Software Prof.: George Hamilton * * * Pontos de Função Medem a funcionalidade entregue ao usuário. Independem de: plataforma ou linguagem de programação; estilo de programação utilizado. Permitem comparações entre empresas, linguagens, etc. * * * Pontos de Função Histórico Foram propostos por Allan Albrecht em 1979. A formalização das regras de contagem teve início em 1984, pela IBM. Em 1986 foi criado o IFPUG: International Function Points Users Group. Atualmente, o manual de contagem encontra-se na versão 4.1.1. * * * Pontos de Função Objetivos Mensurar a funcionalidade que o software oferece a seus usuários. Independentemente da tecnologia utilizada para implementação. Oferecer uma forma de contagem: simples o suficiente para minimizar o overhead gerado pela medição; e, consistente entre diferentes projetos e organizações. * * * Pontos de Função A Análise de Pontos de Função (APF) permite: determinar o tamanho de uma aplicação a partir da funcionalidade nela contida; mensurar o desenvolvimento de software para analisar qualidade e produtividade; estimar custo e recursos necessários ao desenvolvimento ou manutenção; normalizar dados para comparação. * * * Pontos de Função Principais vantagens: Transparência para o usuário final. Apoio à estimativa de tempo, recursos e custos: desde o início do ciclo de desenvolvimento mesmo sem ter todas as informações necessárias sobre o sistema. Melhora na qualidade dos contratos de terceirização. * * * ETAPAS DO PROCESSO 1. Identificação das funções do sistema 2. Classificação de cada função quanto à complexidade funcional relativa como: simples, média ou complexa 3. Cálculo dos pontos de função brutos através da aplicação dos pesos de acordo com uma tabela específica 4. Avaliação de 14 características gerais do sistema 5. Determinação do Fator de Ajuste 6. Cálculo dos pontos de função ajustados * * * Contagem de Pontos de Função Tipos de Pontos de Função: Entradas externas: Processo elementar no qual dados cruzam a fronteira da aplicação de fora para dentro com o objetivo de alterar o comportamento da aplicação ou dados. Consultas externas: Processo elementar no qual dados cruzam a fronteira da aplicação de fora para dentro sem envolver cálculos ou alteraçào de dados. * * * Contagem de Pontos de Função Tipos de Pontos de Função Saídas externas: Processo elementar no qual dados cruzam a fronteira da aplicação de dentro para fora. Arquivos lógicos internos: Grupo de dados logicamente correlatos, identificável pelo usuário, mantido dentro da fronteira da aplicação. * * * Contagem de Pontos de Função Tipos de Pontos de Função Arquivos de interface externa: Grupo de dados logicamente correlatos, identificável pelo usuário, mantido por outra aplicação. * * * Sistema de Informação Arquivos Lógicos Internos Consultas Outro Sistema Entradas Saídas A complexidade de cada elemento é classificada como simples, média, ou complexa com base em tabelas fixas. Arquivos Interface Externa Contagem de Pontos de Função * * * Contagem de Pontos de Função Identificação de funções de transação Exemplo – em um sistema de biblioteca Incluir Obra Alterar dados existente Consultar lista de títulos Registrar empréstimo Emitir relatório de empréstimos por período ... * * * Contagem de Pontos de Função Contagem de elementos: Para cada função de dados: Contar os Tipos de registros e os Campos de dados. Para cada função de transação: Contar os Arquivos referenciados e os Campos de dados. Classificar cada tipo de função quanto à complexidade: Baixa, Média ou Alta. * * * Contagem de Pontos de Função Atribuição de pesos: Cada tipo de função possui um peso, de acordo com sua complexidade. O peso corresponde à quantidade de PF não ajustados que a função agrega à aplicação. Somando-se os pesos de todas as funções, obtém-se o total de PF não ajustados. * * * Contagem de Pontos de Função Atribuição de pesos – tabela de referência * * * PONTOS DE FUNÇÃO É APLICADO ATRAVÉS DE 03 PASSOS: 1) Completar a seguinte tabela: Fator de Ponderação Parâmetro Contagem Simples Médio Complexo No. de entradas x 3 4 6 do usuário No. de saídas x 4 5 7 do usuário No. de consultas x 3 4 6 do usuário No. de arquivos x 7 10 15 No. de interfaces x 5 7 10 externas Contagem-Total ANÁLISE DE PONTOS DE FUNÇÃO * * * PONTOS POR FUNÇÃO É APLICADO ATRAVÉS DE 03 PASSOS: 1) Completar a seguinte tabela: Fator de Ponderação Parâmetro Contagem Simples Médio Complexo No. de entradas x 3 4 6 do usuário No. de saídas x 4 5 7 do usuário No. de consultas x 3 4 6 do usuário No. de arquivos x 7 10 15 No. de interfaces x 5 7 10 externas Contagem-Total entradas de usuário (formulários) que forneçam dados estáticos ANÁLISE DE PONTOS DE FUNÇÃO * * * PONTOS POR FUNÇÃO É APLICADO ATRAVÉS DE 03 PASSOS: 1) Completar a seguinte tabela: Fator de Ponderação Parâmetro Contagem Simples Médio Complexo No. de entradas x 3 4 6 do usuário No. de saídas x 4 5 7 do usuário No. de consultas x 3 4 6 do usuário No. de arquivos x 7 10 15 No. de interfaces x 5 7 10 externas Contagem-Total saídas de usuário que forneçam informações (cada página de um website) ANÁLISE DE PONTOS DE FUNÇÃO * * * PONTOS POR FUNÇÃO É APLICADO ATRAVÉS DE 03 PASSOS: 1) Completar a seguinte tabela: Fator de Ponderação Parâmetro Contagem Simples Médio Complexo No. de entradas x 3 4 6 do usuário No. de saídas x 4 5 7 do usuário No. de consultas x 3 4 6 do usuário No. de arquivos x 7 10 15 No. de interfaces x 5 7 10 externas Contagem-Total entrada on-line de formulários que resulte em saída on-line ANÁLISE DE PONTOS DE FUNÇÃO * * * PONTOS POR FUNÇÃO É APLICADO ATRAVÉS DE 03 PASSOS: 1) Completar a seguinte tabela: Fator de Ponderação Parâmetro Contagem Simples Médio Complexo No. de entradas x 3 4 6 do usuário No. de saídas x 4 5 7 do usuário No. de consultas x 3 4 6 do usuário No. de arquivos x 7 10 15 No. de interfaces x 5 7 10 externas Contagem-Total cada arquivo lógico ANÁLISE DE PONTOS DE FUNÇÃO * * * PONTOS POR FUNÇÃO É APLICADO ATRAVÉS DE 03 PASSOS: 1) Completar a seguinte tabela: Fator de Ponderação Parâmetro Contagem Simples Médio Complexo No. de entradas x 3 4 6 do usuário No. de saídas x 4 5 7 do usuário No. de consultas x 3 4 6 do usuário No. de arquivos x 7 10 15 No. de interfaces x 5 7 10 externas Contagem-Total todas as interfaces usadas para transmitir informação para outro sistema ANÁLISE DE PONTOS DE FUNÇÃO * * * CÁLCULO DE PONTOS DE FUNÇÃO SIMPLES MÉDIA COMPLEXA SIMPLES MÉDIA COMPLEXA SIMPLES MÉDIO COMPLEXO 99 52 12 163 32 30 28 90 91 20 15 126 054 433 ENTRADAS TOTAL SAÍDAS TOTAL ARQUIVOS TOTAL --- 33 13 2 48 8 6 4 18 13 2 1 16 -- 3 4 6 4 5 7 7 10 15 -- -- ---»» TOTAL BRUTO DE PONTOS DE FUNÇÃO = 433 ANÁLISE DE PONTOS DE FUNÇÃO * * * Contagem de Pontos de Função Passos para calcular o fator de ajuste: Avaliar o impacto de cada uma das quatorze características atribuindo para cada característica um peso de 0 a 5. Calcular o nível de influência através da soma dos pesos de cada uma das características. Calcular o fator de ajuste a partir da equação Fator = (NI * 0,01) + 0,65. * * * Critério de Avaliação das Características Gerais e seu NI Cada uma das 14 características gerais deve ser avaliada e a ela atribuído um nível de influência que varia de 0 a 5. * * * É requerida comunicação de dados? Existem funções de processamento distribuído? O desempenho é crítico? A conversão e a instalação estão incluídas no projeto? O sistema exige backup e recuperação confiáveis? São requeridas entrada de dados on-line? Entradas, saídas, arquivos e consultas são complexos? Os arquivos são atualizados on-line? O processamento interno é complexo? O código é projetado para ser reusával? As entradas on-line requerem que as transações de entrada sejam construídas com várias telas e operações? O sistema funcionará num sistema operacional existente e intensamente utilizado? O sistema é projetado para múltiplas instalações em diferentes organizações? A aplicação é projetada de forma a facilitar mudanças e o uso pelo usuário? ANÁLISE DE PONTOS DE FUNÇÃO * * * NÍVEIS DE INFLUÊNCIA FATOR DE AJUSTE 0,65 + (0,01 * NI) = FA 0,65 + (0,01 * 42) = 1,07 PONTOS DE FUNÇÃO AJUSTADO PF * FA = PFajustado 433 * 1,07 = 463 ANÁLISE DE PONTOS DE FUNÇÃO * * * 3) Ajustar os Pontos por Função de acordo com a complexidade do sistema, através da seguinte fórmula: Fi = valores de ajuste da complexidade das perguntas 1-14 MÉTRICAS DERIVADAS ANÁLISE DE PONTOS DE FUNÇÃO * * * PONTUAÇÃO O tamanho de uma sistema independe do ambiente tecnológico ou metodologias utilizadas no seu desenvolvimento Um sistema de 500 PF terá o mesmo tamanho independente do ambiente Ex: Cliente-servidor, mainframe, orientação a objeto, etc O esforço para desenvolver um sistema depende da produtividade do ambiente tecnológico selecionado ANÁLISE DE PONTOS DE FUNÇÃO * * * Tamanho do sistema: 500 PF Produtividade Ambiente A: 2,0 horas/PF Ambiente B: 5,0 horas/PF Tempo de Desenvolvimento Ambiente A: 1.000 horas/homem Ambiente B: 2.500 horas/homem PRODUTIVIDADE - Exemplo * * * Solicitação de melhoria de um sistema Cliente requer a mudança em 6 meses Acredita-se que a modificação pode ser feita com uma equipe de 3 técnicos no prazo solicitado O gerente de projetos é chamado a opinar ... EXEMPLO DE UTILIZAÇÃO DA APF * * * As implementações solicitadas foram dimensionadas pela APF em 750 PF Modificações neste sistema registraram no passado produtividade de 25 PF/homem mês O gerente de projetos pode assumir o compromisso ou negociar: mais pessoas - quantas ? maior prazo - quando ? menos modificações - quanto ? ANÁLISE DA SITUAÇÃO * * * Alocar mais 2 técnicos qualificados 750 PF / (6 meses * 25 PF/hm) = 5 homens Aumentar o prazo em 4 meses 750 PF / (3 homens * 25 PF/hm) = 10 meses Reduzir o volume de modificações em 40% 3 homens * 6 meses * 25 PF/hm = 450 PF OPÇÕES PARA O GERENTE * * * A indústria considera aplicações com mais de 500 Pontos de Função como complexas. A produtividade média da linguagem JAVA fica em torno de 15 a 20 horas/PF Considerando a produtividade de 15 horas/PF e um produto a ser desenvolvido em JAVA com 671 PF Conclui-se que o desenvolvimento das funcionalidades do produto levariam em média 10.065 horas (671 * 15) para serem implementadas. Ou seja, seriam necessários 76,3 homem-meses para desenvolver o software considerando um mês com 22 úteis e um dia com 6 horas de produtividade efetiva (10.065 / (22*6)). CONSIDERAÇÕES * * * VANTAGENS: DESVANTAGENS: • Independentes da linguagem • Ideal para aplicações que usam linguagem não procedimental • Baseados em dados mais fáceis de serem conhecidos durante a evolução do projeto • Cálculo baseado em dados subjetivos • Não é uma medida direta; é apenas um número MÉTRICAS ORIENTADAS A FUNÇÃO * * * Coletar dados, calcular e analisar métricas são passos que devem ser implementados para iniciar um programa de métricas CONSIDERAÇÕES * * * Contagem de Pontos de Função * * * Contagem de Pontos de Função * * * * * * * * * * * * * * * * * *
Compartilhar