Baixe o app para aproveitar ainda mais
Prévia do material em texto
Medidas do Esforço no Desenvolvimento de Software Aula 2 Prof. Horácio Ribeiro Objetivos da aula: - Aprender de forma sucinta o modelo de Albrecht -- Relacionar os conceitos envolvidos na proposta de Albrecht, - Aprender os conceitos em estudo de casos a partir de um DFD - Aprender a usar o modelo para um caso e uso - Converter PF em KLOC - Identificar as limitações do modelo DESAFIO: Modelo de medida indireta que permitisse planejar e decidir. • Albretch em 1974 após estudado mais 5000 softwares • É um modelo baseado na funcionalidade necessária. PRINCIPIO: - Identificar características de um sistema e mapear estas características na funcionalidade do software definida na especificação. - Albretch identificou que as funcionalidades se refletiam nos seguintes seguintes aspectos: entradas – saídas – consultas – arquivos e interfaces • CONSTRUÇÃO DA FUNÇÃO: -O Principio é construir uma função que mapeie um número real. - O número real representa uma quantidade de medida da funcionalidade que foi chamado de PONTO FUNÇÃO - Esta função foi construída por ajuste, baseado em dados observados em outros softwares. Este método de construir uma função por observação é muito comum na engenharia • Elementos da funcionalidade • Tabela de contagem • Exemplo de contagem • Identificação dos elementos • Aplicando na tabela com software simples tem-se: • Definiu que a forma de desenvolver o sistema pode provar variações na medida da funcionalidade. • Analisou 14 fatores que podem influenciar na medida da funcionalidade • Estes fatores, alguns subjetivos, são avaliados com uma nota de zero a cinco, por um conjunto de especialistas. • • • 14 aspectos • técnicos e • régua de • notas • A formula construída final ficou: • As métricas definidas a partir de PF • Ponto Função Não ajustado: - É o resultado da contagem * Peso de complexidade. (contagem total) • Ponto função ajustado - é o resultado considerando as características de implementação. - é o produto da contagem por um fator de ajuste. • fator de ajuste. 14 ( 0,65 + o,o1 * (NOTA) ) I = 1 i Observe que: 65% é da funcionalidade o fator do somatório pode variar de zero a 0,7 (todos os itens tirando 5) Logo o fator de ajuste pode ser de 1,35 a 0,65 • O fator de ajuste indica o maior ou menor esforço para a produção do software. um software com características complexas de implementação o fator de ajuste é 1,35, e um software muito simples é 0,65. Para uma contagem de 43 (por exemplo) Tem-se: 43 PF não ajustados e 58,05 PF ajustados (se o fator de ajuste for 1,35) (1,35*43) Mapeamento de PF em KLOC • Exercício Faça a previsão de tamanho e prazo para um sistema com 178,45 PF ajustados. Considere a tabela abaixo TABELA DE PRODUTIVIDADE DA EQUIPE POR LINGUAGEM DE PROGRAMAÇÃO PARA 1 PF PHP 45 LOC - 3 DIAS ÚTEIS C 72 LOC 8 DIAS ÚTEIS JAVA 58 LOC 8 DIAS ÚTEIS C ++ 72 LINHAS 8 DIAS PYTON 45 LOC............2 DIAS Decida que linguagem usar se o projeto não pode consumir mais de 450 dias • Resposta linguagem tamanho em linhas (LOC) prazo em dias úteis php 8030,25 535,35 c 12848,4 1427,6 Java 10350,1 535,35 c++ 12848,4 535,35 tom 8030,25 356,9 • Pode-se estimar um projeto no inicio da especificação. • Neste caso devido a imprecisão poderemos ter um erro maior na estimativa. • Fazer o cálculo de PF para um caso e uso • Fazer o cálculo de PF para um caso e uso • Fazer o cálculo de PF para um caso e uso • Contamos - 5 arquivos - 3 entradas - 1 saída - 2 consultas - 0 interfaces • Aplicando na tabela de contagem 2 5 0 6 35 0 65 • Desafio: • Calcule quantas linhas em C deve se estimar para este sistema? • E se for em PHP? • Você pode estudar um pouco mais visitando o site: Análise de Pontos de Função O metro quadrado do software • Function Point Analysis (FPA) é uma medida de dimensionamento de clara significância do negócio. Primeiro, tornada pública por Allan Albrecht da IBM em 1979, a técnica FPA quantifica as funções contidas no software em termos que sejam significativos para os usuários do software. A medida se relaciona diretamente com os requisitos de negócio que o software destina-se a abordar. Portanto, pode ser facilmente aplicado em uma ampla gama de ambientes de desenvolvimento e ao longo da vida de um projeto de desenvolvimento, desde a definição de requisitos iniciais para uso operacional plena. • Outras medidas de negócios, como a produtividade do processo de desenvolvimento e o custo por unidade para suportar o software, também pode ser facilmente derivado da medida de pontos de função em si, que é derivado de uma série de etapas. Usando um conjunto padronizado de critérios básicos, cada uma das funções de negócio é um índice numérico de acordo com seu tipo e complexidade. Estes índices são somadas para obter uma primeira medida de tamanho, que é então normalizada através da incorporação de uma série de fatores relacionados com o software como um todo. • O resultado final é um único número chamado de índice de Pontos de Função que mede o tamanho e a complexidade do produto de software. • Em resumo, a técnica de pontos de função fornece um objetivo, medida comparativa que auxilia na avaliação, planejamento, gestão e controle da produção de software. http://www.ifpug.org/about-ifpug/about-function-point-analysis/ • O método de Albrecht tem um problema? • Como uniformizar o processo de contagem. • Para as empresas fazerem negócios precisam de uma unidade que não varia com a subjetividade da contagem. • Para resolver isto criou-se um organismo internacional chamado IPFG – internacional Ponto Função GRUPO • O IPFG • TEM COMO OBJETIVO DESENVOLVER E PADRONIZAR A FORMA DE MEDIR O SOFTWARE • Produz um manual de contagem que serve como padrão • Tem melhorado a forma de diminuir a subjetividade da contagem • Com isto encerramos nossa aula. • Na próxima aula • Vamos verificar como o FPUG definiu o processo de contagem. • Vamos verificar que os princípios do ponto função foram preservados mas a forma da contagem foi sistematizada. • Faça os exercícios e estude no nosso livro texto • http://www.ifpug.org/ • Até a próxima aula
Compartilhar