SlideShare uma empresa Scribd logo
Métricas em
Projetos de Software
Marcelo Daibert
http://daibert.pro – marcelo@daibert.pro
Aula 3
Apresentação
• Marcelo Daibert
– Graduado em Sistemas de Informação pela FMG
– Especialista em Ciência da Computação pela UFV
– Mestre em Ciência da Computação pela UFV
– Gerente Técnico da Opticalhost – Optical Soluções em
Informática LTDA
– Coordenador e Professor do Curso de Graduação em Ciência
da Computação da FAGOC – Faculdade Governador Ozanam
Coelho
– Lattes: http://lattes.cnpq.br/2823279949488775
– Email – MSN – Google Talk: marcelo@daibert.pro
– Site: http://daibert.pro
– Twitter - @msdaibert
– Submissão de Trabalhos / Projetos: http://suporte.daibert.pro
Agenda – Aula 2
• Técnica Delhi – Relatório Final
• PF – Análise de Pontos de Funções
• UCP – Use Case Points (?)
Técnica Delphi
• Relatório
APF – Análise de Pontos de Funções
• Function Point Analysis – FPA
• Quantifica o produto do trabalho de
desenvolvimento e manutenção de sistemas no
que diz a respeito de funções efetivamente
entregues ao usuário final, independentemente
da metodologia e ferramentas utilizadas
APF – Histórico
• 1974 GUIDE - IBM
• 1979 IBM - Allan Albrecht
• 1986 IFPUG
SPQR/20
• 1993 Function Point Workbench
APF
• Define uma medida utilizada para determinar o
tamanho de uma aplicação. Ela se baseia nas
funções executadas pela aplicação do ponto de
vista do usuário
• Premissas:
– Entradas Externas
– Saídas Externas
– Arquivos Lógicos Internos
– Arquivos de Interface Externa
– Consulta Externa
APF
• Entrada Externa:
– Processo elementar que processa dados ou
informações de controle vindos de fora da fronteira
da aplicação. A principal intenção de uma EE é
manter um ou mais ALI e/ou alterar o
comportamento do sistema
APF
• Saída Externa:
– Processo elementar que gera dados ou informações
de controle que saem da fronteira da aplicação
– Principal objetivo de uma SE é apresentar dados ao
usuário por meio de lógica de processamento que
não seja apenas recuperação de dados.
– A lógica de processamento deve obrigatóriamente
conter ao menos uma fórmula matemática ou
cálculo, ou criar dados derivados. Pode também
manter um ou mais ALIs e/ou alterar o
comportamento do sistema
APF
• Saída Externa:
– Exemplos:
• Relatórios com totalizações de dados
• Relatórios que também atualizam arquivos
• Consultar com apresentação de dados derivados ou cálculos
• Geração de arquivos de movimento para outra aplicação
• Informações em formatos gráficos
– Não Exemplos:
• Consultas e relatórios sem nenhum totalizador, que não atualiza
ALI, não tem dado derivado ou modificam o comportamento do
sistema
• Dois relatórios iguais, apenas com a distinção de ordenação
APF
• Arquivos Lógicos Internos
– Grupos lógicos de dados do ponto de vista do
usuário cuja manutenção é feita internamente na
aplicação
• Arquivos de Interface Externa:
– Grupo lógico de dados que passa de uma aplicação
para outra cuja manutenção pertence a outra
aplicação
APF
• Consulta Externa:
– Processo elementar que envia dados ou informações
de controle para for a da fronteira da aplicação
– A principal de uma CE é apresentar informação ao
usuário por meio de uma simples recuperação de
dados de ALIs e/ou AIEs. A lógica de processamento
não deve conter fórmula matemática ou cálculo,
criar dados derivados, manter um ou mais ALI e/ou
alterar o comportamento do sistema.
APF - Processo
• Identificar e enumerar as funções da aplicação:
– Número de Entradas Externas, Saídas Externas,
Arquivos Lógicos Internos, Arquivos de Interface
Externa e Consultas Externas
• Classificar cada uma das funções identificadas
no seu nível de complexidade
– Simples, médio ou complexo
APF - Processo
• Ajustar o número de pontos de função brutos ao
nível de complexidade de processamento
APF – Complexidade Entrada Externa
APF – Complexidade Saída Externa
APF – Complexidade ALI
APF – Complexidade AIE
APF – Complexidade Consulta Externa
APF – Pesos
APF – Produtividade / Linguagem
APF – Ajuste
• Para determinar o fator de ajuste, deve-se
estimar o nível de influência para cada uma das
características da aplicação relacionada abaixo:
APF – Ajuste
• Comunicação de Dados
APF – Ajuste
• Funções Distribuídas
APF – Ajuste
• Performance
APF – Ajuste
• Configuração do Equipamento
APF – Ajuste
• Volume de Transações
APF – Ajuste
• Entrada de Dados online
APF – Ajuste
• Interface com o Usuário
– •Auxílio à navegação (teclas de função, acesso direto e menus dinâmicos)
– •Menus, Menus pop-up windows
– •Documentação on-line (help on-line)
– •Movimento automático do cursor, Movimento de tela (scrolling) vertical e
horizontal
– •Impressão remota (através de transações on-line),Processos batch submetidos a
partir de transações on-line
– •Teclas de função pré-definidas, Seleção de cursor em campos da tela
– •Utilização intensa de campos com vídeo-reverso, intensificados, coloridos e
outros efeitos
– •Impressão da documentação das transações on-line através de hard-copy
– •Utilização de mouse ou outros dispositivos apontadores
– •O menor número possível de telas para executar as funções do negócio (fácil
navegação)
– •Suporte bilíngue (suporte a duas línguas, contar como quatro itens)
– •Suporte multilíngue (suporte a mais de duas línguas, contar como seis itens)
APF – Ajuste
• Interface com o Usuário
APF – Ajuste
• Atualização online
APF – Ajuste
• Processamento Complexo
– Controle sensitivo – processamento especial de
auditoria – e/ou processamento de segurança
específica da aplicação
– Processamento lógico extensivo
– Processamento matemático extensivo
– Processamento gerando muitas exceções, resultando
em transaçòes incompletas que devem ser
processadas novamente
– Processamento complexo para manusear múltiplas
possibilidades de entrada/saída - multimedia
APF – Ajuste
• Processamento Complexo
APF – Ajuste
• Reutilização
APF – Ajuste
• Facilidade de Implantação
APF – Ajuste
• Facilidade Operacional
APF – Ajuste
• Múltiplos Locais
APF – Ajuste
• Facilidade de Mudanças – Flexibilidade
– Estão disponíveis facilidades como consultas e
relatórios flexíveis para atender necessidades
simples – conte como 1 item
– Estão disponíveis facilidades como consultas e
relatórios flexíveis para atender as necessidades de
complexidade média – conte como 2 itens
– Estão disponíveis facilidades como consultadas e
relatórios flexíveis para atender as necessidades
complexas – conte como 3 itens
APF – Ajuste
• Facilidade de Mudanças – Flexibilidade
– Dados de controle são armazenados em tabelas que
são mantidas pelo usuário através de processos
online, mas mudanças são tornadas efetivas
somente no dia seguinte
– Dados de controle são armazenados em tabelas que
são mantidas pelo usuário através de processos
online, as mudanças tem efeito imediatamente
APF – Ajuste
• Facilidade de Mudanças – Flexibilidade
APF – Ajuste
• Fator de Ajuste:
– FA = 0,65 + (0,01 * NI)
– NI – Nível de Influencia
– FA – Fator de Ajuste
APF – Dinâmica
• Vamos contar…
• Teoria:
– Só aprende fazendo…
APF – Exemplo
• Funcionalidades do Protótipo:
– Listas Clientes
– Incluir, excluir e alterar clientes
– Listas produtos
– Incluir, excluir e alterar produtos
– Listar histtórico de vendas
– Incluir histórico de vendas
– Relatório de vendas
APF – Exemplo
• Modelo Lógico
APF – Exemplo
• Arquivo Lógico Interno
*DET – Data Element Type
*RET – Record Element Type
APF – Exemplo
• Arquivo Lógico Interno
APF – Exemplo
• Arquivo Lógico Interno
APF – Exemplo
• Arquivo Lógico Interno
*DET – Data Element Type
*RET – Record Element Type
APF – Exemplo
• Entrada Externa
– Incluir Cliente
– Excluir Cliente
– Alterar Cliente
– Incluir produto
– Excluir produto
– Alterar produto
– Incluir histórico de vendas
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Entrada Externa
APF – Exemplo
• Saída Externa
– Relatório de Vendas
APF – Exemplo
• Saída Externa
APF – Exemplo
• Saída Externa
APF – Exemplo
• Saída Externa
APF – Exemplo
• Consulta Externa
– Listas Clientes
– Listar Produtos
– Listar Histórico de Vendas
– Criação de Entradas Externa querer várias Consultas
Externas
• Entrada externa para recuperar dados do cliente
• Entrada externa para recuperar a lista de produtos
APF – Exemplo
• Consulta Externa
APF – Exemplo
• Consulta Externa
APF – Exemplo
• Consulta Externa
APF – Exemplo
• Consulta Externa
APF – Exemplo
• Consulta Externa
APF – Exemplo
• Consulta Externa
APF – Exemplo
• Resumo Final
UCP – Use Case Points
• Método criado por Gustav Karner – 1993
• Objetivo: Medir projetos orientados a objetos
– APF – Estruturado
– UCP – OO
• São avaliados principalmente os Casos de Uso
• Entretanto são avaliados ainda:
– TCF – Fatores de complexidade técnica
– EF – Fatores Ambientes
UCP – Processo
• Calcular o UUCP – Unadjusted Use Case Point
– Relacionar e classificar os atores envolvidos –
complexidade abaixo:
UCP – Processo
• Calcular o UUCP – Unadjusted Use Case Point
– Relacionar e classificar os casos de uso –
complexidade abaixo:
UCP – Processo
• Calcular o UUCP – Unadjusted Use Case Point
– UUCP = Total de pesos dos atores relacionados +
total de pesos dos casos de uso relacionados
UCP – Processo
• Calcular o TCF (Technical Complexity Factor):
– Atribuir um valor a cada fator em uma escala de 0 a
5, onde o 0 significa que o fator é irrelevante e 5
significa que é essencial. Se o fator não é importante
e não é irrelevante deve-se atribuir valor 3
UCP – Processo
• Calcular o TCF (Technical Complexity Factor):
UCP – Processo
• Calcular o TCF (Technical Complexity Factor):
– Multiplicar o valor (fator) atribuído pelo respectivo
peso, gerando a coluna resultado
– Totalizar o resultado da multiplicação - TFATOR
– Calcular o fator de complexidade de acordo com a
seguinte fórmula:
• TCF = 0,6 + (0,01 * TFATOR)
UCP – Processo
• Calcular o EF (Environmental Factor)
– Atribuir um valor a cada fator em uma escala de 0 a
5, onde o 0 significa que o fator é irrelevante e 5
significa que é essencial. Se o fator não é importante
e não é irrelevante, deve-se atribuir valor 3
UCP – Processo
• Calcular o EF (Environmental Factor)
UCP – Processo
• Calcular o EF (Environmental Factor)
– Multiplicar o valor (fator) atribuído pelo respectivo
peso (coluna resultado)
– Totalizar o resultado da multiplicação – EFATOR
– Calcular o fator de complexidade com a fórmula:
• EF = 1,4 + (-0,03 * EFATOR)
UCP – Processo
• Calcular o UCP – Use Case Points
– UCP – UUCP * TCF * EF
– Karner sugere a aplicação de 20hs/homem por
ponto de UCP
• Estimativa (horas) = UCP * 20;

