Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Métrica de SoftwareAnálise de Pontos de Função<br />
Plano de Ensino<br />Objetivo<br />Capacitar o aluno a aplicar a técnica de Análise de Pontos de Função, que identifica o ...
Público<br />Desenvolvedores: analistas de sistemas, arquitetos, programadores, analistas de requisitos, analistas de test...
Planejamento<br />Plano de Ensino<br />Aula 1<br />Apresentação<br />Métrica de software<br />Aula 2<br />Introdução da té...
Metodologia<br />Plano de Ensino<br />Aulas expositivas e discussão na aplicação da técnica Apresentação<br />Exemplos, ex...
Apresentação<br />Plano de Ensino<br />Aluno<br />Atuação<br />Expectativa<br />Contatos<br />
Instrutor<br />Plano de Ensino<br />Marcus de Paula Costa<br />CFPS<br />Experiência de 2 anos em APF<br />Experiência de ...
Por que medir software?<br />
Por que medir software?<br />Enquete<br />Quantos já participaram de projetos de software que extrapolou o prazo ou custo?...
Por que medir software?<br />Contexto<br />Desenvolvimento de Software<br />Qualidade, prazo e custo<br />Maturidade<br />...
Contexto<br />Por que medir software?<br />Tanto os serviços de desenvolvimento como os de sustentação de Sistemas de Info...
Legislação<br />Por que medir software?<br />A legislação vigente estipula regras claras e precisas de gerenciamento dos c...
Legislação<br />Por que medir software?<br />A INSTRUÇÃO NORMATIVA Nº 4, DE 19 de maio de 2008, expedida pela SECRETARIA D...
Fiscalização e Controle<br />Por que medir software?<br />O Tribunal de Contas da União (TCU) tem se pronunciado por diver...
Fiscalização e Controle<br />Por que medir software?<br />“- Assuntos: INFORMÁTICA e TECNOLOGIA DA INFORMAÇÃO. <br />DOU d...
Fiscalização e Controle<br />Por que medir software?<br />“- Assunto: TECNOLOGIA DA INFORMAÇÃO. DOU de 28.09.2007, S. 1, p...
Contratos do Governo<br />Por que medir software?<br />Os editais para Licitações de Compra de Serviços de Desenvolvimento...
Contratos da Iniciativa Privada<br />Por que medir software?<br />A indústria e comércio de forma geral também acompanham ...
Comparação<br />Por que medir software?<br />O Ponto de Função representa para a Engenharia de Software o mesmo que o M² p...
Por que medir software?<br />Motivação<br />“Não se consegue controlar aquilo que não se consegue medir.”<br />(Tom De Mar...
Por que medir software?<br />Os quatro papéis da Medição<br />Entender<br />Controlar<br />Processos, Produtos e Serviços ...
Por que medir software?<br />Motivos<br />Entender e aperfeiçoar o processo de desenvolvimento<br />Melhorar a gerência de...
Por que medir software?<br />Motivos<br />Identificar as melhores práticas de desenvolvimento de software<br />Embasar sol...
Por que medir software?<br />Definição de Métricas<br />O que se busca na medição de software?<br />Medir a quantificação ...
Por que medir software?<br />Framework de Medição<br />Definir e Implantar Processo de Medição<br />Utilizar Ferramentas d...
Plano de Medição e Análise<br />Por que medir software?<br />Plano de levantamento e análise de indicadores em uma organiz...
Exemplos de Indicadores<br />Indicador de produtividade<br />Indicador de custo<br />Indicador de esforço<br />Por que med...
Modelos de Estimativas<br />Baseado em Analogias<br />Opiniões de especialistas e Bases Históricas<br />Baseado em Ativida...
Do tamanho para o esforço<br />Por que medir software?<br />Tamanho dos Requisitos<br />Eficácia da Tecnologia<br />Tamanh...
Ingredientes para uma boa estimativa<br />O escopo da atividade<br />O ambiente<br />Experiência da equipe<br />Ferramenta...
Experiência da Equipe<br />Habilidade para entender claramente o escopo<br />Experiência na Plataforma de desenvolvimento<...
Estimativas Eficientes<br />Cada projeto novo de Software é uma experiência única para a equipe.<br />Métricas , Passado, ...
Estimativas Erradas<br />Ignorar o passado – Dados Históricos<br />Otimismo para agradar <br />Incerteza nos requisitos<br...
Análise de Pontos de Função<br />
Histórico<br />1979 Allan Albrecht (IBM) cria as primeiras regras da APF<br />1983 Primeiro curso de APF no Brasil (Unisys...
Aplicação<br />Suporte a análise de QUALIDADE e PRODUTIVIDADE<br />Estimar CUSTOS e RECURSOS necessários para o desenvolvi...
Objetivos<br />Análise de Ponto de Função - APF<br />Medir a funcionalidade que o usuário solicita e recebe.<br />Medir o ...
Referências Normativas<br />ISO/IEC 14143-1:1998 – Medição de Tamanho Funcional de Software<br />O IFPUG-CPM foi referenci...
Procedimentos de Contagem<br />Análise de Ponto de Função - APF<br />Contar funções de dados<br />Determinar <br />o escop...
Reunir a documentação disponível<br />Deve oferecer suporte a contagem<br />Deve descrever as funcionalidades impactadas p...
Determinar o propósito da contagem<br />Uma contagem deve prover uma resposta a um problema do negócio<br />Estimar o esfo...
Determinar o tipo de contagem<br />Desenvolvimento<br />Melhoria<br />Aplicação/Baseline<br />Análise de Ponto de Função -...
Análise de Ponto de Função - APF<br />Determinar o tipo de contagem - Desenvolvimento<br />Quantifica as funcionalidades p...
Análise de Ponto de Função - APF<br />Determinar o tipo de contagem - Melhoria<br />Mede todas as modificações (inclusões,...
Análise de Ponto de Função - APF<br />Determinar o tipo de contagem – Aplicação/Baseline<br />Dimensiona o tamanho real de...
Tipos de Manutenção<br />Análise de Ponto de Função - APF<br />Corretiva<br />Defeitos ou não conformidades.<br />Adaptati...
Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Contagem Estimada<br />Projeto de Des...
Determinar o escopo da contagem<br />Análise de Ponto de Função - APF<br />O escopo da contagem define as funções que serã...
Escopo X Tipo de Contagem<br />Análise de Ponto de Função - APF<br />Desenvolvimento: inclui todas as funções construídas ...
Definições<br />Análise de Ponto de Função - APF<br />Usuário: pessoa ou coisa que se comunique ou interaja com o sistema ...
Visão do Usuário x Requisitos<br />Análise de Ponto de Função - APF<br />Possíveis Requisitos:<br /><ul><li> O sistema pre...
 Se os documentos apresentados não estiverem conforme o checklist, o sistema não pode apresentar a tela de cadastro de pes...
 O sistema deve manter informações de pessoa.</li></li></ul><li>Definições<br />Análise de Ponto de Função - APF<br />O qu...
Requisitos do Usuário<br />Análise de Ponto de Função - APF<br />APF<br />Funcionalidades<br />Software<br />Necessidades ...
Determinar a fronteira da aplicação<br />Análise de Ponto de Função - APF<br />A fronteira é uma interface conceitual entr...
Exemplo de Posicionamento de Fronteira<br />Análise de Ponto de Função - APF<br />Exemplo A:<br />Sistema de Folha de Paga...
Regras para determinar a fronteira<br />Análise de Ponto de Função - APF<br />É determinada pela visão do usuário. Deve ob...
Análise de Ponto de Função - APF<br />Estudo de Caso – Posicionamento de Fronteira<br />Uma determinada empresa de materia...
Análise de Ponto de Função - APF<br />Estudo de Caso – Posicionamento de Fronteira<br />Usuário<br />Setor de Faturamento<...
Análise de Ponto de Função - APF<br />Dicas para definição de Fronteira<br />Utilize as especificações (requisitos), Casos...
Análise de Ponto de Função - APF<br />Prática de Conceitos<br />A empresa “XPTO” possui um sistema informatizado que admin...
Propósito da Contagem:<br />Identificar o tamanho de um sistema já  existente, implementado e em produção.<br />Tipo:<br /...
Análise de Ponto de Função - APF<br />Prática de Conceitos<br />Um banco nacional está pensando em descontinuar parte de s...
Propósito da Contagem:<br />Identificar o tamanho funcional de um módulo de software para compará-lo a outro software func...
Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e ...
Análise de Ponto de Função - APF<br />Funções de Dados<br />Representam a funcionalidade fornecida ao usuário para satisfa...
Análise de Ponto de Função - APF<br />Funções de Dados<br />Entrada<br />Processamento<br />Saída<br />Arquivos<br />Funçõ...
Análise de Ponto de Função - APF<br />Definição de Arquivo para APF<br />Não significa arquivo no sentido tradicional de p...
Análise de Ponto de Função - APF<br />Definição de ALI<br />Grupo de dados ou informação de controle<br />Logicamente rela...
Análise de Ponto de Função - APF<br />Definição de AIE<br />Grupo de dados ou informação de controle<br />Logicamente rela...
Análise de Ponto de Função - APF<br />Diferença entre ALI e AIE<br />Um AIE não émantido pela aplicação que está sendo con...
Exemplo – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />ALI<br />ALI<br />ALI<br />AIE<br />Para o sistem...
Análise de Ponto de Função - APF<br />Definições de Termos Utilizados<br />Processo Elementar<br />Informações de controle...
Análise de Ponto de Função - APF<br />Processo Elementar<br />É a menor unidade de atividade significante para o usuário n...
Análise de Ponto de Função - APF<br />Processo Elementar<br />Exemplo: os requisitos do usuário para a inclusão de um func...
Análise de Ponto de Função - APF<br />Informações de Controle<br />São dados utilizados pela aplicação para garantir a con...
Análise de Ponto de Função - APF<br />Reconhecido pelo Usuário<br />É o entendimento comum entre usuário e técnicos sobre ...
Análise de Ponto de Função - APF<br />Mantido<br />É a habilidade de modificar dados através de um processo elementar<br /...
Análise de Ponto de Função - APF<br />Processo de contagem de Funções de Dados<br />Identificar as Funções de Dados<br />C...
Análise de Ponto de Função - APF<br />Regras de identificação de Funções de Dados<br />Identificar todos os dados logicame...
Análise de Ponto de Função - APF<br />Regras de classificação de Funções de Dados<br />Classifique como ALI se os dados do...
Análise de Ponto de Função - APF<br />Regras de complexidade e contribuição de Funções de Dados<br />A complexidade funcio...
Análise de Ponto de Função - APF<br />Definição de DER<br />É um campo único, reconhecido pelo usuário e não repetido.<br ...
Análise de Ponto de Função - APF<br />Regras de DER<br />Conte um DER para cada campo único, reconhecido pelo usuário e nã...
Análise de Ponto de Função - APF<br />Definição de RLR<br />É um subgrupo de dados reconhecido pelo usuário dentro de um A...
Análise de Ponto de Função - APF<br />Regras de RLR<br />Contar um RLR para cada Função de Dados identificada<br />Contar ...
Análise de Ponto de Função - APF<br />Complexidade Funcional para ALI e AIE<br />
Análise de Ponto de Função - APF<br />Contribuição para ALI e AIE<br />
Análise de Ponto de Função - APF<br />Exemplo de contagem de RLR<br />Em uma aplicação de recursos humanos, as informações...
Análise de Ponto de Função - APF<br />Resultado do Exemplo<br />No ALI empregado existem 3 RLR que são:<br /> As informaçõ...
Análise de Ponto de Função - APF<br />Dicas para contagem de Funções de Dados<br /> Uma aplicação pode utilizar um ALI ou ...
Análise de Ponto de Função - APF<br />Dicas para contagem de Funções de Dados<br />Uma forte identificação de ser um RLR:<...
Análise de Ponto de Função - APF<br />Exercício – Funções de Dados<br />Em uma aplicação de recursos humanos foi requisita...
Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – MER<br />
Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Arquivo de Funcionários<br />ALI – 2RLR – 15DER – Bai...
Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Arquivo de Cargo<br />ALI – 1RLR – 3DER – Baixa – 7 P...
Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Arquivo de Unidade<br />AIE – 2RLR – 4DER – Baixa – 7...
Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Análise Final<br />ALI – 2RLR – 15DER – Baixa – 7 PF<...
Análise de Ponto de Função - APF<br />Conceitos de Modelagem de Dados<br />Entidade<br />É um grupo de dados sobre o qual ...
Análise de Ponto de Função - APF<br />Conceitos de Modelagem de Dados<br />Elemento de Dados (ou Data Item)<br />Um compon...
Análise de Ponto de Função - APF<br />Tipos de Entidades – Negócio (bussiness data)<br />Entidades do núcleo de negócios. ...
Análise de Ponto de Função - APF<br />Características<br />É obrigatório para a operação da área funcional do usuário<br /...
Análise de Ponto de Função - APF<br />Tipos de Entidades – Referência (reference data)<br />Obrigatória para a área de neg...
Análise de Ponto de Função - APF<br />Tipos de Entidades – Referência (reference data)<br />Características<br />É obrigat...
Análise de Ponto de Função - APF<br />Tipos de Entidades – Código Descrição (code data)<br />Raramente especificadas pelo ...
Análise de Ponto de Função - APF<br />Características<br />O dado é obrigatório na área funcional, mas opcionalmente armaz...
Análise de Ponto de Função - APF<br />Características<br />É essencialmente estático, ou seja, somente se altera com as mu...
Análise de Ponto de Função - APF<br />Outros exemplos:<br />Situação<br />Código da situação<br />Descrição da situação<br...
Análise de Ponto de Função - APF<br />Dica importante<br />Verifique se o dado foi requisitado pelo usuário e, portanto, é...
Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e ...
Análise de Ponto de Função - APF<br />Funções de Transação<br />Funções de Transação<br />Entrada<br />Processamento<br />...
Análise de Ponto de Função - APF<br />Funções de Transação<br />É um processo elementar que fornece ao usuário a capacidad...
Análise de Ponto de Função - APF<br />Funções de Transação<br />São fluxos de dados que devem obrigatoriamente cruzar a fr...
Análise de Ponto de Função - APF<br />Identificação das Funções de Transação<br />A identificação dos tipos de Funções de ...
Análise de Ponto de Função - APF<br />Definição de EE – Entrada Externa<br />É um processo elementar no qual dados ou info...
Análise de Ponto de Função - APF<br />Processo de Contagem de EE – Entrada Externa<br />Identificar o processo elementar e...
Análise de Ponto de Função - APF<br />Regras de identificação de EE – Entrada Externa<br />Ao menos um ALI deve ser mantid...
Análise de Ponto de Função - APF<br />Regras de identificação de EE – Entrada Externa<br />Para o processo elementar ident...
Análise de Ponto de Função - APF<br />Exemplos de EE – Entrada Externa<br />São Entradas Externas:<br />Transações de entr...
Análise de Ponto de Função - APF<br />Exemplos de não EE – Entrada Externa<br />Não são Entradas Externas:<br />Processos ...
Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />São utilizados dois fatores:<b...
Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />DER – Dado Elementar Referenci...
Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />ALR – Arquivo Lógico Referenci...
Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />
Análise de Ponto de Função - APF<br />Contribuição para EE – Entrada Externa<br />
Análise de Ponto de Função - APF<br />Exemplo para EE – Entrada Externa<br />Na aplicação de Recursos Humanos, o usuário s...
Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e ...
Análise de Ponto de Função - APF<br />Definição de CE – Consulta Externa<br />É um processo elementar que apresenta dados ...
Análise de Ponto de Função - APF<br />Regras de identificação de CE – Consulta Externa<br />O processo elementar abaixo so...
Análise de Ponto de Função - APF<br />Processo de Contagem de CE – Consulta Externa<br />Identificar o processo elementar ...
Análise de Ponto de Função - APF<br />Regras de identificação de CE – Consulta Externa<br />Todas as regras abaixo devem s...
Análise de Ponto de Função - APF<br />Regras de identificação de CE – Consulta Externa<br />Para o processo elementar iden...
Análise de Ponto de Função - APF<br />Exemplos de CE – Consulta Externa<br />São Consultas Externas:<br />Relatórios ou te...
Análise de Ponto de Função - APF<br />Exemplos de CE – Consulta Externa<br />Outros exemplos que são CE:<br />Consultas Im...
Análise de Ponto de Função - APF<br />Exemplos de não CE – Consulta Externa<br />Não são Consultas Externas:<br />Menu de ...
Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />São utilizados dois fatores:<...
Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />DER – Dado Elementar Referenc...
Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />ALR – Arquivo Lógico Referenc...
Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />
Análise de Ponto de Função - APF<br />Contribuição para CE – Consulta Externa<br />
Análise de Ponto de Função - APF<br />Exemplo para CE – Consulta Externa<br />Na aplicação de Recursos Humanos, o usuário ...
Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e ...
Análise de Ponto de Função - APF<br />Definição de SE – Saída Externa<br />É um processo elementar que apresenta dados ou ...
Análise de Ponto de Função - APF<br />Regras de identificação de SE – Saída Externa<br />O processo elementar abaixo reali...
Análise de Ponto de Função - APF<br />Processo de Contagem de SE – Saída Externa<br />Identificar o processo elementar e v...
Análise de Ponto de Função - APF<br />Regras de identificação de SE – Saída Externa<br />Pelo menos uma das regras abaixo ...
Análise de Ponto de Função - APF<br />Regras de identificação de SE – Saída Externa<br />Para o processo elementar identif...
Análise de Ponto de Função - APF<br />Exemplos de SE – Saída Externa<br />São Saídas Externas:<br />Relatórios ou telas de...
Análise de Ponto de Função - APF<br />Exemplos de não SE – Saída Externa<br />Não são Saídas Externas:<br />Menu de navega...
Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saídas Externa<br />São utilizados dois fatores:<br...
Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saída Externa<br />DER – Dado Elementar Referenciad...
Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saída Externa<br />ALR – Arquivo Lógico Referenciad...
Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saída Externa<br />
Análise de Ponto de Função - APF<br />Contribuição para SE – Saída Externa<br />
Análise de Ponto de Função - APF<br />Exemplo para SE – Saída Externa<br />Na aplicação de Recursos Humanos, o usuário sol...
Análise de Ponto de Função - APF<br />Lógicas de Processamento para EE, CE e SE<br />
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />ALI<br />ALI<br />ALI<br />AIE<br />Para o...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Regras Gerais<br />Em todos os exemplos, c...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Registro de Reserva<br />Número da Reserva...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Regras de Validação para que a inclusão oc...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />ALR Resultado:<br />Arquivo de Reserva (é ...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />DERs Resultado:<br />Número da Reserva<br ...
Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Qual a complexidade funcional desta EE de ...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />A próxima tela é a alteração da reserva. <...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Alteração de Reserva<br />Número da Reserv...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />ALR Resultado:<br />Arquivo de Reserva (é ...
Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />DERs Resultado:<br />Número da Reserva<br ...
Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Qual a complexidade funcional desta EE de ...
Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Exclusão de Reserva<br />Número da Reserva...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Arquivos Referenciados<br />Arquivo de Res...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />O próximo exemplo é o relatório de reserva...
Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Relatório de Reservas               Data 0...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Resultado:<br />Apenas 1 ALR, pois todas a...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Relatório de Apartamentos     Data 02/02/2...
 Arquivo de Apartamentos
 Regras
 Relacionar todos os apartamentos cadastrados</li></li></ul><li>Análise de Ponto de Função - APF<br />Estudo de Caso – Sis...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Relatório de Ocupação no Período início: 0...
Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Resultado:<br />ALR<br />Só o ALI de Reser...
Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e ...
Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Formula para Projeto de Desenvolvimen...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Projeto de Desenvolvimento<br />DFP = ADD + CFP<br...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Projeto de Desenvolvimento<br />Funcional...
Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Formula para Iniciar a Contagem da Ap...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Iniciar a contagem da aplicação após um projeto de...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Iniciar a contagem da aplicação após um p...
Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Contagem Estimada<br />Projeto de Des...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Projeto de Melhoria<br />EFP = ADD + CHGA + DEL + ...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Projeto de Melhoria<br />Funcionalidades ...
Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Contagem Estimada<br />Projeto de Des...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Atualizar a contagem da aplicação após um projeto ...
Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Atualizar a contagem da aplicação após um...
Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e ...
Análise de Ponto de Função - APF<br />Reportar o Resultado da Contagem<br />Deve ser apresentado um relatório de contagem<...
Nächste SlideShare
Wird geladen in …5
×

Curso de APF - Básico

26.440 Aufrufe

Veröffentlicht am

Apresentação do curso de Análise de Ponto de Função - APF básico.

  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Como posso fazer do download?
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • Ótimo Material! Parabéns!
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • tem como disponibilizar por email? gbmacahdo21@gmail.com
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier
  • tem como disponibilizar por email? gbmacahdo21@gmail.com
       Antworten 
    Sind Sie sicher, dass Sie …  Ja  Nein
    Ihre Nachricht erscheint hier

Curso de APF - Básico

  1. 1. Métrica de SoftwareAnálise de Pontos de Função<br />
  2. 2. Plano de Ensino<br />Objetivo<br />Capacitar o aluno a aplicar a técnica de Análise de Pontos de Função, que identifica o tamanho funcional de uma aplicação tanto no desenvolvimento quanto na manutenção. É utilizado o CPM – CountingPractices Manual, versão 4.3, do IFPUG – InternationalFunctionPointUsersGroup, entidade internacional detentora do método de medição.<br />
  3. 3. Público<br />Desenvolvedores: analistas de sistemas, arquitetos, programadores, analistas de requisitos, analistas de testes, revisores de qualidade, mantenedores de software, documentadores e demais papeis associados ao desenvolvimento de software<br />Analistas de negócios<br />Gerentes de projetos<br />Gestores de TI<br />Interessados na certificação CFPS – CertifiedFunctionPointSpecialist (segundo semestre de 2010)<br />Gestores e usuários. <br />Plano de Ensino<br />
  4. 4. Planejamento<br />Plano de Ensino<br />Aula 1<br />Apresentação<br />Métrica de software<br />Aula 2<br />Introdução da técnica, propósito, tipo e escopo da contagem<br />Exemplos e exercícios<br />Aula 3<br />Medir funções de dados<br />Exemplos e exercícios<br />Aula 4<br />Medir funções de transações<br />Exemplos e exercícios<br />Aula 5<br />Calcular o tamanho funcional<br />Exemplos e exercícios<br />
  5. 5. Metodologia<br />Plano de Ensino<br />Aulas expositivas e discussão na aplicação da técnica Apresentação<br />Exemplos, exercícios e dinâmicas de grupo baseadas em situações reais que promovam a interação entre alunos e instrutor.<br />
  6. 6. Apresentação<br />Plano de Ensino<br />Aluno<br />Atuação<br />Expectativa<br />Contatos<br />
  7. 7. Instrutor<br />Plano de Ensino<br />Marcus de Paula Costa<br />CFPS<br />Experiência de 2 anos em APF<br />Experiência de 6 anos em desenvolvimento de software<br />Coordenador de Medição e Análise<br />Contato: marcus.itacanet@gmail.com<br />Site: http://www.marcuscosta.com.br<br />Telefone: +55 61 8401-2483<br />
  8. 8. Por que medir software?<br />
  9. 9. Por que medir software?<br />Enquete<br />Quantos já participaram de projetos de software que extrapolou o prazo ou custo?<br />Quantos já participaram de projetos de software que foi entregue no prazo?<br />Quantos já participaram de projetos de software que foi entregue no prazo e dentro do orçamento previsto?<br />
  10. 10. Por que medir software?<br />Contexto<br />Desenvolvimento de Software<br />Qualidade, prazo e custo<br />Maturidade<br />Métricas<br />
  11. 11. Contexto<br />Por que medir software?<br />Tanto os serviços de desenvolvimento como os de sustentação de Sistemas de Informação, no governo, cada vez mais estão sendo avaliados e controlados com a utilização de Métrica de Software, destacando-se a Análise de Pontos de Função - APF, técnica normatizada, defendida e divulgada pelo IFPUG. <br />Atualmente, as Organizações têm se perguntado: Por que utilizar Métrica de Software?<br />
  12. 12. Legislação<br />Por que medir software?<br />A legislação vigente estipula regras claras e precisas de gerenciamento dos contratos firmados ao término de cada processo licitatório.<br />Lei 8.666 <br />IN 04<br />
  13. 13. Legislação<br />Por que medir software?<br />A INSTRUÇÃO NORMATIVA Nº 4, DE 19 de maio de 2008, expedida pela SECRETARIA DE LOGÍSTICA E TECNOLOGIA, em vigor desde 02 de janeiro de 2009.<br />Praticamente extingue a aferição de esforço por meio da métrica Homem/Hora<br />
  14. 14. Fiscalização e Controle<br />Por que medir software?<br />O Tribunal de Contas da União (TCU) tem se pronunciado por diversas vezes apontando o Ponto de Função (PF) como sendo a unidade mais adequada para o entendimento do tamanho de qualquer sistema de informação.<br />Existe o entendimento pelos especialistas em tecnologia do governo que a APF é um primeiro passo para medição de software.<br />
  15. 15. Fiscalização e Controle<br />Por que medir software?<br />“- Assuntos: INFORMÁTICA e TECNOLOGIA DA INFORMAÇÃO. <br />DOU de 28.09.2007, S. 1, p. 137. <br />Ementa: o TCU manifestou-se no sentido de que os serviços de informática diferem substancialmente dos demais serviços, <br />...<br />... mensurados, em grande parte das vezes, por horas trabalhadas ou por simples alocação de pessoal (postos de trabalho), enquanto os serviços de Tecnologia da Informação devem priorizar a contratação, mensuração e pagamento por resultados, razão pela qual apresentam-se mais específicos e complexos em termos de definição de especificações, modelagem, planejamento das necessidades, critérios e condições para realização de licitação e acompanhamento contratual<br />...<br />(item 9.4.1.1, TC-006.030/2007-4, Acórdão nº 1.999/2007-TCU-Plenário).”<br />
  16. 16. Fiscalização e Controle<br />Por que medir software?<br />“- Assunto: TECNOLOGIA DA INFORMAÇÃO. DOU de 28.09.2007, S. 1, p. 145. <br />Ementa: o TCU determinou ao Departamento de Logística do Exército Brasileiro, do Ministério da Defesa, que fossem previstas metodologias de mensuração de serviços prestados que privilegiassem a remuneração da contratada mediante a mensuração de resultados, a exemplo da análise por Pontos de Função (método padronizado largamente utilizado no mercado nos dias de hoje para a mensuração de serviços de desenvolvimento e manutenção de sistemas, considerando as funcionalidades implementadas, sob o ponto de vista do usuário),<br />...<br />... (item 9.2.2.2, TC-019.998/2007-7, Acórdão nº 2.024/2007-TCUPlenário).”<br />
  17. 17. Contratos do Governo<br />Por que medir software?<br />Os editais para Licitações de Compra de Serviços de Desenvolvimento de Software, têm trazido Pontos de Função como a unidade definida para a medição dos produtos a serem entregues.<br />MPS<br />ANAC<br />Banco do Brasil<br />Caixa Econômica<br />IBAMA<br />BACEN<br />
  18. 18. Contratos da Iniciativa Privada<br />Por que medir software?<br />A indústria e comércio de forma geral também acompanham essa tendência, não só Governos.<br />Poliedro<br />Politec<br />CTIS<br />DBA<br />EDS<br />IBM<br />
  19. 19. Comparação<br />Por que medir software?<br />O Ponto de Função representa para a Engenharia de Software o mesmo que o M² para a Engenharia de Construção Civil, sendo a unidade principal de identificação de tamanho para os sistemas de informação. <br />
  20. 20. Por que medir software?<br />Motivação<br />“Não se consegue controlar aquilo que não se consegue medir.”<br />(Tom De Marco)<br />“Não se consegue medir aquilo que não se consegue perceber objetivamente.” (Desconhecido)<br />Mede-se para mensurar o tamanho daquilo que você está querendo controlar (gerenciar), para medir esforços necessários para alcançar o seu objetivo.<br />
  21. 21. Por que medir software?<br />Os quatro papéis da Medição<br />Entender<br />Controlar<br />Processos, Produtos e Serviços de Software<br />Avaliar<br />Prever<br />
  22. 22. Por que medir software?<br />Motivos<br />Entender e aperfeiçoar o processo de desenvolvimento<br />Melhorar a gerência de projetos e o relacionamento com clientes<br />Reduzir frustrações e pressões de cronograma<br />Gerenciar contratos de software<br />Indicar a qualidade de um produto de software<br />Avaliar a produtividade do processo<br />Avaliar os benefícios (em termos de produtividade e qualidade) de novos métodos e ferramentas de engenharia de software<br />Avaliar retorno de investimento<br />
  23. 23. Por que medir software?<br />Motivos<br />Identificar as melhores práticas de desenvolvimento de software<br />Embasar solicitações de novas ferramentas e treinamento<br />Avaliar o impacto da variação de um ou mais atributos do produto ou do processo na qualidade e/ou produtividade<br />Formar uma baseline para estimativas<br />Melhorar a exatidão das estimativas<br />Oferecer dados qualitativos e quantitativos ao gerenciamento de desenvolvimento de software, de forma a realizar melhorias em todo o processo de desenvolvimento de software<br />
  24. 24. Por que medir software?<br />Definição de Métricas<br />O que se busca na medição de software?<br />Medir a quantificação de uma característica de produto e as características do processos envolvidos.<br />GQM (GoalQuestionMetric):<br />Traçar os objetivos da medição de acordo com a estratégia da empresa<br />Estabelecer perguntas que atendam aos objetivos identificados<br />Verificar qual a métrica a ser utilizada para responder as questões<br />
  25. 25. Por que medir software?<br />Framework de Medição<br />Definir e Implantar Processo de Medição<br />Utilizar Ferramentas de Qualidade<br />Dados Históricos de Projetos<br />Promover a Melhoria Contínua<br />Definir Indicadores<br />
  26. 26. Plano de Medição e Análise<br />Por que medir software?<br />Plano de levantamento e análise de indicadores em uma organização, de acordo com as necessidades estratégicas da empresa<br />Exemplo de indicadores:<br />Produtividade<br />Densidade dos defeitos<br />Mudanças no Esforço<br />Variação nos cronogramas<br />Variação dos custos<br />Custo da qualidade<br />
  27. 27. Exemplos de Indicadores<br />Indicador de produtividade<br />Indicador de custo<br />Indicador de esforço<br />Por que medir software?<br />Produtividade = Produto de Trabalho/Esforço de Trabalho<br />CUSTO = $/PF<br />ESFORÇO = PF/Pessoa-Mês<br />
  28. 28. Modelos de Estimativas<br />Baseado em Analogias<br />Opiniões de especialistas e Bases Históricas<br />Baseado em Atividades<br />Hierarquia de atividades – Ex. EAP (Estrutura Analítica do Projeto)<br />Relação simples de estimativas<br />Esforço = Produtividade x Tamanho<br />Modelos Paramétricos<br />COCOMO<br />Por que medir software?<br />
  29. 29. Do tamanho para o esforço<br />Por que medir software?<br />Tamanho dos Requisitos<br />Eficácia da Tecnologia<br />Tamanho Funcional<br />Tamanho do Produto<br />Ferramentas<br />Tamanho Técnico<br />Padrões<br />Custo do Projeto<br />Podemos até ter a relação direta entre o Tamanho Funcional e o Esforço, porém todas as outras variáveis tem de estar constantes.<br />Não existem uma correlação direta entre o Tamanho Funcional e o Esforço!!!<br />Esforço<br />Valor da Hora<br />Outros Custos<br />
  30. 30. Ingredientes para uma boa estimativa<br />O escopo da atividade<br />O ambiente<br />Experiência da equipe<br />Ferramentas<br />Aprender com experiências passadas <br />Por que medir software?<br />
  31. 31. Experiência da Equipe<br />Habilidade para entender claramente o escopo<br />Experiência na Plataforma de desenvolvimento<br />Gerente experiente<br />Qualidade dos Processos <br />Competência da Equipe de Testes<br />Por que medir software?<br />
  32. 32. Estimativas Eficientes<br />Cada projeto novo de Software é uma experiência única para a equipe.<br />Métricas , Passado, Presente e Futuro<br />“Quem não lembra do passado está condenado a repeti-lo”. (Santayana)<br />Por que medir software?<br />
  33. 33. Estimativas Erradas<br />Ignorar o passado – Dados Históricos<br />Otimismo para agradar <br />Incerteza nos requisitos<br />Pressão Gerencial<br />Equipe de estimativas não qualificada<br />Orçamento irreal<br />Por que medir software?<br />
  34. 34. Análise de Pontos de Função<br />
  35. 35. Histórico<br />1979 Allan Albrecht (IBM) cria as primeiras regras da APF<br />1983 Primeiro curso de APF no Brasil (Unisys)<br />1984 Primeiro manual de APF<br />1986 Criação da primeira diretoria do IFPUG<br />1996 Primeiro exame CFPS no Brasil<br />1998 Criação do BFPUG<br />2004 CFPS no Brasil = 200<br />2007 CPM (Manual de Práticas de Contagem) versão 4.2.1 em português<br />2010 CPM versão 4.3<br />Análise de Ponto de Função - APF<br />
  36. 36. Aplicação<br />Suporte a análise de QUALIDADE e PRODUTIVIDADE<br />Estimar CUSTOS e RECURSOS necessários para o desenvolvimento e manutenção de software<br />Fator de NORMALIZAÇÃO para a comparação de software<br />Determinar o TAMANHO DE UM PACOTE de software adquirido pela empresa<br />Ajudar a DEFINIR O BENEFÍCIO de um pacote de software para um determinado grupo de usuários<br />Análise de Ponto de Função - APF<br />
  37. 37. Objetivos<br />Análise de Ponto de Função - APF<br />Medir a funcionalidade que o usuário solicita e recebe.<br />Medir o desenvolvimento e a manutenção de software, independentemente da tecnologia utilizada para a implementação.<br />Técnica<br />Suficientemente simples para minimizar a sobrecarga no processo de medição.<br />Uma medida consistente entre os vários projetos e organizações.<br />Processo<br />
  38. 38. Referências Normativas<br />ISO/IEC 14143-1:1998 – Medição de Tamanho Funcional de Software<br />O IFPUG-CPM foi referenciado pela ISO/IEC 14143 desde a versão 4.1, com a exclusão das CGS.<br />A versão 4.3 do IFPUG-CPM foi totalmente formulada para atender na integra ISO/IEC 14143, que é a norma ISO/IEC 20926:2009.<br />Análise de Ponto de Função - APF<br />
  39. 39. Procedimentos de Contagem<br />Análise de Ponto de Função - APF<br />Contar funções de dados<br />Determinar <br />o escopo, <br />as fronteiras <br />e identificar as necessidades funcionais <br />do usuário<br />Calcular o tamanho funcional<br />Documentar e Reportar<br />Reunir a documentação disponível<br />Contar funções de transação<br />
  40. 40. Reunir a documentação disponível<br />Deve oferecer suporte a contagem<br />Deve descrever as funcionalidades impactadas pelo projeto<br />Ter acesso a especialistas aos quais poderão corrigir eventuais falhas na documentação<br />Exemplo:modelo de dados (Lógico ou Físico), diagramas de classe, diagramas de fluxo de dados, casos de uso, descrições processuais, layouts de relatório, layouts de tela, manuais e outros artefatos de desenvolvimento de softwares.<br />Análise de Ponto de Função - APF<br />
  41. 41. Determinar o propósito da contagem<br />Uma contagem deve prover uma resposta a um problema do negócio<br />Estimar o esforço para desenvolver novo sistema ou evoluir um já existente?<br />Contar a base instalada de aplicativos?<br />Comparar funcionalidades entre pacotes de aplicativos?<br />Determina o Escopo e o Tipo de contagem<br />Influencia o posicionamento da(s) fronteira(s) da(s) aplicação(ões)<br />Exemplo: O módulo de pagamento do sistema de RH será substituído por um pacote, então os usuários podem decidir por reposicionar a fronteira e considerar o módulo de pagamento como uma aplicação separada.<br />Análise de Ponto de Função - APF<br />
  42. 42. Determinar o tipo de contagem<br />Desenvolvimento<br />Melhoria<br />Aplicação/Baseline<br />Análise de Ponto de Função - APF<br />
  43. 43. Análise de Ponto de Função - APF<br />Determinar o tipo de contagem - Desenvolvimento<br />Quantifica as funcionalidades providas ao usuário da aplicação com a primeira instalação de um software entregue quando o projeto é terminado.<br />Funcionalidades Criadas ou Customizadas<br />Conversão de dados<br />Tamanho do Projeto de Desenvolvimento<br />
  44. 44. Análise de Ponto de Função - APF<br />Determinar o tipo de contagem - Melhoria<br />Mede todas as modificações (inclusões, alterações e exclusões) na aplicação já entregue ao usuário, incluindo funções de conversão.<br />Funcionalidades Adicionadas<br />Conversão de dados<br />Funcionalidades Alteradas<br />Funcionalidades Excluídas<br />Tamanho do Projeto de Melhoria<br />
  45. 45. Análise de Ponto de Função - APF<br />Determinar o tipo de contagem – Aplicação/Baseline<br />Dimensiona o tamanho real de uma aplicação instalada, representando as funcionalidades oferecidas ao usuário.<br />Funcionalidades Disponíveis<br />Tamanho da Aplicação<br />
  46. 46. Tipos de Manutenção<br />Análise de Ponto de Função - APF<br />Corretiva<br />Defeitos ou não conformidades.<br />Adaptativa<br />Resposta às modificações dos requisitos em um momento em que partes do produto já foram instaladas. Mudança na funcionalidade.<br />Perfectiva /Manutenção Preventiva<br />Mudanças no ambiente sem alteração na funcionalidade.<br />
  47. 47. Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Contagem Estimada<br />Projeto de Desenvolvimento<br />Projeto A<br />Contagem Final<br />Projeto de Desenvolvimento<br />Projeto A<br />Projeto Completo<br />Inicializa<br />Contagem da Aplicação/Baseline<br />Contagem Estimada<br />Projeto de Melhoria<br />Projeto B<br />Contagem Final<br />Projeto de Melhoria<br />Projeto B<br />Atualiza<br />Projeto Completo<br />
  48. 48. Determinar o escopo da contagem<br />Análise de Ponto de Função - APF<br />O escopo da contagem define as funções que serão incluídas em uma contagem em particular.<br />Define:<br />O escopo define um conjunto (ou subconjunto) de software sendo medido<br />Identifica quais funcionalidades serão incluídas na contagem<br />Pode incluir mais de uma aplicação ou parte de uma aplicação<br />
  49. 49. Escopo X Tipo de Contagem<br />Análise de Ponto de Função - APF<br />Desenvolvimento: inclui todas as funções construídas ou customizadas no projeto.<br />Melhoria: inclui todas as funções adicionadas, alteradas e excluídas. A fronteira da aplicação permanece a mesma.<br />Aplicação: pode incluir<br />Todas as funções usadas pelo usuário<br />Todas as funções entregues<br />
  50. 50. Definições<br />Análise de Ponto de Função - APF<br />Usuário: pessoa ou coisa que se comunique ou interaja com o sistema a qualquer momento.<br />Visão do usuário: é a descrição formal de uma necessidade de negócio na linguagem do usuário. Os desenvolvedores traduzem aquela linguagem numa linguagem de TI para realizar o projeto lógico.<br />Exemplo:<br />É uma descrição das funções do negócio<br />É aprovada pelo usuário<br />Pode ser usada para contar pontos de função<br />Pode variar na forma física (ex., catálogo de transações, propostas, documento de requisitos, especificações externas, especificações detalhadas, manuais do usuário)<br />
  51. 51. Visão do Usuário x Requisitos<br />Análise de Ponto de Função - APF<br />Possíveis Requisitos:<br /><ul><li> O sistema precisa manter informações do checklist de documentação.
  52. 52. Se os documentos apresentados não estiverem conforme o checklist, o sistema não pode apresentar a tela de cadastro de pessoa.
  53. 53. O sistema deve manter informações de pessoa.</li></li></ul><li>Definições<br />Análise de Ponto de Função - APF<br />O que é uma funcionalidade ?<br />É uma Função<br />Pode ser um Serviço<br />Pode ser uma Capacidade necessitada por um usuário para resolver um problema ou atingir um objetivo<br />Algo Visto, Tangível, com sentido tanto para usuários quanto para desenvolvedores que trabalhando em conjunto produzem um determinado resultado.<br />Ex1: Cadastrar um correntista <br />Ex2: Cadastrar um correntista em 5 segundo ( é uma característica tecnológica ,<br /> sendo assim não é um requisito funcional).<br />
  54. 54. Requisitos do Usuário<br />Análise de Ponto de Função - APF<br />APF<br />Funcionalidades<br />Software<br />Necessidades do usuário<br />Tecnologia<br />Qualidade<br />
  55. 55. Determinar a fronteira da aplicação<br />Análise de Ponto de Função - APF<br />A fronteira é uma interface conceitual entre a aplicação em estudo e seus usuários.<br />A fronteira:<br />Define o que é externo a aplicação<br />Indica a fronteira entre o software sendo contado e o usuário<br />Funciona como uma membrana pela qual os dados processados pelas transações (EE, SE e CE) passam para dentro e fora da aplicação<br />Inclui os Arquivos Lógicos Internos (ALI) mantidos pela aplicação<br />Auxilia na identificação dos Arquivos Referenciados (AIE), mas não mantidos pela aplicação<br />Depende da visão de negócio do usuário da aplicação. É independente da tecnologia de implementação<br />
  56. 56. Exemplo de Posicionamento de Fronteira<br />Análise de Ponto de Função - APF<br />Exemplo A:<br />Sistema de Folha de Pagamento<br />Sistema de Recursos Humanos<br />Exemplo B:<br />Sistema de Gestão de Recursos Humanos<br />Módulo de Recrutamento e Seleção<br />Módulo de Plano de Saúde<br />Módulo de Folha de Pagamento<br />
  57. 57. Regras para determinar a fronteira<br />Análise de Ponto de Função - APF<br />É determinada pela visão do usuário. Deve obedecer o que o usuário pode reconhecer e descrever<br />A fronteira entre aplicações relacionadas é determinada pela visão da área funcional do usuário e não pela visão técnica ou tecnológica<br />Uma fronteira já estabelecida numa aplicação sendo alterada não é influenciada pelo escopo da contagem<br />Caso o escopo da contagem envolva mais de uma aplicação, as fronteiras entre as aplicações devem ser determinadas<br />
  58. 58. Análise de Ponto de Função - APF<br />Estudo de Caso – Posicionamento de Fronteira<br />Uma determinada empresa de materiais de construção possui um sistema de cadastro de clientes, utilizado para vários fins, inclusive para emissão de malas diretas promocionais.<br />Uma nova forma de venda que permite o cadastramento de pedidos por meio de uma central de atendimentos está sendo inaugurada. O operador, ao receber um pedido de fornecimento, procede seu cadastramento em um sistema de cadastro de solicitações. Este sistema também está disponível para o pessoal responsável por separar o material de cada pedido e embalá-lo adequadamente para ser entregue. Para fazer um pedido pela central de atendimentos é necessário fazer um cadastramento prévio na própria loja.<br />Uma hora antes do final de cada expediente (matutino e vespertino) o pessoal da área de cobrança emite as faturas enviando-as ao pessoal da área de entrega. As entregas serão realizadas no próximo período.<br />Segundo está configuração de processos qual seria a configuração de fronteiras para as aplicações citadas?<br />
  59. 59. Análise de Ponto de Função - APF<br />Estudo de Caso – Posicionamento de Fronteira<br />Usuário<br />Setor de Faturamento<br />Pedidos<br />Clientes<br />Faturamento referencia dados de pedidos cadastrados<br />Faturamento referencia dados de clientes cadastrados<br />Usuário<br />Setor de Cadastro de Clientes<br />Faturamento<br />Usuário<br />Setor de Cadastro de Pedidos<br />
  60. 60. Análise de Ponto de Função - APF<br />Dicas para definição de Fronteira<br />Utilize as especificações (requisitos), Casos de Uso ou um Diagrama de Fluxos de Dados do sistema e desenhe as fronteiras ao redor do sistema para realçar as funções internas e externas<br />Observe como os grupos de dados são mantidos<br />Identificar por áreas funcionais, atribuindo os responsáveis por cara objeto de negócio (como entidades ou processos elementares) de uma área funcional<br />Analise contagens anteriores, as fronteiras provavelmente serão as mesmas<br />Entreviste os especialistas de cada área<br />
  61. 61. Análise de Ponto de Função - APF<br />Prática de Conceitos<br />A empresa “XPTO” possui um sistema informatizado que administra os seus gastos externos (Contas a Pagar). <br />Este sistema encontra-se implementado em produção e faz interface com outras aplicações da empresa. De forma particularmente importante, este sistema faz interface com o sistema de folha de pagamentos de funcionários. No sistema da folha de pagamentos são referenciados dados sobre os encargos a serem pagos pela empresa sobre os salários praticados para funcionários. <br />Deseja-se identificar o tamanho em Pontos por Função do sistema de Contas a Pagar e um levantamento de suas funcionalidades para subsidiar futuras comparações.<br />
  62. 62. Propósito da Contagem:<br />Identificar o tamanho de um sistema já existente, implementado e em produção.<br />Tipo:<br />Aplicação / Baseline<br />Escopo:<br />As funções que compõem o sistema de contas a pagar.<br />Análise de Ponto de Função - APF<br />Prática de Conceitos<br />
  63. 63. Análise de Ponto de Função - APF<br />Prática de Conceitos<br />Um banco nacional está pensando em descontinuar parte de seu sistema desenvolvido in-house e substituí-lo por um pacote de software, que contempla as mesmas funções, porém mais flexível e parametrizado. Este pacote será responsável, dentro do sistema de controle de cartões de crédito, pela emissão de extratos, 2ª via de extratos, informação de saldo, limite de crédito etc.<br />Para saber a viabilidade econômica, resolveu-se medir o tamanho funcional das funções atuais e estimar seu custo, caso fossem redesenhadas.<br />
  64. 64. Propósito da Contagem:<br />Identificar o tamanho funcional de um módulo de software para compará-lo a outro software funcionalmente equivalente.<br />Tipo:<br />Aplicação / Baseline<br />Escopo:<br />As funções que serão substituídas pelo pacote de software.<br />Análise de Ponto de Função - APF<br />Prática de Conceitos<br />
  65. 65. Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e Fronteira<br />Contar Funções Transacionais<br />Contar Funções de Dados<br />ALI<br />AIE<br />EE<br />CE<br />SE<br />Calcular Tamanho Funcional<br />Documentar e Reportar<br />
  66. 66. Análise de Ponto de Função - APF<br />Funções de Dados<br />Representam a funcionalidade fornecida ao usuário para satisfazer requisitos de dados internos e externos<br />São definidas como Arquivos de Interface Interna (ALI) e Arquivos de Interface Externa (AIE)<br />
  67. 67. Análise de Ponto de Função - APF<br />Funções de Dados<br />Entrada<br />Processamento<br />Saída<br />Arquivos<br />Funções de Dados<br />
  68. 68. Análise de Ponto de Função - APF<br />Definição de Arquivo para APF<br />Não significa arquivo no sentido tradicional de processamento de dados<br />Refere-se a um grupo de dados logicamente relacionados<br />Não leva em consideração a implementação física desses grupos de dados<br />
  69. 69. Análise de Ponto de Função - APF<br />Definição de ALI<br />Grupo de dados ou informação de controle<br />Logicamente relacionados<br />Reconhecido pelo usuário<br />Mantido dentro da fronteira da aplicação<br />A intenção primária é armazenar dados mantidos através de um ou mais processos elementares da aplicação que está sendo contada.<br />
  70. 70. Análise de Ponto de Função - APF<br />Definição de AIE<br />Grupo de dados ou informação de controle<br />Logicamente relacionados<br />Reconhecido pelo usuário<br />Referenciado pela aplicação<br />Mantido dentro da fronteira de outra aplicação<br />A intenção primária é armazenar dados referenciados através de um ou mais processos elementares da aplicação que está sendo contada.<br />Um AIE contado para uma aplicação tem que ser um ALI em outra aplicação.<br />
  71. 71. Análise de Ponto de Função - APF<br />Diferença entre ALI e AIE<br />Um AIE não émantido pela aplicação que está sendo contada, enquanto que um ALI o é.<br />
  72. 72. Exemplo – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />ALI<br />ALI<br />ALI<br />AIE<br />Para o sistema de Controle de Reservas Cliente, Reserva e Apartamento são ALI. E Funcionário é um AIE.<br />Para o sistema de Pessoal Funcionário é um ALI.<br />
  73. 73. Análise de Ponto de Função - APF<br />Definições de Termos Utilizados<br />Processo Elementar<br />Informações de controle<br />Reconhecido pelo usuário<br />Mantido<br />
  74. 74. Análise de Ponto de Função - APF<br />Processo Elementar<br />É a menor unidade de atividade significante para o usuário na aplicação.<br />Tem que ser:<br />Reconhecido pelo usuário<br />Auto contido (auto suficiente ou independente)<br />Ser uma operação completa<br />Deixar o negócio da aplicação sendo contada em um estado consistente após ser concluído.<br />
  75. 75. Análise de Ponto de Função - APF<br />Processo Elementar<br />Exemplo: os requisitos do usuário para a inclusão de um funcionário compreendem a determinação de informações de salário e dependentes. Um funcionário não terá sido criado se não forem incluídas todas as respectivas informações. A partir da perspectiva do usuário, a menor unidade de atividade é incluir um novo funcionário. Incluir separadamente apenas parte das informações deixará o negócio em um estado inconsistente. Se forem incluídos tanto o salário do funcionário quanto as informações do(s) dependente(s), a unidade de atividade será concluída e o negócio será deixado em um estado consistente.<br />
  76. 76. Análise de Ponto de Função - APF<br />Informações de Controle<br />São dados utilizados pela aplicação para garantir a conformidade com os requisitos do negócio especificados pelo cliente<br />Influenciam um processo elementar da aplicação que está sendo contada<br />Especificam o que, quando ou como os dados serão processados<br />Exemplo:<br />Seleção de perfil<br />Seleção de idioma<br />Parâmetros de configuração – (Quando especificados pelo usuário)<br />
  77. 77. Análise de Ponto de Função - APF<br />Reconhecido pelo Usuário<br />É o entendimento comum entre usuário e técnicos sobre os requisitos dos processos de negócio<br />É o consenso entre USUÁRIO e TÉCNICO<br />É o resultado final da disciplina de requisitos<br />
  78. 78. Análise de Ponto de Função - APF<br />Mantido<br />É a habilidade de modificar dados através de um processo elementar<br />Exemplo:<br />Inserir<br />Alterar<br />Excluir<br />Revisar<br />Associar<br />Criar<br />...<br />
  79. 79. Análise de Ponto de Função - APF<br />Processo de contagem de Funções de Dados<br />Identificar as Funções de Dados<br />Classificar cada Função de Dados em ALI ou AIE<br />Determinar a complexidade e contribuição de cada Função de Dados<br />
  80. 80. Análise de Ponto de Função - APF<br />Regras de identificação de Funções de Dados<br />Identificar todos os dados logicamente relacionados e reconhecidos pelo usuário que estejam no escopo da contagem<br />Entidades independentes são consideradas grupos de dados lógicos separados<br />Agrupar entidades dependes em um único grupo de dados<br />Excluir todas as entidades consideradas Code Data (Dado de Código)<br />Excluir toda entidade que não contém atributos solicitados pelo usuário<br />Remover entidades associativas que só representam o relacionamento entre as entidades, ou seja, somente pares de chave ou atributos que não sejam solicitados pelo usuário<br />
  81. 81. Análise de Ponto de Função - APF<br />Regras de classificação de Funções de Dados<br />Classifique como ALI se os dados do arquivo lógico forem mantidos dentro da fronteira da aplicação sendo contada<br />Classifique como AIE se os dados do arquivo lógico:<br />Forem referenciados, mas não mantidos, pela aplicação sendo contada<br />Forem mantidos dentro da fronteira de outra aplicação<br />Se a Função de Dados atender ambas as regras, classifique como ALI<br />
  82. 82. Análise de Ponto de Função - APF<br />Regras de complexidade e contribuição de Funções de Dados<br />A complexidade funcional de cada função de dados é determinada pela contagem dos:<br />Tipos de Dados Elementares (DER)<br />Tipos de Registros Elementares (RLR)<br />
  83. 83. Análise de Ponto de Função - APF<br />Definição de DER<br />É um campo único, reconhecido pelo usuário e não repetido.<br />Se compararmos com a modelagem de dados seriam os atributos.<br />Se o usuário não enxergar o campo existem grandes chances deste campo ter sido gerado por razões técnicas.<br />
  84. 84. Análise de Ponto de Função - APF<br />Regras de DER<br />Conte um DER para cada campo único, reconhecido pelo usuário e não repetido, mantido ou recuperado de um ALI ou AIE através da execução de um Processo Elementar.<br />Quando duas aplicações mantém e/ou referenciam o mesmo ALI/AIE, mas cada uma mantém/referencia diferentes DERs, conte apenas os DERs que estão sendo usados por cada aplicação para medir o ALI ou AIE. <br />Conte um DER para cada parte de dado requisitada pelo usuário para estabelecer um relacionamento com outro ALI ou AIE.<br />Verifique como os atributos se agrupam para determinar se serão um único DER ou múltiplos DERs; o agrupamento vai depender de como o processo elementar utiliza os atributos na aplicação.<br />
  85. 85. Análise de Ponto de Função - APF<br />Definição de RLR<br />É um subgrupo de dados reconhecido pelo usuário dentro de um ALI ou AIE<br />Existem dois tipo de subgrupos de dados:<br />Opcional : são aqueles que o usuário tem a opção de não informar no processo elementar que cria ou adiciona dados ao arquivo<br />Obrigatórios: são aqueles que o usuário deve sempre informar ao processo elementar que cria ou adiciona dados ao arquivo<br />
  86. 86. Análise de Ponto de Função - APF<br />Regras de RLR<br />Contar um RLR para cada Função de Dados identificada<br />Contar um RLR adicional para cada um dos subgrupos de dados que contenham mais de um DER:<br />Entidade associativa com atributos não-chave<br />Sub-tipo (exceto o primeiro sub-tipo)<br />Entidade atributiva, em uma relação que não seja obrigatório 1-1<br />
  87. 87. Análise de Ponto de Função - APF<br />Complexidade Funcional para ALI e AIE<br />
  88. 88. Análise de Ponto de Função - APF<br />Contribuição para ALI e AIE<br />
  89. 89. Análise de Ponto de Função - APF<br />Exemplo de contagem de RLR<br />Em uma aplicação de recursos humanos, as informações sobre um empregado são adicionadas cadastrando-se dados genéricos. Também foi determinado pelo usuário que existe a obrigatoriedade de cadastramento do tipo de pagamento (por hora ou mensal) para o empregado. <br />No cadastramento de um empregado podem ser incluídas informações a respeito de seus dependentes. <br />
  90. 90. Análise de Ponto de Função - APF<br />Resultado do Exemplo<br />No ALI empregado existem 3 RLR que são:<br /> As informações sobre o empregado - Obrigatório;<br /> Dados sobre pagamento - Obrigatório;<br /> Os dados relativos aos seus dependentes - Opcional.<br />Provavelmente RLRs obrigatórios farão parte do mesmo ALI, mas os opcionais devem ser verificados quanto a “como são vistos pelos usuários”, pois dependendo desta visão eles podem fazer parte de outro ALI ou até mesmo ser um ALI em separado.<br />
  91. 91. Análise de Ponto de Função - APF<br />Dicas para contagem de Funções de Dados<br /> Uma aplicação pode utilizar um ALI ou AIE diversas vezes, porém o ALI ou AIE é contado uma única vez.<br /> Um arquivo lógico não pode ser contado como um ALI e um AIE na mesma aplicação. Caso isto ocorra, conte-o como um ALI.<br /> Arquivos com mais de um tipo de registro indicam vários RLRs (Ex.: arquivos de transações).<br /> Tabelas dependentes geralmente são um RLR da tabela pai e não são contadas como funções de dados separadas.<br /> Verifique se o arquivo é mantido dentro da aplicação. Se for, sempre será um ALI.<br /> Arquivos de interface gerados em um aplicação não são contados como função de dados na aplicação que o gerou.<br /> Arquivos de help, mantidos fora da aplicação, são contados como AIE. <br />
  92. 92. Análise de Ponto de Função - APF<br />Dicas para contagem de Funções de Dados<br />Uma forte identificação de ser um RLR:<br />A inclusão ou exclusão conjunta de determinado grupo de entidades é um forte indicador que esse grupo deva ser considerado um único arquivo lógico referenciado (ALI ou AIE). A alteração de dados normalmente está direcionada apenas para uma entidade; consequentemente, ela não é uma orientação efetiva para agrupar entidades.<br />LEMBRAR DO CONCEITO DE ENTIDADE DEPENDENTE.<br />Ex: Ordem de Serviço e Itens da Ordem de Serviço.<br />
  93. 93. Análise de Ponto de Função - APF<br />Exercício – Funções de Dados<br />Em uma aplicação de recursos humanos foi requisitado pelo usuário a capacidade de se manter dados sobre os cargos possíveis de serem ocupados na Organização, bem como poder associar um cargo a cada funcionário.<br />Cada cargo conterá as seguintes informações: Código do Cargo, Nome do Cargo e um conjunto de linhas descritivas (cada uma com até 80 caracteres alfa-numérico) sobre suas atribuições básicas. Podem existir tantas linhas quantas forem necessárias para descrever as atribuições de cada cargo. <br />Existe uma tabela corporativa que armazena informações das áreas da empresa, que serão usadas na definição da área de lotação de cada funcionário. Esta tabela é mantida fora da fronteira desta aplicação e todos os seus dados são vistos pelo usuário.<br />Segundo o usuário, é obrigatório que todos os cargos tenham suas respectivas descrições de atribuições para serem cadastrados.<br />
  94. 94. Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – MER<br />
  95. 95. Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Arquivo de Funcionários<br />ALI – 2RLR – 15DER – Baixa – 7 PF<br />
  96. 96. Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Arquivo de Cargo<br />ALI – 1RLR – 3DER – Baixa – 7 PF<br />
  97. 97. Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Arquivo de Unidade<br />AIE – 2RLR – 4DER – Baixa – 7 PF<br />
  98. 98. Análise de Ponto de Função - APF<br />Exercício – Funções de Dados – Análise Final<br />ALI – 2RLR – 15DER – Baixa – 7 PF<br />ALI – 1RLR – 3DER – Baixa – 7 PF<br />AIE – 2RLR – 4DER – Baixa – 7 PF<br />
  99. 99. Análise de Ponto de Função - APF<br />Conceitos de Modelagem de Dados<br />Entidade<br />É um grupo de dados sobre o qual a informação é coletada (pessoa, lugares, coisas, eventos, etc.)<br />Podem ser instanciadas<br />É algo fundamental e relevante para o usuário manter um conjunto de informações<br />Uma associação entre entidades pode conter seus próprios atributos<br />Envolve informações ou representações de coisas similares, que compartilham características ou propriedades<br />Entidade -> Arquivo lógico<br />
  100. 100. Análise de Ponto de Função - APF<br />Conceitos de Modelagem de Dados<br />Elemento de Dados (ou Data Item)<br />Um componente fundamental da entidade<br />Uma partícula atômica de informação no universo de negócios tratado pelo sistema (aplicação)<br />A menor partícula de informação com sentido para o mundo real de negócios do usuário<br />Linha, registro<br />Grupo de dados relacionados, tratados como uma unidade<br />Elemento de Dados -> DER<br />Grupo de Dados -> RLR<br />
  101. 101. Análise de Ponto de Função - APF<br />Tipos de Entidades – Negócio (bussiness data)<br />Entidades do núcleo de negócios. Mandatório para a área de negócios tratada, identificável e mantido regularmente por funcionalidades determinadas pelo usuário (negócios). Usualmente com vários campos e possibilidade ilimitada de registros.<br />Exemplos:<br />Funcionário<br />Cargos<br />Dependentes<br />Fatura<br />Itens de Fatura<br />Contrato<br />Aditivos de Contrato<br />Clientes<br />
  102. 102. Análise de Ponto de Função - APF<br />Características<br />É obrigatório para a operação da área funcional do usuário<br />É identificável e mantido pelo usuário de negócio<br />Armazena o Dado Principal do usuário para apoiar as transações do negócio<br />É muito dinâmico, ou seja, as operações normais do negócio os induzem a ser regularmente referenciado e usualmente adicionado, alterado ou excluído<br />Como característica física possui campos de chave e geralmente muitos atributos, e pode conter de zero a infinitos registros<br />Tipos de Entidades – Negócio (bussiness data)<br />
  103. 103. Análise de Ponto de Função - APF<br />Tipos de Entidades – Referência (reference data)<br />Obrigatória para a área de negócio tratada, identificável e mantida regularmente por funcionalidades determinadas pelo usuário (usuário administrativo). Contém dados relevantes para o núcleo de negócios tratados pela aplicação. Menos dinâmica com mudanças ocasionais, em resposta à mudanças em ambientes de áreas funcionais do usuário, processos externos ou regras de negócio. Usualmente poucos campos (além de código descrição).<br />Exemplos:<br />FuncionárioCargos Funcionário<br />Cargos<br />Dependentes<br />FaturaImpostos Fatura<br />Itens de Fatura<br />ContratoSaldo Devedor TxJuros<br />Aditivos de Contrato<br />Clientes<br />
  104. 104. Análise de Ponto de Função - APF<br />Tipos de Entidades – Referência (reference data)<br />Características<br />É obrigatória para a área funcional do usuário<br />É identificável pelo usuário<br />Geralmente é mantida pelo usuário (geralmente usuário administrativo)<br />Geralmente construída quando a aplicação é inicialmente implantada e é mantida intermitentemente<br />Armazena os dados para apoiar as atividades principais do usuário<br />É menos dinâmica, ou seja, ocasionalmente se altera com as mudanças nas áreas funcionais, nos processos externos funcionais e/ou nas regras de negocio<br />Transações que processam dados de negócio frequentemente necessitam acessar os dado de referência<br />Como característica física, possui campos de chave e alguns atributos, e geralmente contém ao menos um registro ou um número limitado de registros<br />
  105. 105. Análise de Ponto de Função - APF<br />Tipos de Entidades – Código Descrição (code data)<br />Raramente especificadas pelo usuário (negócios). Listas ou tabelas de tradução de dados codificados ou valores padrão. Descobertas a partir do projeto e não de requisitos funcionais. Podem ser mantidas por usuários (grupo de suporte). Essencialmente estáticas, campos Código/Descrição e poucos registros.<br />Exemplos:<br />FuncionárioCargos Funcionário<br />CargosTipoPag<br />Dependentes<br />FaturaImpostos Fatura<br />Itens de Fatura<br />ContratoSaldo Devedor TxJuros<br />Aditivos de ContratoTipo de TxJuros<br />Clientes<br />
  106. 106. Análise de Ponto de Função - APF<br />Características<br />O dado é obrigatório na área funcional, mas opcionalmente armazenado como um arquivo de dados<br />Geralmente não é identificado como parte dos requisitos funcionais, mas como parte do desenho para alinhar-se aos requisitos técnicos<br />É mantido algumas vezes pelo usuário (geralmente usuário de suporte)<br />Armazena os dados para padronizar e facilitar as atividades do negócio e as transações do negócio.<br />Tipos de Entidades – Código Descrição (code data)<br />
  107. 107. Análise de Ponto de Função - APF<br />Características<br />É essencialmente estático, ou seja, somente se altera com as mudanças decorrentes da operação do negócio<br />Transações de negócio acessam os Dados de Código para melhorar e facilitar a entrada de dados, melhorar a consistência dos dados, assegurar a integridade dos dados, etc.;<br />Como característica física contém campo de chave e geralmente apenas um ou dois atributos; tipicamente contém um número estável de registros, pode representar 50% de todas as entidades na terceira forma normal; algumas vezes “desnormalizada” é colocada em uma tabela física com outros Dados de Código; pode ser implementado de diferentes maneiras, tais como: em aplicações separadas, dicionário de dados, ou HARD-CODED no software.<br />Tipos de Entidades – Código Descrição (code data)<br />
  108. 108. Análise de Ponto de Função - APF<br />Outros exemplos:<br />Situação<br />Código da situação<br />Descrição da situação<br />Tipo de pagamento<br />Código do tipo de pagamento<br />Descrição do pagamento<br />Dados de código ou dados de referência?<br />UF<br />Estado Civil<br />Tipos de munição<br />Marcas de armas<br />Código das cores<br />Tipos de Entidades – Código Descrição (code data)<br />
  109. 109. Análise de Ponto de Função - APF<br />Dica importante<br />Verifique se o dado foi requisitado pelo usuário e, portanto, é relevante para o negócio tratado pela aplicação<br />Se ele nasceu em decorrência de uma atividade de análise / modelagem / projeto<br />Tipos de Entidades<br />
  110. 110. Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e Fronteira<br />Contar Funções Transacionais<br />Contar Funções de Dados<br />ALI<br />AIE<br />EE<br />CE<br />SE<br />Calcular Tamanho Funcional<br />Documentar e Reportar<br />
  111. 111. Análise de Ponto de Função - APF<br />Funções de Transação<br />Funções de Transação<br />Entrada<br />Processamento<br />Saída<br />Arquivos<br />Funções de Dados<br />
  112. 112. Análise de Ponto de Função - APF<br />Funções de Transação<br />É um processo elementar que fornece ao usuário a capacidade de processar dados<br />Podem ser de três tipos: <br />Entradas Externas (EE)<br />Saídas Externas (SE)<br />Consultas Externas (CE)<br />
  113. 113. Análise de Ponto de Função - APF<br />Funções de Transação<br />São fluxos de dados que devem obrigatoriamente cruzar a fronteira da aplicação sendo contada.<br />1.1<br />Fronteira da Aplicação<br />Inserir Produto<br />1.2<br />Usuário<br />Consultar Produto<br />Produtos<br />1.3<br />Saldo de Produto<br />
  114. 114. Análise de Ponto de Função - APF<br />Identificação das Funções de Transação<br />A identificação dos tipos de Funções de Transação nem sempre é trivial por isso o IFPUG construiu a seguinte tabela.<br />
  115. 115. Análise de Ponto de Função - APF<br />Definição de EE – Entrada Externa<br />É um processo elementar no qual dados ou informação de controle atravessam a fronteira da aplicação de fora para dentro.<br />A intenção primária de uma Entrada Externa é manter um ou mais ALI ou alterar o comportamento do sistema<br />EE representam as atividades que CRIAM, ATUZALIZAM ou APAGAM dados ou processam INFORMAÇÃO DE CONTROLE<br />Exemplo:<br />O usuário solicitou a capacidade da aplicação em manter dados no cadastro de funcionários. A manutenção de dados consiste em incluir um novo funcionário, alterar e excluir um funcionário existente.<br />Para APF existem 3 Entradas Externas: uma para a inclusão, uma para alteração e uma para a exclusão de dados do funcionário.<br />
  116. 116. Análise de Ponto de Função - APF<br />Processo de Contagem de EE – Entrada Externa<br />Identificar o processo elementar e verificar se ele se enquadra nas regras de Entrada Externa<br />Determinar a complexidade funcional<br />Determinar a contribuição em Pontos de Função<br />
  117. 117. Análise de Ponto de Função - APF<br />Regras de identificação de EE – Entrada Externa<br />Ao menos um ALI deve ser mantido se os dados, entrando pela fronteira da aplicação, não forem informações de controle (que alteram o comportamento do sistema).<br />1.1<br />Fronteira da Aplicação<br />Inserir Produto<br />1.2<br />Usuário<br />Consultar Produto<br />EE<br />Produtos<br />1.3<br />Saldo de Produto<br />ALI<br />
  118. 118. Análise de Ponto de Função - APF<br />Regras de identificação de EE – Entrada Externa<br />Para o processo elementar identificado, pelo menos uma das três opções abaixo deve ser satisfeita:<br />A lógica de processamento é única e diferente de todas as outras entradas externas na aplicação sendo contada<br />O conjunto de dados elementares referenciados é diferente dos conjuntos referenciados por outras entradas externas na aplicação sendo contada<br />Os ALI mantidos e/ou referenciados e os AIE referenciados são diferentes dos usados por outras entradas externas<br />UNICIDADE<br />
  119. 119. Análise de Ponto de Função - APF<br />Exemplos de EE – Entrada Externa<br />São Entradas Externas:<br />Transações de entrada de dados que mantém um ALI<br />Transações usadas para alterar o comportamento do sistema ou controlar seu fluxo de processamento (informação de controle)<br />Cada processo elementar utilizando uma ou mais telas que mantém um ou mais ALI<br />Cada processo batch único que mantém um ou mais ALI, com dados ou informação de controle que cruzem a fronteira da aplicação<br />Cada atividade de atualização (inserir, alterar ou excluir) poderá ser considerada como uma Entrada Externa, se fizerem parte de um processo elementar<br />Funções de conversão de dados são contabilizadas como entradas externas dentro da contagem de um projeto de desenvolvimento ou manutenção<br />
  120. 120. Análise de Ponto de Função - APF<br />Exemplos de não EE – Entrada Externa<br />Não são Entradas Externas:<br />Processos dentro da fronteira da aplicação para manter um arquivo sem que os dados cruzem a fronteira da aplicação<br />Auxílios à navegação, menus estáticos<br />Parâmetros de entrada que direcionam a recuperação de dados em uma consulta externa<br />Múltiplos métodos para executar uma mesma lógica de uma entrada externa (batch e online)<br />Respostas para uma mensagem que pedem uma confirmação do usuário para exclusão ou qualquer outra transação<br />Dados passados entre partes online e batch da mesma aplicação, quando estes dados não cruzam a fronteira da aplicação<br />Dados passados entre a parte “cliente” e a parte “servidor” dentro da mesma aplicação: estes dados não cruzam a fronteira da aplicação<br />
  121. 121. Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />São utilizados dois fatores:<br />Dado Elementar Referenciado (DER)<br />Arquivo Lógico Referenciado (ALR)<br />
  122. 122. Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />DER – Dado Elementar Referenciado<br />É um campo único, não repetitivo, reconhecido pelo usuário<br />Regras:<br />Contar um DER para cada campo referenciado, único, não repetitivo, reconhecido pelo usuário que cruze a fronteira da aplicação e seja requerido para realizar a Entrada Externa<br />Não contar campos que são recuperados ou derivados pelo sistema e armazenados em um ALI durante um processo elementar de uma EE, se este campo não cruzar a fronteira da aplicação<br />Deve ser contado um DER pela capacidade do sistema em mandar uma mensagem para fora da fronteira da aplicação a fim de indicar um erro ocorrido durante o processo, confirmar um processamento ou indicar que um processamento deve continuar<br />Deve ser contado um DER pela habilidade da aplicação em especificar uma ação a ser tomada, mesmo se existirem múltiplos métodos de invocar o mesmo processo lógico (ex.: linha de comando, teclas, botões, etc.)<br />
  123. 123. Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />ALR – Arquivo Lógico Referenciado<br />É um ALI lido ou mantido pela EE, ou um AIE lido pela EE.<br />Regras:<br />Contar um ALR para cada ALI mantido durante o processo elementar<br />Contar um ALR para cada ALI ou AIE lido durante o processo elementar<br />Contar somente um ALR para cada ALI que seja mantido e lido durante o processo elementar da EE<br />
  124. 124. Análise de Ponto de Função - APF<br />Complexidade Funcional para EE – Entrada Externa<br />
  125. 125. Análise de Ponto de Função - APF<br />Contribuição para EE – Entrada Externa<br />
  126. 126. Análise de Ponto de Função - APF<br />Exemplo para EE – Entrada Externa<br />Na aplicação de Recursos Humanos, o usuário solicitou a capacidade de entrar os dados básicos de um funcionário. Foi, então, elaborada a seguinte tela.<br />Empresa XPTO<br />Sistema de Recursos Humanos<br />Inclusão de Novo Funcionário<br />28/02/2010 21:06<br />Incluir<br />002/10<br />Informe o nº da Matrícula: <br />Marcus de Paula Costa<br />Nome: <br />Rua 2 Casa 50, ACP DFL<br />Endereço:<br />Vila Planalto<br />Brasília<br />Bairro:<br />Cidade:<br />DF<br />71900300<br />UF:<br />CEP:<br />Imprimir<br />Sair<br />61 8888-9900<br />Telefone:<br />OBS: Todas as informações apresentadas são incluídas em um único ALI - Funcionário<br />
  127. 127. Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e Fronteira<br />Contar Funções Transacionais<br />Contar Funções de Dados<br />ALI<br />AIE<br />EE<br />CE<br />SE<br />Calcular Tamanho Funcional<br />Documentar e Reportar<br />
  128. 128. Análise de Ponto de Função - APF<br />Definição de CE – Consulta Externa<br />É um processo elementar que apresenta dados ou informações de controle para fora da fronteira da aplicação<br />A intenção primária de uma Consulta Externa é apresentar informações ao usuário, por meio da recuperação de dados ou informações de controle<br />A lógica de processamento não pode conter fórmulas matemáticas de cálculo, nem criar dados derivados, nem manter ALI ao ser executada e nem alterar o comportamento do sistema<br />Exemplo:<br />O usuário solicitou a capacidade da aplicação de apresentar informações sobre funcionários, tais como estão armazenadas.<br />Para APF existe 1 Consulta Externa, pois apresenta informação de funcionário aos usuários da aplicação.<br />
  129. 129. Análise de Ponto de Função - APF<br />Regras de identificação de CE – Consulta Externa<br />O processo elementar abaixo somente recupera dados de um ALI e apresenta ao usuário.<br />1.1<br />Fronteira da Aplicação<br />Inserir Produto<br />1.2<br />Usuário<br />Consultar Produto<br />Produtos<br />1.3<br />Saldo de Produto<br />CE<br />ALI -> ALR<br />
  130. 130. Análise de Ponto de Função - APF<br />Processo de Contagem de CE – Consulta Externa<br />Identificar o processo elementar e verificar se ele se enquadra nas regras de Consulta Externa<br />Determinar a complexidade funcional<br />Determinar a contribuição em Pontos de Função<br />
  131. 131. Análise de Ponto de Função - APF<br />Regras de identificação de CE – Consulta Externa<br />Todas as regras abaixo devem ser satisfeitas:<br />O processo elementar recupera dados ou informação de controle de um ALI ou AIE<br />A lógica de processamento não contém cálculos<br />A lógica de processamento não cria dados derivados<br />A lógica de processamento não mantêm nenhum ALI<br />A lógica de processamento não altera o comportamento do sistema<br />
  132. 132. Análise de Ponto de Função - APF<br />Regras de identificação de CE – Consulta Externa<br />Para o processo elementar identificado, pelo menos uma das três opções abaixo deve ser satisfeita:<br />A lógica de processamento é única e diferente de todas as outras consultas externas na aplicação sendo contada<br />O conjunto de dados elementares referenciados é diferente dos conjuntos referenciados por outras consultas externas na aplicação sendo contada<br />Os ALI ou AIE referenciados são diferentes dos usados por outras consultas externas<br />UNICIDADE<br />
  133. 133. Análise de Ponto de Função - APF<br />Exemplos de CE – Consulta Externa<br />São Consultas Externas:<br />Relatórios ou telas de apresentação de dados sem cálculos ou dados derivados<br />Transferência de dados para outra aplicação, sem cálculos ou dados derivados<br />Combo boxes ou telas auxiliares apresentando informações recuperadas de um ALI ou AIE<br />Dados que são recuperados de um ou mais ALI e/ou AIE e apresentados com base em um critério de entrada<br />Lista que o usuário clica ou aponta em uma tela para recuperação de dados<br />
  134. 134. Análise de Ponto de Função - APF<br />Exemplos de CE – Consulta Externa<br />Outros exemplos que são CE:<br />Consultas Implícitas: telas de alteração ou remoção de dados, que mostram o que será alterado ou removido antes de sua ação efetiva.<br />OBS: Caso a tela de alteração e remoção sejam idênticas, considerar apenas uma Consulta Externa e, no caso destas serem iguais à tela de Consulta propriamente dita, deve-se considerar apenas a função de consulta como uma Consulta Externa.<br />UNICIDADE<br />
  135. 135. Análise de Ponto de Função - APF<br />Exemplos de não CE – Consulta Externa<br />Não são Consultas Externas:<br />Menu de navegação com somente recursos de seleção de telas<br />Telas de mensagem de erro<br />DropDownlistbox que não acessem dados da aplicação (hardcoded)<br />Mensagens que requeiram confirmação do usuário ou indiquem que o processo está sendo executado -> fazem parte do processo elementar sendo contado<br />Dados passados entre partes online e batch da mesma aplicação, quando estes dados não cruzam a fronteira da aplicação<br />Dados passados entre a parte “cliente” e a parte “servidor” dentro da mesma aplicação: estes dados não cruzam a fronteira da aplicação<br />
  136. 136. Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />São utilizados dois fatores:<br />Dado Elementar Referenciado (DER)<br />Arquivo Lógico Referenciado (ALR)<br />
  137. 137. Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />DER – Dado Elementar Referenciado<br />É um campo único, não repetitivo, reconhecido pelo usuário<br />Regras:<br />Contar um DER para cada campo referenciado, único, não repetitivo, reconhecido pelo usuário que cruze a fronteira da aplicação e requerido para especificar o que ou como os dados serão recuperados pelo processo elementar<br />Contar um DER para cada campo reconhecido pelo usuário e não repetitivo que sai pela fronteira da aplicação<br />Se um DER tanto entra quanto sai pela fronteira da aplicação, conte-o somente uma vez para o processo elementar da CE<br />Deve ser contado 1 (um) DER pela capacidade do sistema em mandar uma mensagem para fora da fronteira da aplicação a fim de indicar um erro ocorrido durante o processo, confirmar um processamento ou indicar que um processamento deve continuar<br />Deve ser contado um DER pela habilidade da aplicação em especificar uma ação a ser tomada, mesmo se existirem múltiplos métodos de invocar o mesmo processo lógico (ex.: linha de comando, teclas, botões, etc.)<br />Não contar como DER literais, paginação, variáveis ou sinalizações geradas pelo sistema<br />
  138. 138. Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />ALR – Arquivo Lógico Referenciado<br />É um ALI ou AIE lido pela CE.<br />Regras:<br />Contar um ALR para cada ALI lido durante o processo elementar<br />Contar um ALR para cada AIE lido durante o processo elementar<br />
  139. 139. Análise de Ponto de Função - APF<br />Complexidade Funcional para CE – Consulta Externa<br />
  140. 140. Análise de Ponto de Função - APF<br />Contribuição para CE – Consulta Externa<br />
  141. 141. Análise de Ponto de Função - APF<br />Exemplo para CE – Consulta Externa<br />Na aplicação de Recursos Humanos, o usuário solicitou a capacidade de apresentar os dados básicos de um funcionário a partir de uma consulta pelo número da matrícula. Foi, então, elaborada a seguinte tela.<br />Empresa XPTO<br />Sistema de Recursos Humanos<br />Consulta de Funcionário<br />28/02/2010 21:06<br />Pesquisar<br />002/10<br />Informe o nº da Matrícula: <br />Marcus de Paula Costa<br />Nome: <br />Rua 2 Casa 50, ACP DFL<br />Endereço:<br />Vila Planalto<br />Brasília<br />Bairro:<br />Cidade:<br />DF<br />71900300<br />UF:<br />CEP:<br />61 8888-9900<br />Telefone:<br />Imprimir<br />Sair<br />OBS: Todas as informações apresentadas são recuperadas em um único ALI - Funcionário<br />
  142. 142. Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e Fronteira<br />Contar Funções Transacionais<br />Contar Funções de Dados<br />ALI<br />AIE<br />EE<br />CE<br />SE<br />Calcular Tamanho Funcional<br />Documentar e Reportar<br />
  143. 143. Análise de Ponto de Função - APF<br />Definição de SE – Saída Externa<br />É um processo elementar que apresenta dados ou informação de controle para fora da fronteira da aplicação<br />A intenção primária de uma Consulta Externa é apresentar informações ao usuário, por meio de um processamento lógico diferente de, e em adição a, uma recuperação de dados ou informação de controle<br />A lógica de processamento deve conter ao menos uma fórmula ou cálculo matemático ou criar dados derivados<br />Uma Saída Externa pode também manter um ou mais ALIs ou alterar o comportamento do sistema<br />Exemplo:<br />O usuário solicitou um relatório contendo, além das informações básicas de funcionários (nome, endereço, telefone, matrícula, etc.) um cálculo do tempo de casa de cada um deles. O relatório inclusive, deve ser classificado em ordem descendente pelo calor de cálculo de tempo de casa.<br />Para APF existe 1 Saída Externa, pois apresenta cálculo no relatório apresentado.<br />
  144. 144. Análise de Ponto de Função - APF<br />Regras de identificação de SE – Saída Externa<br />O processo elementar abaixo realiza um cálculo para apresentar o saldo de produtos para o usuário.<br />1.1<br />Fronteira da Aplicação<br />Inserir Produto<br />1.2<br />Usuário<br />Consultar Produto<br />Produtos<br />1.3<br />Saldo de Produto<br />ALI -> ALR<br />SE<br />
  145. 145. Análise de Ponto de Função - APF<br />Processo de Contagem de SE – Saída Externa<br />Identificar o processo elementar e verificar se ele se enquadra nas regras de Saída Externa<br />Determinar a complexidade funcional<br />Determinar a contribuição em Pontos de Função<br />
  146. 146. Análise de Ponto de Função - APF<br />Regras de identificação de SE – Saída Externa<br />Pelo menos uma das regras abaixo devem ser satisfeitas para o processo elementar ser contado como uma Saída Externa (SE):<br />A lógica de processamento contém ao menos um cálculo matemático<br />A lógica de processamento cria dados derivados<br />A lógica de processamento mantém ao menos um ALI<br />A lógica de processamento altera o comportamento do sistema<br />
  147. 147. Análise de Ponto de Função - APF<br />Regras de identificação de SE – Saída Externa<br />Para o processo elementar identificado, pelo menos uma das três opções abaixo deve ser satisfeita:<br />A lógica de processamento é única e diferente de todas as outras saídas externas na aplicação sendo contada<br />O conjunto de dados elementares referenciados é diferente dos conjuntos referenciados por outras consultas externas na aplicação sendo contada<br />Os ALI ou AIE referenciados são diferentes dos usados por outras saídas externas<br />UNICIDADE<br />
  148. 148. Análise de Ponto de Função - APF<br />Exemplos de SE – Saída Externa<br />São Saídas Externas:<br />Relatórios ou telas de apresentação de dados com cálculos ou dados derivados<br />Transferência de dados para outra aplicação, com cálculos ou dados derivados<br />Funcionalidades de consulta que, ao serem executadas, fazem manutenção em ALI<br />Gráfico exibidos (gráfico de barra, pizza, etc.)<br />Etiquetas com código de barras<br />Telas de logon<br />
  149. 149. Análise de Ponto de Função - APF<br />Exemplos de não SE – Saída Externa<br />Não são Saídas Externas:<br />Menu de navegação com somente recursos de seleção de telas<br />Telas de mensagem de erro, cancelamento ou confirmação de processamento<br />Relatórios múltiplus: processos que possuem o mesmo formato de saída e a mesma lógica de processamento, separados apenas por conveniência, são considerados apenas como uma saída<br />Relatórios criados diretamente pelo próprio usuário, utilizando-se de ferramentas de extração de dados flexíveis, ainda que provida pela aplicação, não são considerados como Saídas Externas<br />
  150. 150. Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saídas Externa<br />São utilizados dois fatores:<br />Dado Elementar Referenciado (DER)<br />Arquivo Lógico Referenciado (ALR)<br />
  151. 151. Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saída Externa<br />DER – Dado Elementar Referenciado<br />É um campo único, não repetitivo, reconhecido pelo usuário<br />Regras:<br />Contar um DER para cada campo único, não repetitivo, reconhecido pelo usuário que cruze a fronteira da aplicação e requerido para especificar o que ou como os dados serão recuperados e/ou gerados pelo processo elementar<br />Não contar campos que são recuperados ou derivados pelo sistema e armazenados em um ALI durante o processo elementar, se este campo não cruzar a fronteira da aplicação<br />Contar um DER para cada campo reconhecido pelo usuário e não repetitivo que sai pela fronteira da aplicação<br />Se um DER tanto entra quanto sai pela fronteira da aplicação, conte-o somente uma vez para o processo elementar da SE<br />Deve ser contado 1 (um) DER pela capacidade do sistema em mandar uma mensagem para fora da fronteira da aplicação a fim de indicar um erro ocorrido durante o processo, confirmar um processamento ou indicar que um processamento deve continuar<br />Deve ser contado um DER pela habilidade da aplicação em especificar uma ação a ser tomada, mesmo se existirem múltiplos métodos de invocar o mesmo processo lógico (ex.: linha de comando, teclas, botões, etc.)<br />Não contar como DER literais, paginação, variáveis ou sinalizações geradas pelo sistema<br />
  152. 152. Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saída Externa<br />ALR – Arquivo Lógico Referenciado<br />É um ALI lido ou mantido ou AIE lido pela SE.<br />Regras:<br />Contar um ALR para cada ALI mantido durante o processo elementar<br />Contar um ALR para cada ALI ou AIE lido durante o processo elementar<br />Contar somente um ALR quando um ALI for mantido e lido pelo processo elementar da SE<br />
  153. 153. Análise de Ponto de Função - APF<br />Complexidade Funcional para SE – Saída Externa<br />
  154. 154. Análise de Ponto de Função - APF<br />Contribuição para SE – Saída Externa<br />
  155. 155. Análise de Ponto de Função - APF<br />Exemplo para SE – Saída Externa<br />Na aplicação de Recursos Humanos, o usuário solicitou a capacidade de apresentar os dados básicos de um funcionário a partir de uma consulta pelo número da matrícula. Também apresentar o tempo de casa calculado pelo sistema. Foi, então, elaborada a seguinte tela.<br />Empresa XPTO<br />Sistema de Recursos Humanos<br />Inclusão de Novo Funcionário<br />28/02/2010 21:06<br />Pesquisar<br />002/10<br />Informe o nº da Matrícula: <br />Marcus de Paula Costa<br />Nome: <br />Rua 2 Casa 50, ACP DFL<br />Endereço:<br />Campo Calculado Pelo Sistema<br />Vila Planalto<br />Brasília<br />Bairro:<br />Cidade:<br />DF<br />71900300<br />UF:<br />CEP:<br />61 8888-9900<br />Telefone:<br />Tempo de Casa:<br />2 anos e 60 dias<br />Imprimir<br />Sair<br />OBS: Todas as informações apresentadas são recuperadas em um único ALI - Funcionário<br />
  156. 156. Análise de Ponto de Função - APF<br />Lógicas de Processamento para EE, CE e SE<br />
  157. 157. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />ALI<br />ALI<br />ALI<br />AIE<br />Para o sistema de Controle de Reservas Cliente, Reserva e Apartamento são ALI. E Funcionário é um AIE.<br />Para o sistema de Pessoal Funcionário é um ALI.<br />
  158. 158. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Regras Gerais<br />Em todos os exemplos, considere que as funcionalidades possuem algum botão, ou link ou coisa parecida que forneça um meio para comandar a ação (CCA – Capacidade de Controlar Ação)<br />Considere também que todas as funcionalidades possuem mensagens que são emitidas para o usuário (CEM – Capacidade de Emitir Mensagem)<br />A próxima tela apresenta a tela de inclusão de reserva no sistema<br />
  159. 159. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Registro de Reserva<br />Número da Reserva: [ _ _ _ _ ]<br />Matrícula do Funcionário: [ _ _ _ _ ]<br />Código do Cliente: [ _ _ _ _ ]<br />Data da Reserva: [ _ _ _ _ ]<br />Período: Início: [ _ _ _ _ ] Fim: [ _ _ _ _ ] Tipo Apto: [ _ _ ]<br />Pessoa: [ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ]<br />Número Apartamento: [ _ _ _ _ ]<br />
  160. 160. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Regras de Validação para que a inclusão ocorra:<br />Se a reserva já existe (o sistema deve verificar se já existe uma reserva com o número digitado)<br />Verificar se o funcionário está cadastrado (é verificado no repositório de funcionário do sistema de Pessoal)<br />Verificar se o cliente está cadastrado (é verificado no repositório de cliente)<br />Validar a data da reserva (é verificado no repositório de reservas se já existe uma reserva para esse período para o número do apartamento informado)<br />Verificar se o apartamento existe (é verificado se o número do apartamento informado existe no repositório de apartamento)<br />
  161. 161. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />ALR Resultado:<br />Arquivo de Reserva (é lido na validação se a reserva já existe e é gravado com os dados da reserva)<br />Contar Somente um ALR, pois se trata de ALI lido e mantido durante o processo elementar.<br />Arquivo de Funcionário (é lido para verificar se o funcionário existe)<br />Contar um ALR, pois se trata de um AIE lido durante a execução do processo elementar<br />Arquivo de Clientes (é lido para ver se o cliente informado já estava cadastrado)<br />Contar um ALR, pois se trata de um ALI lido durante a execução do processo elementar<br />Arquivo de Apartamento (é lido para verificar se o apartamento existe)<br />Contar um ALR, pois se trata de um ALI lido durante a execução do processo elementar<br />Para execução do Processo Elementar são utilizados 4 ALR<br />
  162. 162. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />DERs Resultado:<br />Número da Reserva<br />Matrícula do Funcionário<br />Código do Cliente<br />Data da Reserva<br />Período Início<br />Período Fim<br />Tipo Apto<br />Pessoa<br />Número do Apartamento<br />São utilizados 4 ALR e 9 DERs na Tela + 1 CCA + 1 CEM = 11 DER<br />
  163. 163. Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Qual a complexidade funcional desta EE de registro de Reservas? (Verifique na tabela de EE)<br />
  164. 164. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />A próxima tela é a alteração da reserva. <br />Os dados foram obtidos a partir de uma consulta pelo código da reserva.<br />Na tela tudo pode ser alterado menos o Código da Reserva e o Código do Cliente<br />Caso seja necessário mudar um cliente de uma reserva é necessário excluir a reserva e criar uma nova para o novo cliente<br />As regras de validação são as mesmas das utilizadas ao inserir uma reserva, porém não executa a validação de cliente.<br />
  165. 165. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Alteração de Reserva<br />Número da Reserva: [ 0023/2010 ]<br />Matrícula do Funcionário: [ 34985 ]<br />Código do Cliente: [ 34778 ]<br />Data da Reserva: [ 01/03/2010 ]<br />Período: Início: [ 05/03/2010 ] Fim: [ 10/03/2010 ] Tipo Apto: [ D ]<br />Pessoa: [ Aderbal Luiz Imóveis – ALI ]<br />Número Apartamento: [ 207 ]<br />
  166. 166. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />ALR Resultado:<br />Arquivo de Reserva (é lido na validação se a reserva já existe e é gravado com os dados da reserva)<br />Contar Somente um ALR, pois se trata de ALI lido e mantido durante o processo elementar.<br />Arquivo de Funcionário (é lido para verificar se o funcionário existe)<br />Contar um ALR, pois se trata de um AIE lido durante a execução do processo elementar<br />Arquivo de Apartamento (é lido para verificar se o apartamento existe)<br />Contar um ALR, pois se trata de um ALI lido durante a execução do processo elementar<br />Para execução do Processo Elementar são utilizados 3 ALR<br />
  167. 167. Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />DERs Resultado:<br />Número da Reserva<br />Matrícula do Funcionário<br />Código do Cliente<br />Data da Reserva<br />Período Início<br />Período Fim<br />Tipo Apto<br />Pessoa<br />Número do Apartamento<br />Na tela são 9 DERs menos 1 DER do Código do Cliente = 8 + CCA + CEM = 10 DER<br />O código da reserva é contado porque o sistema precisa localizar a reserva a ser alterada<br />
  168. 168. Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Qual a complexidade funcional desta EE de Alterar Reservas? (Verifique na tabela de EE)<br />
  169. 169. Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Exclusão de Reserva<br />Número da Reserva: [ _ _ _ _ _ _ _ _ _ ]<br />Matrícula do Funcionário: [ _ _ _ _ _ ]<br />
  170. 170. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Arquivos Referenciados<br />Arquivo de Reservas<br />Arquivo de Funcionário<br />Regras de Validação<br />Verificar se a reserva existe<br />Verificar se o funcionário está cadastrado, pois somente funcionários cadastrados podem excluir reservas<br />Faça a Contagem!!!<br />
  171. 171. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />O próximo exemplo é o relatório de reservas<br />Desconsiderar os campos de filtro apenas considerar as informações do relatório<br />O sistema apenas recupera as informações do repositório de reservas<br />
  172. 172. Estudo de Caso – Sistema de Reservas<br />Análise de Ponto de Função - APF<br />Relatório de Reservas Data 02/02/2010<br />Período<br />Início Fim<br />Nome /Sobrenome<br />Tipo Apto<br />SS<br />01/02/2010<br />10/03/2010<br />Aderbal Luiz Imóveis - ALI<br />
  173. 173. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Resultado:<br />Apenas 1 ALR, pois todas as informações vem do repositório de reserva<br />DERs:<br />Nome e Sobrenome<br />Tipo Apartamento<br />Período início<br />Período fim<br />CCA<br />CEM<br />É uma Consulta Externa ( não tem cálculo, nem dado derivado, nem mantém ALI ao ser realizada nem tampouco altera o comportamento do sistema ao ser realizada.<br />
  174. 174. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Relatório de Apartamentos Data 02/02/2010<br />Número<br />Tipo Apto<br />SS<br />Aderbal Luiz Imóveis - ALI<br /><ul><li> Arquivo Referenciado
  175. 175. Arquivo de Apartamentos
  176. 176. Regras
  177. 177. Relacionar todos os apartamentos cadastrados</li></li></ul><li>Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Resultado de Apartamento:<br />ALR = 1<br />DERs = 4<br />
  178. 178. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Relatório de Ocupação no Período início: 02/02/2010 até 10/03/2010<br />Semana<br />05 a 11<br />12 a 18<br />19 a 25<br />Ocupação<br />Apto SS<br />12<br />10<br />19<br />65%<br />Apto CS<br />20<br />4<br />10<br />45%<br />Apto SL<br />3<br />200<br />4<br />37%<br />Apto CL<br />23<br />45<br />9<br />10%<br />Apto VIP<br />234<br />4<br />78<br />80%<br />Vazio<br />5<br />50<br />10<br />40%<br />Arquivos Referenciados:<br /> - Reservas<br />Regras:<br /> - A ocupação é calculada pela média aritmética das ocupações divididas pelo<br /> total de apartamentos disponíveis<br /> - Período é informado como parâmetro<br />
  179. 179. Análise de Ponto de Função - APF<br />Estudo de Caso – Sistema de Reservas<br />Resultado:<br />ALR<br />Só o ALI de Reserva. Tudo está dentro dele, inclusive o tipo de apartamento que é usado nas contagens de totais de apartamentos para as contas necessárias.<br />DERs (Lembrando que DERs são informações reconhecidas pelo usuário):<br />Data de Início<br />Data de Fim<br />Identificação da Semana<br />Identificação do Tipo de Apartamento<br />Coluna de totais por tipo de apartamento (6 DERs, um para cada coluna)<br />Percentuais de ocupação por tipo de apartamento (6 DERs para cada total por tipo de apartamento)<br />CCA<br />CEM<br />É uma Saída Externa, pois realizo cálculos.<br />Resultado: 1 ALR / 18 DERs<br />
  180. 180. Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e Fronteira<br />Contar Funções Transacionais<br />Contar Funções de Dados<br />ALI<br />AIE<br />EE<br />CE<br />SE<br />Calcular Tamanho Funcional<br />Documentar e Reportar<br />
  181. 181. Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Formula para Projeto de Desenvolvimento<br />Contagem Estimada<br />Projeto de Desenvolvimento<br />Projeto A<br />Contagem Final<br />Projeto de Desenvolvimento<br />Projeto A<br />Projeto Completo<br />Inicializa<br />Contagem da Aplicação/Baseline<br />Contagem Estimada<br />Projeto de Melhoria<br />Projeto B<br />Contagem Final<br />Projeto de Melhoria<br />Projeto B<br />Atualiza<br />Projeto Completo<br />
  182. 182. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Projeto de Desenvolvimento<br />DFP = ADD + CFP<br />ONDE:<br />DFP – Pontos de Função do projeto de desenvolvimento<br />ADD – Tamanho funcional das funcionalidades entregues ao usuário na conclusão do projeto<br />CFP – Tamanho funcional das funcionalidades de conversão de dados<br />
  183. 183. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Projeto de Desenvolvimento<br />Funcionalidades identificadas no projeto:<br /> 2 ALI – Baixa = 14PF<br /> 1 AIE – Baixa = 5PF<br /> 10 EE – Média = 40PF<br /> 6 CE – Alta = 36PF<br /> 4 SE – Média = 20PF<br /> 5 EE – Baixa = 15PF (Conversão de Dados)<br />DFP = ADD + CFP<br />DFP = (14+5+40+36+20) + 15 => 130PF<br />
  184. 184. Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Formula para Iniciar a Contagem da Aplicação<br />Contagem Estimada<br />Projeto de Desenvolvimento<br />Projeto A<br />Contagem Final<br />Projeto de Desenvolvimento<br />Projeto A<br />Projeto Completo<br />Inicializa<br />Contagem da Aplicação/Baseline<br />Contagem Estimada<br />Projeto de Melhoria<br />Projeto B<br />Contagem Final<br />Projeto de Melhoria<br />Projeto B<br />Atualiza<br />Projeto Completo<br />
  185. 185. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Iniciar a contagem da aplicação após um projeto de desenvolvimento<br />AFP = ADD<br />ONDE:<br />AFP – Pontos de Função da aplicação<br />ADD – Tamanho funcional das funcionalidades entregues ao usuário na conclusão do projeto<br />Não utiliza o tamanho funcional das funções para Conversão de Dados identificadas no Projeto de Desenvolvimento!!!<br />
  186. 186. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Iniciar a contagem da aplicação após um projeto de desenvolvimento<br />Funcionalidades identificadas no projeto de desenvolvimento:<br /> 2 ALI – Baixa = 14PF<br /> 1 AIE – Baixa = 5PF<br /> 10 EE – Média = 40PF<br /> 6 CE – Alta = 36PF<br /> 4 SE – Média = 20PF<br /> 5 EE – Baixa = 15PF (Conversão de Dados não são levadas em consideração)<br />AFP = ADD<br />AFP = (14+5+40+36+20) => 115PF<br />
  187. 187. Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Contagem Estimada<br />Projeto de Desenvolvimento<br />Projeto A<br />Contagem Final<br />Projeto de Desenvolvimento<br />Projeto A<br />Projeto Completo<br />Inicializa<br />Contagem da Aplicação/Baseline<br />Contagem Estimada<br />Projeto de Melhoria<br />Projeto B<br />Contagem Final<br />Projeto de Melhoria<br />Projeto B<br />Atualiza<br />Projeto Completo<br />Formula para Projeto de Melhoria<br />
  188. 188. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Projeto de Melhoria<br />EFP = ADD + CHGA + DEL + CFP<br />ONDE:<br />EFP – Pontos de Função do projeto de melhoria<br />ADD – Tamanho funcional das funcionalidades adicionadas à aplicação<br />CHGA – Tamanho funcional das funcionalidades alteradas após o projeto de melhoria<br />DEL – Tamanho funcional das funcionalidades removidas da aplicação<br />CFP – Tamanho funcional das funcionalidades de conversão de dados<br />
  189. 189. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Projeto de Melhoria<br />Funcionalidades identificadas no projeto:<br /> 1 AIE – Baixa = 5PF (Alterado Depois)<br /> 3 EE – Média = 12PF (Adicionados)<br /> 1 CE – Alta = 3PF (Excluído)<br /> 1 EE – Baixa = 3PF (Conversão de Dados)<br />EFP = ADD + CHGA + DEL + CFP<br />EFP = (12) + (5) + (3) + (3) => 23PF<br />
  190. 190. Análise de Ponto de Função - APF<br />Relacionamento entre os tipos de contagem<br />Contagem Estimada<br />Projeto de Desenvolvimento<br />Projeto A<br />Contagem Final<br />Projeto de Desenvolvimento<br />Projeto A<br />Projeto Completo<br />Inicializa<br />Contagem da Aplicação/Baseline<br />Contagem Estimada<br />Projeto de Melhoria<br />Projeto B<br />Contagem Final<br />Projeto de Melhoria<br />Projeto B<br />Atualiza<br />Projeto Completo<br />Formula para Atualizar contagem da Aplicação após Projeto de Melhoria<br />
  191. 191. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Atualizar a contagem da aplicação após um projeto de melhoria<br />AFPA = (AFPB + ADD + CHGA) – (CHGB + DEL)<br />ONDE:<br />AFP – Pontos de Função da aplicação depois do projeto de melhoria<br />ADD – Tamanho funcional das funcionalidades entregues ao usuário na conclusão do projeto<br />CHGA – Tamanho funcional das funcionalidades alteradas depois do projeto de melhoria<br />CHGB – Tamanho funcional das funcionalidades alteradas antes do projeto de melhoria<br />DEL – Tamanho funcional das funcionalidades excluídas no projeto de melhoria<br />
  192. 192. Análise de Ponto de Função - APF<br />Calcular o Tamanho Funcional<br />Exemplo: Atualizar a contagem da aplicação após um projeto de melhoria<br />Tamanho funcional da aplicação antes do projeto de melhoria:<br /> 115PF<br />Funcionalidades identificadas no projeto:<br /> 1 AIE – Média = 7PF (Alterado Antes)<br /> 1 AIE – Baixa = 5PF (Alterado Depois)<br /> 3 EE – Média = 12PF (Adicionados)<br /> 1 CE – Alta = 3PF (Excluído)<br /> 1 EE – Baixa = 3PF (Conversão de Dados)<br />AFPA = (AFPB + ADD + CHGA) – (CHGB + DEL)<br />AFPA = (115 + 12 + 5) – (7 + 3) => 132 – 10 => 122PF<br />
  193. 193. Análise de Ponto de Função - APF<br />Visão Geral da APF<br />APF<br />Reunir documentação<br />Propósito, Tipo, Escopo e Fronteira<br />Contar Funções Transacionais<br />Contar Funções de Dados<br />ALI<br />AIE<br />EE<br />CE<br />SE<br />Calcular Tamanho Funcional<br />Documentar e Reportar<br />
  194. 194. Análise de Ponto de Função - APF<br />Reportar o Resultado da Contagem<br />Deve ser apresentado um relatório de contagem<br />O tamanho funcional deve ser apresentado da seguinte maneira<br />S PF (IFPUG-IS)<br />Onde:<br /> S – O resultado da contagem<br /> PF – É a unidade de tamanho conforme o método IFPUG FSM<br /> IS – É o padrão internacional (ISO/IEC 20926:200x)<br />Exemplo:<br /> 250 PF (IFPUG-ISO/IEC 20926:2009)<br />
  195. 195. Análise de Ponto de Função - APF<br />Reportar o Resultado da Contagem<br />O tamanho funcional que utilizar um guia local customizado com base na método do IFPUG deve ser apresentado da seguinte forma:<br />S PF (IFPUG-IS-c)<br />Onde:<br /> S – O resultado da contagem<br /> PF – É a unidade de tamanho conforme o método IFPUG FSM<br /> IS – É o padrão internacional (ISO/IEC 20926:200x)<br /> c – Caractere que informa que o resultado não é totalmente aderente à técnica.<br />Exemplo:<br /> 250 PF (IFPUG-ISO/IEC 20926:2009-a)<br />
  196. 196. Análise de Ponto de Função - APF<br />FIM<br />Muito Obrigado<br />
  197. 197. Análise de Ponto de Função - APF<br />Referências<br />IFPUG CountingPratices Manual – Version 4.3 – Janeiro de 2010<br />IFPUG Framework for Functional Sizing - Version 1.0<br />BFPUG – http://www.bfpug.com.br<br />Análise de pontos de Função: Medição, Estimativas e Gerenciamento de Projetos de Software – Carlos Vazquez, GuilhermeSimões e Renato Albert<br />

×