A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Estimando Esforço de Projetos de Software utilizando pontos de Função Carlos Antônio Menezes de Albuquerque Recife, Julho de 2003.

Apresentações semelhantes


Apresentação em tema: "Estimando Esforço de Projetos de Software utilizando pontos de Função Carlos Antônio Menezes de Albuquerque Recife, Julho de 2003."— Transcrição da apresentação:

1 Estimando Esforço de Projetos de Software utilizando pontos de Função Carlos Antônio Menezes de Albuquerque cama@cin.ufpe.br Recife, Julho de 2003

2 Agenda Métricas Histórico Objetivos Vantagens Etapas Exemplo Estimativas Desvantagens e limitações Comparações

3 “Não se pode controlar aquilo que não se consegue medir” Tom DeMarco¹ ¹ Tom DeMarco, Controlling Software Projects, Yourdon Press, 1982.

4 Métricas Não Funcionais x Funcionais Linha de Código (LOC) - Medida não funcional de tamanho Ponto de Função (PF) - Medida funcional de tamanho

5 Histórico Allan Albrecht da IBM, em uma conferência da Guide/Share (1979) Refinados em uma metodologia formal e publicados no domínio público (1984) Grupo Internacional de Usuários de Pontos de Função (1986) –Manual de Práticas de Contagem (CPM, atualmente na versão 4.1) Criação de um grupo de trabalho na ISO sobre Medidas Funcionais de Tamanho (1994) Padrão Internacional ISO/IEC 20926 (2002 )

6 Objetivos Medição de Funcionalidade de Sistemas de acordo com a perspectiva do usuário Comparação da produtividade entre ambientes de desenvolvimento (P=PF/Esforço) Melhoria de estimativas de projetos de desenvolvimento de softwares Criação de uma unidade padrão de medida de software

7 Vantagens Transparência para o usuário final Estimar os prazos e custos de desenvolvimento e manutenção mais precisamente Melhorar a qualidade dos contratos de terceirização Ajudar a entender o aumento do escopo (Comparação durante o ciclo de vida do Projeto) Relacionamento com outras métricas(ex. Defeitos por PF)

8 Etapas 1.Identificar as funções do sistema. 2.Classificar cada função quanto à complexidade funcional relativa como: simples, média ou complexa. 3.Calcular os Pontos de Função brutos através da aplicação dos pesos de acordo com a tabela específica 4.Avaliar as 14 características gerais do sistema 5.Determinar o Fator de Ajuste 6.Calcular os Pontos de Função ajustados.

9 Etapas Determinar o Tipo de Contagem –Desenvolvimento –Aplicação –Melhoria Identificar fronteiras da Aplicação(Quais as funções que o software deve executar?) Contar os tipos de Funções de Dados –ALI (Arquivo Lógico Interno) –AIE (Arquivo de Interface Externa) Contar os tipos Funções de Transação –EE (Entrada Externa) –SE (Saída Externa) –CE (Consulta Externa)

10 Funções de Dados ALI (Arquivo Lógico Interno) –Entidade lógica e persistente –Manter os dados que sofrem manutenção –Dentro da Fronteira da Aplicação –Equivale à um Depósito de Dados em um DFD ou à uma entidade em um MER. AIE (Arquivo de Interface Externa) –Entidade lógica e persistente –Mantido dentro da fronteira de outra aplicação –Um AIE contado por uma aplicação deve ser um ALI em outra aplicação.

11 Tabela ALI

12 Funções de Transação EE (Entrada Externa) –Processo lógico do negócio que mantém os dados em um ou mais arquivos lógicos internos –Contada com base no número de campos de dados do usuário envolvidos e na soma dos ALI e AIE participantes do processo –Um exemplo de EE seria"Incluir empregado" em um aplicativo de recursos humanos

13 Funções de Transação SE (Saída Externa) –é um processo lógico do negócio que gera dados para um usuário ou para outro aplicativo externo ao software –Exemplos típicos de saídas externas incluem relatórios de usuários, disquetes ou fitas CE(Consulta Externa) –Consiste em um par gatilho-resposta (ou pergunta-resposta) através do qual a pergunta ou solicitação de dados entra no aplicativo vinda de fora(Geralmente usuário ou outro Aplicativo) –O processamento lógico não contém nenhuma fórmula matemática ou cálculo, ou cria dados derivados, o comportamento do sistema não é alterado.

14 Componentes

15 Pontos de Função Brutos Identificação dos Pontos de Função Brutos Tipo de FunçãoBaixaMédiaAlta EE 3x4x6x SE 4x5x7x CE 3x4x6x ALI 7x10x15x AIE 5x7x10x