Mais conteúdo relacionado

Mais procurados

Sistemas Computacionais - Aula 02 - Definição de SI - Composição
Sistemas Computacionais - Aula 02 - Definição de SI - ComposiçãoSistemas Computacionais - Aula 02 - Definição de SI - Composição
Sistemas Computacionais - Aula 02 - Definição de SI - Composição
Leinylson Fontinele
 
Administração de Sistemas de Informação - aula 3
Administração de Sistemas de Informação - aula 3Administração de Sistemas de Informação - aula 3
Administração de Sistemas de Informação - aula 3
Paulo Sérgio Ramão
 
Gerenciamento de Projetos SAP: Do Método a Prática
Gerenciamento de Projetos SAP: Do Método a PráticaGerenciamento de Projetos SAP: Do Método a Prática
Gerenciamento de Projetos SAP: Do Método a Prática
Projetos e TI
 
Sistema de gestão empresarial integrada ERP
Sistema de gestão empresarial integrada ERPSistema de gestão empresarial integrada ERP
Sistema de gestão empresarial integrada ERP
Eduardo Braga Jr
 
Treinamento SAP ABAP
Treinamento SAP ABAPTreinamento SAP ABAP
Treinamento SAP ABAP
Marcos Aurelio Paixao
 
Introdução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de Computadores
Mauro Pereira
 
Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...
Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...
Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...
ssuser9293ae
 
TCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PP
TCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PPTCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PP
TCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PP
Edson Domenech
 
What's New in Oracle EPM Cloud
What's New in Oracle EPM CloudWhat's New in Oracle EPM Cloud
What's New in Oracle EPM Cloud
Perficient, Inc.
 
Sistemas Computacionais - Aula 01 - Apresentação
Sistemas Computacionais - Aula 01 - ApresentaçãoSistemas Computacionais - Aula 01 - Apresentação
Sistemas Computacionais - Aula 01 - Apresentação
Leinylson Fontinele
 
Desenvolvimento Web com PHP - Aula 1
Desenvolvimento Web com PHP - Aula 1Desenvolvimento Web com PHP - Aula 1
Desenvolvimento Web com PHP - Aula 1
Thyago Maia
 
Aula 7 - Planilhas
Aula 7 - PlanilhasAula 7 - Planilhas
Aula 7 - Planilhas
LucasMansueto
 
Sap Hr Presentation 08052002
Sap Hr Presentation 08052002Sap Hr Presentation 08052002
Sap Hr Presentation 08052002
Anand Shanmugam
 
Segurança da Informação - Aula 9 - Introdução a Auditoria de Sistemas
Segurança da Informação - Aula 9 - Introdução a Auditoria de SistemasSegurança da Informação - Aula 9 - Introdução a Auditoria de Sistemas
Segurança da Informação - Aula 9 - Introdução a Auditoria de Sistemas
Cleber Fonseca
 