16 Fator de Ajuste Fator de Ajuste de Valor (FAV) –Passo final na contagem de pontos de função –Avalia restrições de negócio adicionais do software não consideradas pelos cinco tipos de funções. –Todas as funções avaliadas na contagem de Pontos de Função são funções do software –Baseado na influência de 14 Características Gerais do Sistema

17 Caracteristicas Gerais É atribuída uma nota de 0 à 5 às Características Gerais do Sistema chamada (nenhuma influência, influência incidental, moderada, média, significante, essencial) 1.Comunicação de Dados 2.Processamento de Dados Distribuído (Funções Distribuídas) 3.Performance 4.Configuração do equipamento 5.Volume de Transações 6.Entrada de Dados On-Line 7.Interface com o usuário 8.Atualização On-Line 9.Processamento Complexo 10.Reusabilidade 11.Facilidade de Implantação 12.Facilidade Operacional 13.Múltiplos Locais 14.Facilidade de mudanças Fórmula de Cálculo: NI(total) = NI FAV = 0,65 + ( 0,01 X NI) (0,65 <= Fa <= 1,35) PF = FAV X PFB

18 Exemplo Calcule os pontos de função para um sistema que faça um Cadastro de Clientes onde é possível tirar uma listagem por ordem alfabética e exportar o cadastro para outro sistema através de um arquivo texto. Contagem: ALI = 01 (Arquivo de Clientes) AIE = 0 SE = 01 (Listagem por ordem alfabética) EE = 01 (Processo de inclusão) CE = 01 (Arquivo Texto)

19 Exemplo Todos os tipos de função podem ser considerados de complexidade BAIXA nesse exemplo. PFB = ALI x 7 + AIE x 5 + EE x 3 + SE x 4 + CE x 3 = 1 x 7 + 0 x 5 + 1 x 3 + 1 x 4 + 1 x 3 = 17 Contado-se os fatores de ajuste segundo os níveis de influência temos: FAV = (45 * 0,01) + 0,65 = 1,1 (Pontos de Função ajustados) PF = FAV x PFB = 1,1 x 17 = 18,7

20 Estimativas O que fazer agora? Pouco frustrante para empresas recém-criadas Comparar com projetos anteriores, planejar e estimar melhor o novo desenvolvimento Obtendo o número de Pontos de Função pode-se estimar o esforço de projeto por fases de desenvolvimento

21 Estimativas Maculêlê Software Imaginemos um projeto no qual obtemos um total de 100 PF Numa fase que utilize 20% do Projeto Numa equipe de 4 pessoas Considerando uma produtividade média de 20hs/PF Considerando uma jornada de 6 horas diárias Considerando um valor de R$35,00 o valor de 1 Hora de Trabalho

22 Estimativas 20% de 100 PF = 20 PF Esforço - 20hs/PF então: 20hs/PF x 20PF = 400h Prazo - 400h/ (4 x 6) = 16,7 Dias Custo - 400h x R$ 35,00 = R$ 14.000,00

23 Certificação CFPS – Certifield Function Point Specialist: é a certificação conferida pelo International Function Point Users Group às pessoas aprovadas no exame de certificação

24 Empresa SERPRO –Gerência de subcontratação de software –Seleção de fornecedores baseado em estimativas por pontos de função –Acompanhamento do projeto Planejado x Realizado

25 Limitações e Desvantagens Para ter uma boa utilização é necessária uma base histórica É necessário ter uma boa visão(Profundidade do sistema para poder estimar com menos insegurança) Não é muito boa para medir esforço de manutenção (Correção de problemas) Utilização de pesos para definir a classificação das funções Várias variações das métricas, é preciso saber qual a versão da métrica, quando se vai medir tamanho do software

26 Comparações CaracterísticasLinha de Código Software Science Cocomo Feature Points PutmanPontos por Função 1. Produção de resultados aceitáveis sim 2. Avaliação por usuários sem conhec. da ling. programação não sim 3. Significado para o Usuário final não simnãosim 4. Utilizado em estimativas simnãosim 5. Contabilização automática sim Análise de Pontos por Função para Aplicações Orientadas a Documentos - DOUGLAS JOSÉ PEIXOTO DE AZEVEDO

27 Dúvidas?

28 Referências International Function Point Users Group http://www.ifpug.org/ BFPUG Brazilian Function Point Users Group http://www.bfpug.com.br/ Análise de Pontos por Função para Aplicações Orientadas a Documentos - DOUGLAS JOSÉ PEIXOTO DE AZEVEDO IT Measurement: Practical Advice from the Experts, IFPUG, Ed Yourdon – Com publicação de um trabalho do Márcio Silveira PUC- RJ Function Point Analisys, David Garmus, Addison-Wesley


Carregar ppt "Estimando Esforço de Projetos de Software utilizando pontos de Função Carlos Antônio Menezes de Albuquerque Recife, Julho de 2003."

Apresentações semelhantes


Anúncios Google