Introducao à Informatica Aplicada
Introducao à Informatica AplicadaIntroducao à Informatica Aplicada
Introducao à Informatica Aplicada
Clausia Antoneli
 
Sistemas de Informação - Aula05 - cap5 bd e business intelligence
Sistemas de Informação - Aula05 - cap5 bd e business intelligenceSistemas de Informação - Aula05 - cap5 bd e business intelligence
Sistemas de Informação - Aula05 - cap5 bd e business intelligence
CEULJI/ULBRA Centro Universitário Luterano de Ji-Paraná
 
Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores
Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadoresArquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores
Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores
Cleber Fonseca
 
Como Acessar Ambiente de Treinamento SAP? [COMPLETO]
Como Acessar Ambiente de Treinamento SAP? [COMPLETO]Como Acessar Ambiente de Treinamento SAP? [COMPLETO]
Como Acessar Ambiente de Treinamento SAP? [COMPLETO]
Leonardo Ribeiro
 
Tipos de Sistema de Informação
Tipos de Sistema de InformaçãoTipos de Sistema de Informação
Tipos de Sistema de Informação
Robson Santos
 
Presentation introduction to sap
Presentation introduction to sapPresentation introduction to sap
Presentation introduction to sap
peddada venkata surya
 

Mais procurados (20)

Sistemas Computacionais - Aula 02 - Definição de SI - Composição
Sistemas Computacionais - Aula 02 - Definição de SI - ComposiçãoSistemas Computacionais - Aula 02 - Definição de SI - Composição
Sistemas Computacionais - Aula 02 - Definição de SI - Composição
 
Administração de Sistemas de Informação - aula 3
Administração de Sistemas de Informação - aula 3Administração de Sistemas de Informação - aula 3
Administração de Sistemas de Informação - aula 3
 
Gerenciamento de Projetos SAP: Do Método a Prática
Gerenciamento de Projetos SAP: Do Método a PráticaGerenciamento de Projetos SAP: Do Método a Prática
Gerenciamento de Projetos SAP: Do Método a Prática
 
Sistema de gestão empresarial integrada ERP
Sistema de gestão empresarial integrada ERPSistema de gestão empresarial integrada ERP
Sistema de gestão empresarial integrada ERP
 
Treinamento SAP ABAP
Treinamento SAP ABAPTreinamento SAP ABAP
Treinamento SAP ABAP
 
Introdução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de Computadores
 
Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...
Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...
Implantando A Governança de Ti - da Estratégia À Gestão Dos Processos e Servi...
 
TCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PP
TCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PPTCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PP
TCC - PLANEJAMENTO E CONTROLE DA PRODUÇÃO COM ERP SAP PP
 
What's New in Oracle EPM Cloud
What's New in Oracle EPM CloudWhat's New in Oracle EPM Cloud
What's New in Oracle EPM Cloud
 
Sistemas Computacionais - Aula 01 - Apresentação
Sistemas Computacionais - Aula 01 - ApresentaçãoSistemas Computacionais - Aula 01 - Apresentação
Sistemas Computacionais - Aula 01 - Apresentação
 
Desenvolvimento Web com PHP - Aula 1
Desenvolvimento Web com PHP - Aula 1Desenvolvimento Web com PHP - Aula 1
Desenvolvimento Web com PHP - Aula 1
 
Aula 7 - Planilhas
Aula 7 - PlanilhasAula 7 - Planilhas
Aula 7 - Planilhas
 
Sap Hr Presentation 08052002
Sap Hr Presentation 08052002Sap Hr Presentation 08052002
Sap Hr Presentation 08052002
 
Segurança da Informação - Aula 9 - Introdução a Auditoria de Sistemas
Segurança da Informação - Aula 9 - Introdução a Auditoria de SistemasSegurança da Informação - Aula 9 - Introdução a Auditoria de Sistemas
Segurança da Informação - Aula 9 - Introdução a Auditoria de Sistemas
 
Introducao à Informatica Aplicada
Introducao à Informatica AplicadaIntroducao à Informatica Aplicada
Introducao à Informatica Aplicada
 
Sistemas de Informação - Aula05 - cap5 bd e business intelligence
Sistemas de Informação - Aula05 - cap5 bd e business intelligenceSistemas de Informação - Aula05 - cap5 bd e business intelligence
Sistemas de Informação - Aula05 - cap5 bd e business intelligence
 
Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores
Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadoresArquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores
Arquiteturas Paralelas e Distribuídas - Aula 2 - Arquiteturas de computadores
 
Como Acessar Ambiente de Treinamento SAP? [COMPLETO]
Como Acessar Ambiente de Treinamento SAP? [COMPLETO]Como Acessar Ambiente de Treinamento SAP? [COMPLETO]
Como Acessar Ambiente de Treinamento SAP? [COMPLETO]
 
Tipos de Sistema de Informação
Tipos de Sistema de InformaçãoTipos de Sistema de Informação
Tipos de Sistema de Informação
 
Presentation introduction to sap
Presentation introduction to sapPresentation introduction to sap
Presentation introduction to sap
 

Semelhante a APF

Aula 01
Aula 01Aula 01
Aula 01
Edvan Lima
 
Aula3
Aula3Aula3
Aula3
Edvan Lima
 
[Parfor] esw aula 04
[Parfor] esw   aula 04[Parfor] esw   aula 04
[Parfor] esw aula 04
César França
 
Análise de Pontos de Função
Análise de Pontos de FunçãoAnálise de Pontos de Função
Análise de Pontos de Função
Cristhiano Garcia
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
Claudio Martins
 
sapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdfsapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdf
MarcosYamashita3
 
Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...
Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...
Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...
Éberli Cabistani Riella
 
Sap Solution Manager
Sap Solution ManagerSap Solution Manager
Sap Solution Manager
Gilson Correia
 
Planejamento projeto masiero
Planejamento projeto masieroPlanejamento projeto masiero
Planejamento projeto masiero
Maitsudá Matos
 
Aula 7 - Técnicas de Planejamento
Aula 7 - Técnicas de PlanejamentoAula 7 - Técnicas de Planejamento
Aula 7 - Técnicas de Planejamento
Filipo Mór
 
Rational Unfied Process
Rational Unfied ProcessRational Unfied Process
Rational Unfied Process
Jerônimo Medina Madruga
 
Portuguese Quadrate Overview 2010
Portuguese Quadrate Overview 2010Portuguese Quadrate Overview 2010
Portuguese Quadrate Overview 2010
Alejandro Millalen
 
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
André Leon S. Gradvohl
 
Nesma
NesmaNesma
Estimativa de Software em Pontos de Caso de Uso
Estimativa de Software em Pontos de Caso de UsoEstimativa de Software em Pontos de Caso de Uso
Estimativa de Software em Pontos de Caso de UsoE-NOVAR Solutions
 
Requisitos de software
Requisitos de softwareRequisitos de software
Requisitos de software
Marcelo Yamaguti
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
Comunidade NetPonto
 
347842.ppt
347842.ppt347842.ppt
347842.ppt
PedrinaBrasil2
 
APF- Análise de Ponto de Função
APF- Análise de Ponto de FunçãoAPF- Análise de Ponto de Função
APF- Análise de Ponto de Função
Wagner Silva
 
Aula 6 - Gerenciamento de Escopo
Aula 6 - Gerenciamento de EscopoAula 6 - Gerenciamento de Escopo
Aula 6 - Gerenciamento de Escopo
Matheus de Lara Calache
 

Semelhante a APF (20)

Aula 01
Aula 01Aula 01
Aula 01
 
Aula3
Aula3Aula3
Aula3
 
[Parfor] esw aula 04
[Parfor] esw   aula 04[Parfor] esw   aula 04
[Parfor] esw aula 04
 
Análise de Pontos de Função
Análise de Pontos de FunçãoAnálise de Pontos de Função
Análise de Pontos de Função
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
 
sapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdfsapsolutionmanager-novo.pdf
sapsolutionmanager-novo.pdf
 
Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...
Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...
Fábrica de Software da Procempa - Palestra no 6o Fórum Internacional Software...
 
Sap Solution Manager
Sap Solution ManagerSap Solution Manager
Sap Solution Manager
 
Planejamento projeto masiero
Planejamento projeto masieroPlanejamento projeto masiero
Planejamento projeto masiero
 
Aula 7 - Técnicas de Planejamento
Aula 7 - Técnicas de PlanejamentoAula 7 - Técnicas de Planejamento
Aula 7 - Técnicas de Planejamento
 
Rational Unfied Process
Rational Unfied ProcessRational Unfied Process
Rational Unfied Process
 
Portuguese Quadrate Overview 2010
Portuguese Quadrate Overview 2010Portuguese Quadrate Overview 2010
Portuguese Quadrate Overview 2010
 
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
Introdução aos sistemas distribuídos on-line para processamento de fluxos de ...
 
Nesma
NesmaNesma
Nesma
 
Estimativa de Software em Pontos de Caso de Uso
Estimativa de Software em Pontos de Caso de UsoEstimativa de Software em Pontos de Caso de Uso
Estimativa de Software em Pontos de Caso de Uso
 
Requisitos de software
Requisitos de softwareRequisitos de software
Requisitos de software
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 
347842.ppt
347842.ppt347842.ppt
347842.ppt
 
APF- Análise de Ponto de Função
APF- Análise de Ponto de FunçãoAPF- Análise de Ponto de Função
APF- Análise de Ponto de Função
 
Aula 6 - Gerenciamento de Escopo
Aula 6 - Gerenciamento de EscopoAula 6 - Gerenciamento de Escopo
Aula 6 - Gerenciamento de Escopo
 

APF

  • 1. Métricas em Projetos de Software Marcelo Daibert http://daibert.pro – marcelo@daibert.pro Aula 3
  • 2. Apresentação • Marcelo Daibert – Graduado em Sistemas de Informação pela FMG – Especialista em Ciência da Computação pela UFV – Mestre em Ciência da Computação pela UFV – Gerente Técnico da Opticalhost – Optical Soluções em Informática LTDA – Coordenador e Professor do Curso de Graduação em Ciência da Computação da FAGOC – Faculdade Governador Ozanam Coelho – Lattes: http://lattes.cnpq.br/2823279949488775 – Email – MSN – Google Talk: marcelo@daibert.pro – Site: http://daibert.pro – Twitter - @msdaibert – Submissão de Trabalhos / Projetos: http://suporte.daibert.pro
  • 3. Agenda – Aula 2 • Técnica Delhi – Relatório Final • PF – Análise de Pontos de Funções • UCP – Use Case Points (?)
  • 5. APF – Análise de Pontos de Funções • Function Point Analysis – FPA • Quantifica o produto do trabalho de desenvolvimento e manutenção de sistemas no que diz a respeito de funções efetivamente entregues ao usuário final, independentemente da metodologia e ferramentas utilizadas
  • 6. APF – Histórico • 1974 GUIDE - IBM • 1979 IBM - Allan Albrecht • 1986 IFPUG SPQR/20 • 1993 Function Point Workbench
  • 7. APF • Define uma medida utilizada para determinar o tamanho de uma aplicação. Ela se baseia nas funções executadas pela aplicação do ponto de vista do usuário • Premissas: – Entradas Externas – Saídas Externas – Arquivos Lógicos Internos – Arquivos de Interface Externa – Consulta Externa
  • 8. APF • Entrada Externa: – Processo elementar que processa dados ou informações de controle vindos de fora da fronteira da aplicação. A principal intenção de uma EE é manter um ou mais ALI e/ou alterar o comportamento do sistema
  • 9. APF • Saída Externa: – Processo elementar que gera dados ou informações de controle que saem da fronteira da aplicação – Principal objetivo de uma SE é apresentar dados ao usuário por meio de lógica de processamento que não seja apenas recuperação de dados. – A lógica de processamento deve obrigatóriamente conter ao menos uma fórmula matemática ou cálculo, ou criar dados derivados. Pode também manter um ou mais ALIs e/ou alterar o comportamento do sistema
  • 10. APF • Saída Externa: – Exemplos: • Relatórios com totalizações de dados • Relatórios que também atualizam arquivos • Consultar com apresentação de dados derivados ou cálculos • Geração de arquivos de movimento para outra aplicação • Informações em formatos gráficos – Não Exemplos: • Consultas e relatórios sem nenhum totalizador, que não atualiza ALI, não tem dado derivado ou modificam o comportamento do sistema • Dois relatórios iguais, apenas com a distinção de ordenação
  • 11. APF • Arquivos Lógicos Internos – Grupos lógicos de dados do ponto de vista do usuário cuja manutenção é feita internamente na aplicação • Arquivos de Interface Externa: – Grupo lógico de dados que passa de uma aplicação para outra cuja manutenção pertence a outra aplicação
  • 12. APF • Consulta Externa: – Processo elementar que envia dados ou informações de controle para for a da fronteira da aplicação – A principal de uma CE é apresentar informação ao usuário por meio de uma simples recuperação de dados de ALIs e/ou AIEs. A lógica de processamento não deve conter fórmula matemática ou cálculo, criar dados derivados, manter um ou mais ALI e/ou alterar o comportamento do sistema.
  • 13. APF - Processo • Identificar e enumerar as funções da aplicação: – Número de Entradas Externas, Saídas Externas, Arquivos Lógicos Internos, Arquivos de Interface Externa e Consultas Externas • Classificar cada uma das funções identificadas no seu nível de complexidade – Simples, médio ou complexo
  • 14. APF - Processo • Ajustar o número de pontos de função brutos ao nível de complexidade de processamento
  • 15. APF – Complexidade Entrada Externa
  • 16. APF – Complexidade Saída Externa
  • 19. APF – Complexidade Consulta Externa
  • 21. APF – Produtividade / Linguagem
  • 22. APF – Ajuste • Para determinar o fator de ajuste, deve-se estimar o nível de influência para cada uma das características da aplicação relacionada abaixo:
  • 23. APF – Ajuste • Comunicação de Dados
  • 24. APF – Ajuste • Funções Distribuídas
  • 25. APF – Ajuste • Performance
  • 26. APF – Ajuste • Configuração do Equipamento
  • 27. APF – Ajuste • Volume de Transações
  • 28. APF – Ajuste • Entrada de Dados online
  • 29. APF – Ajuste • Interface com o Usuário – •Auxílio à navegação (teclas de função, acesso direto e menus dinâmicos) – •Menus, Menus pop-up windows – •Documentação on-line (help on-line) – •Movimento automático do cursor, Movimento de tela (scrolling) vertical e horizontal – •Impressão remota (através de transações on-line),Processos batch submetidos a partir de transações on-line – •Teclas de função pré-definidas, Seleção de cursor em campos da tela – •Utilização intensa de campos com vídeo-reverso, intensificados, coloridos e outros efeitos – •Impressão da documentação das transações on-line através de hard-copy – •Utilização de mouse ou outros dispositivos apontadores – •O menor número possível de telas para executar as funções do negócio (fácil navegação) – •Suporte bilíngue (suporte a duas línguas, contar como quatro itens) – •Suporte multilíngue (suporte a mais de duas línguas, contar como seis itens)
  • 30. APF – Ajuste • Interface com o Usuário
  • 31. APF – Ajuste • Atualização online
  • 32. APF – Ajuste • Processamento Complexo – Controle sensitivo – processamento especial de auditoria – e/ou processamento de segurança específica da aplicação – Processamento lógico extensivo – Processamento matemático extensivo – Processamento gerando muitas exceções, resultando em transaçòes incompletas que devem ser processadas novamente – Processamento complexo para manusear múltiplas possibilidades de entrada/saída - multimedia
  • 33. APF – Ajuste • Processamento Complexo
  • 34. APF – Ajuste • Reutilização
  • 35. APF – Ajuste • Facilidade de Implantação
  • 36. APF – Ajuste • Facilidade Operacional
  • 37. APF – Ajuste • Múltiplos Locais
  • 38. APF – Ajuste • Facilidade de Mudanças – Flexibilidade – Estão disponíveis facilidades como consultas e relatórios flexíveis para atender necessidades simples – conte como 1 item – Estão disponíveis facilidades como consultas e relatórios flexíveis para atender as necessidades de complexidade média – conte como 2 itens – Estão disponíveis facilidades como consultadas e relatórios flexíveis para atender as necessidades complexas – conte como 3 itens
  • 39. APF – Ajuste • Facilidade de Mudanças – Flexibilidade – Dados de controle são armazenados em tabelas que são mantidas pelo usuário através de processos online, mas mudanças são tornadas efetivas somente no dia seguinte – Dados de controle são armazenados em tabelas que são mantidas pelo usuário através de processos online, as mudanças tem efeito imediatamente
  • 40. APF – Ajuste • Facilidade de Mudanças – Flexibilidade
  • 41. APF – Ajuste • Fator de Ajuste: – FA = 0,65 + (0,01 * NI) – NI – Nível de Influencia – FA – Fator de Ajuste
  • 42. APF – Dinâmica • Vamos contar… • Teoria: – Só aprende fazendo…
  • 43. APF – Exemplo • Funcionalidades do Protótipo: – Listas Clientes – Incluir, excluir e alterar clientes – Listas produtos – Incluir, excluir e alterar produtos – Listar histtórico de vendas – Incluir histórico de vendas – Relatório de vendas
  • 44. APF – Exemplo • Modelo Lógico
  • 45. APF – Exemplo • Arquivo Lógico Interno *DET – Data Element Type *RET – Record Element Type
  • 46. APF – Exemplo • Arquivo Lógico Interno
  • 47. APF – Exemplo • Arquivo Lógico Interno
  • 48. APF – Exemplo • Arquivo Lógico Interno *DET – Data Element Type *RET – Record Element Type
  • 49. APF – Exemplo • Entrada Externa – Incluir Cliente – Excluir Cliente – Alterar Cliente – Incluir produto – Excluir produto – Alterar produto – Incluir histórico de vendas
  • 50. APF – Exemplo • Entrada Externa
  • 51. APF – Exemplo • Entrada Externa
  • 52. APF – Exemplo • Entrada Externa
  • 53. APF – Exemplo • Entrada Externa
  • 54. APF – Exemplo • Entrada Externa
  • 55. APF – Exemplo • Entrada Externa
  • 56. APF – Exemplo • Entrada Externa
  • 57. APF – Exemplo • Entrada Externa
  • 58. APF – Exemplo • Entrada Externa
  • 59. APF – Exemplo • Entrada Externa
  • 60. APF – Exemplo • Entrada Externa
  • 61. APF – Exemplo • Entrada Externa
  • 62. APF – Exemplo • Entrada Externa
  • 63. APF – Exemplo • Entrada Externa
  • 64. APF – Exemplo • Entrada Externa
  • 65. APF – Exemplo • Entrada Externa
  • 66. APF – Exemplo • Saída Externa – Relatório de Vendas
  • 67. APF – Exemplo • Saída Externa
  • 68. APF – Exemplo • Saída Externa
  • 69. APF – Exemplo • Saída Externa
  • 70. APF – Exemplo • Consulta Externa – Listas Clientes – Listar Produtos – Listar Histórico de Vendas – Criação de Entradas Externa querer várias Consultas Externas • Entrada externa para recuperar dados do cliente • Entrada externa para recuperar a lista de produtos
  • 71. APF – Exemplo • Consulta Externa
  • 72. APF – Exemplo • Consulta Externa
  • 73. APF – Exemplo • Consulta Externa
  • 74. APF – Exemplo • Consulta Externa
  • 75. APF – Exemplo • Consulta Externa
  • 76. APF – Exemplo • Consulta Externa
  • 77. APF – Exemplo • Resumo Final
  • 78. UCP – Use Case Points • Método criado por Gustav Karner – 1993 • Objetivo: Medir projetos orientados a objetos – APF – Estruturado – UCP – OO • São avaliados principalmente os Casos de Uso • Entretanto são avaliados ainda: – TCF – Fatores de complexidade técnica – EF – Fatores Ambientes
  • 79. UCP – Processo • Calcular o UUCP – Unadjusted Use Case Point – Relacionar e classificar os atores envolvidos – complexidade abaixo:
  • 80. UCP – Processo • Calcular o UUCP – Unadjusted Use Case Point – Relacionar e classificar os casos de uso – complexidade abaixo:
  • 81. UCP – Processo • Calcular o UUCP – Unadjusted Use Case Point – UUCP = Total de pesos dos atores relacionados + total de pesos dos casos de uso relacionados
  • 82. UCP – Processo • Calcular o TCF (Technical Complexity Factor): – Atribuir um valor a cada fator em uma escala de 0 a 5, onde o 0 significa que o fator é irrelevante e 5 significa que é essencial. Se o fator não é importante e não é irrelevante deve-se atribuir valor 3
  • 83. UCP – Processo • Calcular o TCF (Technical Complexity Factor):
  • 84. UCP – Processo • Calcular o TCF (Technical Complexity Factor): – Multiplicar o valor (fator) atribuído pelo respectivo peso, gerando a coluna resultado – Totalizar o resultado da multiplicação - TFATOR – Calcular o fator de complexidade de acordo com a seguinte fórmula: • TCF = 0,6 + (0,01 * TFATOR)
  • 85. UCP – Processo • Calcular o EF (Environmental Factor) – Atribuir um valor a cada fator em uma escala de 0 a 5, onde o 0 significa que o fator é irrelevante e 5 significa que é essencial. Se o fator não é importante e não é irrelevante, deve-se atribuir valor 3
  • 86. UCP – Processo • Calcular o EF (Environmental Factor)
  • 87. UCP – Processo • Calcular o EF (Environmental Factor) – Multiplicar o valor (fator) atribuído pelo respectivo peso (coluna resultado) – Totalizar o resultado da multiplicação – EFATOR – Calcular o fator de complexidade com a fórmula: • EF = 1,4 + (-0,03 * EFATOR)
  • 88. UCP – Processo • Calcular o UCP – Use Case Points – UCP – UUCP * TCF * EF – Karner sugere a aplicação de 20hs/homem por ponto de UCP • Estimativa (horas) = UCP * 20;