Pontos de Função - PF COCOMO

Documentos relacionados
Pontos de Função PF e COCOMO

Gerência e Planejamento de Projeto. SCE Engenharia de Software Profs. José Carlos Maldonado e Elisa Yumi Nakagawa 2 o semestre de 2002

Planejamento de Projeto de Software: Estimativas de Esforço e Custo

Análise de Ponto de Função APF. Aula 04

Simulado para CFPS. Questões de Propósito, Tipo e Fronteira. 1. Um dos objetivos da Análise de Pontos de Função é:

Engenharia de Software II

GPS - Gestão de Projeto de Software

Análise de Ponto de Função APF. Aula 05

ANÁLISE DE PONTOS DE

Medidas de Esforço de Desenvolvimento de Software

Gerência de Projetos e Manutenção de Software Aula 4 Planejamento de Projetos (Estimativas) Andréa Magalhães Magdaleno 2017.

Análise de Ponto de Função APF. Aula 03

Mais sobre modelos usados para classificar o tipo do software

Análise de Pontos de Função

ANÁLISE DE PONTOS DE FUNÇÃO E SUA IMPORTÂNCIA PARA PROJETOS DE DESENVOLVIMENTO DE SOFTWARE

Projeto e Desenvolvimento de Software

INSTITUTO FEDERAL DE CIÊNCIA E TECNOLOGIA DE SÃO PAULO PROJETO SOLUTION MARKET'S

Orientação prática para preenchimento da Planilha de Contagem NESMA (EFP)

Análise de Ponto de Função APF. Aula 07

Medidas de Esforço de Desenvolvimento de Software

Pontos de Função. André Chastel Lima Andréia Ferreira Pinto Diego Souza Campos. Engenharia de Software Mestrado Ciência da Computação - UFMS

FATTO CONSULTORIA E SISTEMAS

Análise de Ponto de Função APF. Aula 01

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini /

Ciência da Computação ENGENHARIA DE SOFTWARE. Métricas e Estimativas do Projeto

Ferramenta: Spider-CoCoMo

Análise de Pontos de Função Carlos Eduardo Vazquez

Plano de Projeto. Tema 3. Gerência de Projetos Profa. Susana M. Iglesias

UMA ANÁLISE DE MÉTRICAS DE SOFTWARE ORIENTADAS À FUNÇÃO E SUA APLICAÇÃO AO DESENVOLVIMENTO ORIENTADO A OBJETOS

Revisão: Estimando o tamanho do projeto

Barcode Rede VW Guia de Consulta Rápido

Análise de Ponto de Função APF. Aula 02

Medidas de Esforço de Desenvolvimento de Software

CAU Controle de Acesso Unificado. Manual de Usuário

SISTEMA SGPS GESTÃO DE PLANO DE SAÚDE

Métricas de processo e projeto de software

1. DESCRIÇÃO DA DEMANDA

Estimativa de Esforço. Estimativas de Software. Subjetividade da Estimativa. Incerteza de Estimativa. Técnicas de Estimativas

Análise de Pontos de Função Inicial

Síntese das discussões do fórum Livro-APF: Outubro/2012

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Manual do Aplicativo de Configuração

Nota Fiscal de Serviços Eletrônica (NFS-e)

Estimação com Métricas Indiretas e Contagem de Pontos de Função

Planejamento de Projeto de Software: Estimativas de Esforço e Custo

Carregar Documentos Fiscais Fornecedor (Modelo 93) Fatura de Conhecimento de Transporte. Última Atualização 11/01/2019

Documento de Requisitos*

Geração de Necessidades de Materiais. Sumário

Serasa - PEFIN. Desenvolvido o programa para gerar remessa de inclusão e exclusão de clientes no Serasa.

Carregar Documentos Fiscais - Fornecedor (Modelo 57) - Conhecimento de Transporte Eletrônico. Última Atualização 11/01/2019

Atualização de Cadastros de Funcionários

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE SÃO PAULO IFSP CAMPUS PRESIDENTE EPITÁCIO

Aula 05 - ES - Métricas de Software

Atualizações da Versão Introdução aos Contratos de Netting... 4 Conhecendo o Produto... 5 Ações dos botões das telas... 6

Manual de Versão Sistema Condomínio21

O proponente deve especificar a política de encerramento de contrato de manutenção e transferência da aplicação;

NOTA FISCAL DE SERVIÇOS ELETRÔNICA (NFS-e)

NOTA FISCAL DE SERVIÇOS ELETRÔNICA (NFS-e)

Passo a Passo para o esocial

Passo a Passo para o esocial

Troca de Informações Através de Arquivo Pessoa Jurídica

Manual de Operacionalização do Módulo de Prestação de Contas PCS

Engenharia de Software II

Banco de Dados. SGBDs. Professor: Charles Leite

Roteiro da auditoria dos dados para o esocial

PLANEJAMENTO DO PROJETO

Notificações do Sistema

CRA-CE. Manual Sistema de DISTRIBUIÇÃO. Versão 2.0

MANUAL DO USUÁRIO MÓDULO GEOCODIFICAÇÃO

1.5. Interface inicial (Ambiente de trabalho TDMAx Web

Ajuste de Títulos Cartões de Crédito

Sumário REGISTRADOR ELETRÔNICO DE PONTO - REP-1000 REGISTRADOR ELETRÔNICO DE PONTO - REP-1000

Manual do Usuário. Sistema de Contas Públicas

Uso das ferramentas APF e COCOMO para estimativa da capacidade produtiva da TI

Gerenciamento Fiscal do Linx POS

Manual de Utilização do Cadastro de Beneficiários Integrado - CBI

4.1.3 Busca ampliada na base nacional (CADSUS) Adicionar cidadão do Cadastro da Atenção Básica

Manual da Nova Administração Sistema CRC. Manual do usuário da Nova Versão da Administração do Sistema da CRC.

Nota Fiscal de Serviços Eletrônica Importação do plano de contas bancárias

Manual do Módulo do Fabricante

MANUAL PERFIL ADMINISTRADOR LOCAL

CONTEÚDO Acesso ao sistema...2 Controle de Aplicação Tela de Autenticação...3 MENU DE OPÇÕES DO SISTEMA Cadastro do Colaborador...

SIE - SISTEMA DE INFORMAÇÕES PARA O ENSINO USUÁRIOS AUXÍLIO TRANSPORTE

Medidas do Esforço de Desenvolvimento de Software

MANUAL EXTERNO. Sistema de Registro de Garantias sobre Veículos Automotores

Sistema de Controle de Pedidos SISCOP. SISCOP Sistema de Controle Pedidos RT002 Incluir Ponto Remoto Estratégia de Testes. Versão 2.

Estimativa por Use Case Point (UCP)

TransactionCentre - Módulo Client.exe Pré-Autorização

Localização BR. Documentação do Patch 001 ao 002. Sage Enterprise Management Versão

Instituto de Ciências Matemáticas e de Computação. PONTOS DE FUNÇÃO Uma medida funcional de tamanho de software N RELATÓRIOS TÉCNICOS DO ICMC

Manual do Usua rio - OAB Serviços

Gestão Unificada de Recursos Institucionais GURI

CENTRALIZADO DO WHL E1G PROCEDIMENTO PARA GERENCIAMENTO DE USUÁRIOS E SENHAS

Este manual contém as principais funcionalidades e explicações a respeito do funcionamento do portal de vendas PULVITEC.

Fazer um calculo no produto Empresarial.

Transcrição:

Pontos de Função - PF COCOMO SCE 186 - Engenharia de Software Profs. José Carlos Maldonado e Elisa Yumi Nakagawa 2 o semestre de 2002 Material elaborado pela Prof. Sandra C.P.F. Fabbri (DC/UFScar)

PF - Pontos de Função (métrica) 2

Ló gicos Ló gico Interno Os conceitos de Pontos de Função foram introduzidos por Allan J. Albrecht, em uma conferência do GUIDE Grupo de Usuários IBM, em 1979. Mais tarde, esses conceitos foram refinados em uma metodologia formal e em 1984 foram publicados para domínio público. 3

Ló gicos Ló gico Interno Arquivos Externos Arquivos Internos Entradas s Saídas s Consultas s Pontos de Função Brutos Avaliação das 14 características e determinação do nível de influência Fator de Ajuste Pontos de Função Ajustados 4

Os pontos de função brutos refletem especificamente a contagem da funcionalidade que será fornecida ao usuário pela aplicação. Ló gicos Ló gico Interno Arquivos Externos Arquivos Internos Entradas s Saídas s Consultas s Pontos de Função Brutos Avaliação das 14 características e determinação do nível de influência Fator de Ajuste Pontos de Função Ajustados 5

Ló gicos Ló gico Interno Mínima exigida para a contagem é: Layout dos arquivos internos Esboço dos relatórios Esboço das telas de entrada de dados Esboço das telas de consulta Layout dos arquivos externos (do ambiente) 6

Exemplo de layout de Arquivo Interno Ló gicos Ló gico Interno Modelo Entidade Relacionamento (MER) Clientes Item de dados tamanho tipo Código-cliente 6 Numérico Nome-cliente 12 Alfa Razão-social 30 Alfa Tipo-cliente 2 Numérico Território 3 Alfa Endereço 30 Alfa Bairro 12 Alfa CEP 8 Numérico Cidade 12 Alfa CGC 12 Numérico Inscrição-estadual 12 Numérico Contato-1 20 Alfa Telefone-1 10 Numérico Contato-2 20 Alfa Telefone-2 10 Numérico 7

Exemplo de Esboç o de Relató rio Relação de Clientes Data / / Página Ló gicos Ló gico Interno Código Nome Razão Social Tipo Território CGC Inscr. Est. Contato Telefone...................................................... Total de Clientes 8

Ex. de Esboço de Tela de Entrada Inclusão de Clientes Código [ ] Nome [ ] Razão Social [ ] Tipo [ ] Território [ ] cgc [ ] Inscrição Estadual [ ] Endereço [ ] Bairro [ ] CEP [ ]Cidade [ ] Contato-1 [ ] Telefone [ ] Contato-2 [ ] Telefone [ ] 9

Ex. de Esboço de Tela de Consulta Consulta - Cadastro de Clientes Código do Cliente [ ] Nome [ ] Razão social [ ] Tipo [ ] Território [ ] CGC [ ] Inscrição Estadual [ ] Endereço [ ] Bairro [ ] CEP [ ] Cidade [ ] Contato-1 [ ] Telefone [ ] Total compra ano [ ] Total compra mês atual [ ] 10

Ex. de layout de Arquivo Externo Histórico de Clientes item de dados tamanho Tipo Código-cliente 6 Numérico Produto-1-mais-comprado-94 12 Numérico Valor-compra-produto-1-94 12 Numérico Preço-medio-prod-1-94 12 Numérico Produto-2-mais-comprado-94 12 Numérico Valor-compra-produto-2-94 12 Numérico Preço-médio-prod-2-94 12 Numérico Produto-3-mais-comprado-94 12 Numérico Valor-compra-produto-3-94 12 Numérico Preço-médio-prod-3-94 12 Numérico Total-compra-ano-anterior 12 Numérico Total-compra-ano 12 Numérico Total-compra-mês-atual 12 Numérico Total-compra-mês-ano-94 12 Numérico 11

Cálculo dos s Para o cálculo dos Pontos de Função não Ajustados a seguinte tabela deve ser preenchida: Complexidade Funcional Total Complexidade Total tipo função Total de pontos de função não ajustados 12

Complexidade Funcional Total Complexidade Total tipo componente Arquivo Arquivo de Interface Entradas s Saídas s Consultas s Esses 5 tipos de componentes lógicos afetam de forma distinta o tamanho do software Total de pontos de função não ajustados 13

Identificar Para determinar os componentes lógicos, primeiramente deve-se determinar a Fronteira da Aplicação. 14

Identificar a Fronteira da Aplicação A determinação da fronteira é importante para que se possa estabelecer: o escopo do software que está sendo medido a propriedade dos dados e a propriedade das funções requeridas pela contagem (se os dados ou funções pertencem à aplicação que está sendo contada ou à outra aplicação). 15

Identificar a Fronteira da Aplicação Observação: Pode haver mais de uma aplicação incluída no escopo de um único projeto. Nesse caso, todas as fronteiras devem ser identificadas. 16

Passo 1 - Arq. - ALI Complexidade Funcional Total Complexidade Total tipo componente Arquivo Arquivo de Interface Entradas s Saídas s Consultas s Identificar e Classificar os Arquivos Internos (ALI) 17

Passo 1 - Arq. - ALI EE SE CE Fronteira da Aplicação Arquivo ALI AIE Um Arquivo (ALI) é um grupo de dados logicamente relacionados, identificados e modificados pelo usuário e mantidos dentro das fronteiras da aplicação que está sendo contada. 18

Passo 1 - Arq. - ALI Para identificar arquivos como sendo Arquivos Internos, todas as questões seguintes devem ser respondidas afirmativamente: O grupo de dados reflete os requisitos funcionais definidos pelo usuário? O grupo de dados é armazenado dentro da fronteira da aplicação? O grupo de dados é alterado dentro da fronteira da aplicação? O grupo de dados é alterado através de processos dessa aplicação? O grupo de dados não foi contado como Arquivo de Interface nessa aplicação? 19

!!! Passo 1 - Arq. - ALI Podem ser considerados ALI: cadastro de clientes, cadastro de produtos, cadastro de funcionários, etc. Não são considerados ALI: arquivos temporários, arquivos de classificação, arquivos incluídos por motivos de tecnologia, etc. 20

" " Passo 1 - Arq. - ALI COMPLEXIDADE DE ARQUIVO LÓGICO INTERNO A complexidade de Arquivo é calculada a partir: da quantidade de Dados Elementares Referenciados (DER) da quantidade de Registros Referenciados (RLR) 21

# # # $ Passo 1 - Arq. - ALI Como contar DER? Contar um DER para: cada campo do ALI. campos repetitivos que são idênticos em formato e existem para permitir múltiplas ocorrências de um mesmo dado. Por exemplo, se um ALI possui 12 campos para venda mensal, conta-se como apenas 1 DER. 22

% & & Passo 1 - Arq. - ALI Como contar RLR? Contar um RLR para: Cada chave presente no ALI, inclusive a chave do próprio ALI Caso o ALI contenha apenas a própria chave contar um único RLR 23

Passo 1 - Arq. - ALI Como contar a Complexidade do ALI? DER 1 a 19 20 a 50 51 ou mais ALR 1 simples simples média 2 a 5 simples média complexa 6 ou mais média complexa complexa 24

Passo 1 - Arq. - ALI Arquivo Complexidade Funcional Total Complexidade 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 Total tipo componente 21 EXEMPLO 25

Passo 1 - Arq. - ALI Clientes Exemplo Customer Number Name Address City State Zip Code Balance Credit Limit Sales Rep Number AN91 Atwater 215 Watkins Oakdale IN 48101 $347 $700 04 Nelson AW52 Alliance 266 Ralston Allanson IN 48102 $49 $400 07 West BD22 Betodial 542 Prairie Oakdale IN 48101 $57 $400 07 CE76 Carson Enterprise 96 Prospect Bishop IL 61354 $425 $900 11 1) Qtos Arq.? Representate de Venda Sales Rep Number Last Name First Name Address City State Zip Code Area Manager Number 04 Right Mike 95 Stockton Oakdale IN 48101 14 05 Perry Tom 198 Pearl Oakdale IN 48101 17 07 Sanchez Rachel 867 Bedford Benson MI 49246 17 11 Morris Katie 96 Prospect Bishop IL 61354 21 2) Qtos Dados Elementares? 3) Existe mais que um Registro Lógico? 26

Passo 2 - Arq. Interface - AIE Complexidade Funcional Total Complexidade Total tipo componente Arquivo Arquivo de Interface de Interface Entradas s Saídas s Identificar e Classificar os Arquivos de Interface Consultas s 27

' Passo 2 - Arq. Interface - AIE EE SE CE Fronteira Arquivos da Aplicação de Interface ALI AIE Um Arquivo de Interface (AIE) é um grupo de dados logicamente relacionados, utilizados no sistema que está sendo analisado, mas que é mantido fora da fronteira da aplicação que está sendo contada. 28

( ) ) ) ) Passo 2 - Arq. Interface - AIE Para identificar arquivos como sendo Arquivos de Interface, todas as questões devem ser verdadeiras: O grupo de dados é armazenado fora da fronteira da aplicação. O grupo de dados não é alterado pela aplicação que está sendo contada. O grupo de dados é contado como ALI em outra aplicação. O grupo de dados não foi contado como ALI nessa aplicação. 29

* + +, Passo 2 - Arq. Interface - AIE COMPLEXIDADE DE ARQUIVO DE INTERFACE EXTERNA A complexidade de Arquivo de Interface é também calculada a partir: da quantidade de Dados Elementares Referenciados (DER) da quantidade de Registros Referenciados (RLR) As regras de contagem são as mesmas aplicadas aos ALI, assim como o quadro para a determinação da complexidade 30

Passo 2 - Arq. Interface - AIE Complexidade Funcional Total Complexidade Total tipo componente Arquivo de Interface 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 10 EXEMPLO 31

Passo 3 - Entrada - EE Complexidade Funcional Total Complexidade Total tipo componente Arquivo Arquivo de Interface Identificar e Classificar as Entradas s (EE) Entradas s s Saídas s Consultas s 32

Passo 3 - Entrada - EE EE SE CE Entradas s Fronteira da Aplicação ALI AIE Uma Entrada (EE) é qualquer função ou transação que leva dados ou informações de controle de fora para dentro da fronteira da aplicação. Geralmente esses dados são usados para atualizar informações internas da aplicação. 33

-.. Passo 3 - Entrada - EE Para identificar um dado como sendo uma Entrada, deve-se analisar dados ou informações de controle que vêm de fora da fronteira da aplicação. As questões seguintes devem ser respondidas afirmativamente: O dado é recebido de fora da fronteira da aplicação? O dado é armazenado em um Arquivo Lógico Referenciado e é manipulado através de um processo da aplicação? 34

/ / Passo 3 - Entrada - EE COMPLEXIDADE DA ENTRADA EXTERNA A complexidade da Entrada é calculada a partir: da quantidade de Dados Elementares Referenciados (DER) da quantidade de Arquivos Referenciados (ALI ou AIE) 35

0 1 1 1 1 1 Passo 3 - Entrada - EE Como contar DER? Contar um DER para: cada campo identificado pelo usuário e mantido em um ALI por uma entrada externa; contar um só quando o campo for repetitivo cada campo pertencente a um ALI que não é digitado pelo usuário mas é mantido por uma entrada externa campos que indicam condição de erro durante o processamento ou confirmação de que o processo está completo em telas de atualização só contar os campos que possam sofrer atualização em telas de exclusão só contar os campos-chave 36

2 3 3 3 3 Passo 3 - Entrada - EE Como contar ALR? Contar um ALR para: cada ALI mantido para cada ALI ou AIE lido durante o processamento da Entrada para cada ALI que é lido e mantido por uma entrada externa contar um ALR caso haja acesso a arquivo de mensagem de erro 37

Passo 3 - Entrada - EE Como contar a complexidade da EE? DER 1 a 4 5 a 15 16 ou mais ALR 0 ou 1 simples simples média 2 simples média complexa 3 ou mais média complexa complexa 38

Passo 3 - Entrada - EE Complexidade Funcional Total Complexidade Total tipo componente EXEMPLO Entradas s 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 26 39

Passo 3 - Entrada - EE EE podem ser dados de negócio, dados de controle, entre outros. Dados de negócio: Nome do Cliente, Endereço, Telefone, etc. Exemplo Dados de Controle: São os elem. de dados que invocam uma transação ou mudam o comportamento da aplicação. Cada check box representa um elemento de dado. Os radio buttons da lista de classificação de clientes bem como os do formato da hora representam um elemento de dado. 40

Passo 3 - Entrada - EE Exemplo A tela a seguir é usada para adicionar um novo cliente a uma aplicação. O botão OK e o botão Next ambos adicionam um novo clienta à base de dados. 1) Qtos elementos de dados existem nessa tela de entrada? 2) Se essa tela atualiza um arq. Lógico, qtos PF essa tela representa? 3) Qtos elementos de dados representa o número do telefone? 4) O botão Cancel é contado como um elemento de dado? 41

Passo 4 - Saída - SE Complexidade Funcional Total Complexidade Total tipo componente Arquivo Arquivo de Interface Entradas s Saídas s Consultas s Identificar e Classificar as Saídas s (SE) 42

Passo 4 - Saída - SE EE SE CE Fronteira da Aplicação Saídas s ALI AIE Uma Saída (SE) fornece dados ou informações de controle para fora da aplicação que está sendo contada. São transações que extraem informações do sistema para outros aplicativos. 43

Passo 4 - Saída - SE Para identificar uma Saída, deve-se observar os dados ou informações de controle que estão sendo enviados para fora da fronteira e as seguintes regras devem ser respondidas afirmativamente. A função ou transação envia dados ou informações de controle, para fora da fronteira da aplicação? O dado ou informação de controle é enviado através de um processo da aplicação? 44

Passo 4 - Saída - SE Exemplos Saídas s: relatório com relação de clientes, transferência de dados para outra aplicação, fatura de um cliente, etc. Não são consideradas Saídas s : menus de navegação, telas de auxílio, telas de consulta, etc. 45

4 4 Passo 4 - Saída - SE COMPLEXIDADE DA SAÍDA EXTERNA A complexidade de Saída é calculada a partir: da quantidade de Dados Elementares Referenciados (DER) da quantidade de Arquivos Referenciados (ALI ou AIE) 46

5 6 6 6 Passo 4 - Saída - SE Como contar DER? Contar um DER para: cada campo não repetitivo, que aparece em uma saída externa. Exemplo: um campo de total em um relatório. um campo lógico armazenado como múltiplos campos, mas é requerido como uma única informação. Exemplo: uma data, que é armazenada separada em três campos diferentes como dia, mês e ano. Informação de texto que poderia ser uma única palavra, sentença ou frase. Exemplo, uma mensagem que é incluída em um relatório para indicar porque uma transação de inclusão não foi completada com sucesso. 47

7 7 Passo 4 - Saída - SE Como contar DER? Não contar DER: Literais. Literais incluem o nome do relatório, nome da tela, cabeçalhos de colunas e nome de campos. Número de páginas ou campos automáticos do sistema. Exemplo: comando de paginação como anterior, campo de data ou hora. 48

8 Passo 4 - Saída - SE Como contar ALR? Contar um ALR para cada ALI ou AIE lido durante o processamento de saída 49

Passo 4 - Saída - SE Como contar a complexidade da SE? DER 1 a 5 6 a 19 20 ou mais ALR 0 ou 1 simples simples média 2 simples média complexa 4 ou mais média complexa complexa 50

Passo 4 - Saída - SE Complexidade Funcional Complexidade Total tipo componente EXEMPLO Saídas s 2 Simples x 4 = 8 0 Média x 5 = 0 8 0 Complexa x 7 = 0 51

Passo 4 - Saída - SE Exemplo Quantos DER existem nessa saída? 52

Passo 4 - Saída - SE Exemplo Se alguns dos dados fossem representados pela tabela abaixo, haveria apenas 2 elementos de dados: user session e day of week 53

Passo 4 - Saída - SE Exemplo Considere o relatório a seguir: lavor Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Total Vanilla 80 85 85 90 110 120 135 145 90 84 75 70 1169 hocolate 75 80 70 83 100 105 109 120 80 70 69 65 1026 trawberry 30 35 35 40 70 80 95 105 40 34 25 20 609 istachio 8 9 9 9 11 12 14 15 9 8 8 7 119 Other 12 13 13 13 15 17 19 20 14 13 13 12 174 otal 205 222 212 235 306 334 372 405 233 209 190 174 1) Qtos elementos de dados há no relatório? 2) Existe informação repetitiva? Qual? 4 sabor mês total de cada sabor por ano total de vendas no mês 54

Passo 5 - Consulta - CE Complexidade Funcional Total Complexidade Total tipo componente Arquivo Arquivo de Interface Entradas s Saídas s Identificar e Classificar as Consultas s (CE) Consultas s s 55

Passo 5 - Consulta - CE EE SE CE Fronteira da Aplicação ALI Consultas s AIE Uma Consulta (CE) é uma transação que combina transações de entrada e saída, resultando em recuperação de dados. 56

Passo 5 - Consulta - CE Para identificar uma Consulta, deve-se observar onde ocorrem as solicitações de recuperação de informação na aplicação. As questões seguintes devem ser respondidas afirmativamente. A solicitação de consulta deve entrar na aplicação. Os resultados de saída devem ser disponibilizados para fora das fronteiras da aplicação. O processo resulta em recuperação de dados. O processo não atualiza um Arquivo (ALI). 57

Passo 5 - Consulta - CE Exemplos de Consulta s: consulta ao cadastro de clientes, telas de logon com funções de segurança, telas de menu se solicitadas pelo usuário, tela de menu que provê seleção de tela e consulta de dados. Não são consideradas Consulta s: menus de navegação, telas de consulta, tela de menu que só prove seleção de telas, tela de logon que só provê segurança da aplicação. 58

9 9 : Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA A complexidade da Consulta é calculada a partir: da quantidade de Dados Elementares Referenciados (DER) da quantidade de Arquivos Referenciados (ALI ou AIE) para a parte da entrada e da saída. Deve-se considerar a maior das duas complexidades funcionais (de entrada e de saída) da consulta como a complexidade final da consulta 59

; ; Passo 5 - Consulta - CE COMPLEXIDADE DA CONSULTA EXTERNA ENTRADA DA CONSULTA Dados Elementares Referenciados (DER) para a parte da entrada da consulta externa é um campo não repetitivo, identificado pelo usuário e que aparece em uma consulta externa Arquivos Referenciados (ALR) para a parte de entrada da consulta externa é um arquivo lido quando a consulta externa é processada 60

< = = = Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA ENTRADA DA CONSULTA Contar como um único DER: cada campo não repetitivo que aparece na parte de entrada de uma consulta externa. cada campo que especifica o critério de seleção de dados. contar um DER quando uma ou mais mensagens de erro informarem ao usuário que a consulta não foi efetivada por erro de edição ou validação, ou se ainda uma mensagem de confirmação ocorrer. 61

>?? @ A Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA ENTRADA DA CONSULTA Contar como um único DER: Campos utilizados para indicar que o processamento foi realizado com sucesso Campos que permitam especificar que a consulta externa deve ser executada. Por exemplo: contar como um DER o botão de OK, que deve ser apertado pelo usuário para efetivar a consulta. Contar a quantidade de Arquivos Referenciados (ALR) na lógica de processamento da Consulta 62

B C Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA SAÍDA DA CONSULTA Dados Elementares Referenciados (DER) para a parte de saída da consulta externa é um campo não repetitivo, identificado pelo usuário e que aparece em uma consulta externa Arquivos Referenciados (ALR) para a parte de saída da consulta externa é um arquivo lido quando a consulta externa é processada 63

D E E F Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA SAÍDA DA CONSULTA Contar um DER: cada campo não repetitivo, identificado pelo usuário que aparece na parte da saída da consulta. um campo lógico armazenado como múltiplos campos, mas é requerido como uma única informação. Exemplo: uma data, que é armazenada separada em três campos diferentes como dia, mês e ano. 64

G H H I Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA SAÍDA DA CONSULTA Não contar DER: Literais. Literais incluem o nome do relatório, nome da tela, cabeçalhos de colunas e nome de campos. Não contar número de páginas ou campos automáticos do sistema. Exemplo: número de páginas, comando de paginação como anterior, campo de data ou hora. 65

J Passo 5 - Consulta - CE COMPLEXIDADE DE CONSULTA EXTERNA SAÍDA DA CONSULTA Contar a quantidade de Arquivos Referenciados (ALR) na lógica de processamento da Consulta 66

Passo 5 - Consulta - CE Exemplos de Mensagens de Erro e de Confirmação: a) o usuário inicia uma consulta e a mensagem aguarde...procurando é apresentada - é do lado da entrada. b) a mensagem todos os campos devem ser preenchidos - também é uma mensagem do lado da entrada. c) a mensagem cliente não encontrado - é do lado da saída, pois a entrada não teve nenhum erro; o erro ocorreu do lado da saída da transição. 67

Passo 5 - Consulta - CE Como contar a complexidade da CE? DER 1 a 5 6 a 19 20 ou mais ALR 0 ou 1 simples simples média 2 simples média complexa 3 ou mais média complexa complexa 68

Passo 5 - Consulta - CE Complexidade Funcional Total Complexidade Total tipo função EXEMPLO Consultas s 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 14 69

Passo 5 - Consulta - CE Exemplo Ao clicar no botão é apresentada a seguinte lista de clientes (Tela 1): Tela 1 ao se dar um duplo clique em um cliente específico, a Tela 2 é apresentada 70

Passo 5 - Consulta - CE Tela 2 Exemplo Pergunta: Quantas consultas externas representam: o botão Cust Customer: JobList Edit Customer 71

Pontos por Função Brutos Arquivo Arquivo de Interface Entradas s Saídas s Consultas s Complexidade Funcional Total Complexidade 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 Total tipo função 0 Complexa x 6 = 0 de pontos de função brutos Total de pontos de função brutos 79 21 10 26 8 14 72

Visão Geral-Processo de Análise Arquivos Externos Arquivos Internos Entradas s Saídas s Consultas s Pontos de Função Função Brutos Brutos Avaliação das 14 características e determinação do nível de influência Fator de Ajuste Pontos de Função Ajustados 73

Visão Geral-Processo de Análise Arquivos Externos Arquivos Internos Entradas s Saídas s Consultas s Pontos de Função Brutos Avaliação das 14 características e determinação do nível de influência Fator Fator de Ajuste Ajuste Pontos Pontos de Função de Ajustados Ajustados 74

K K PF - Fator de Ajuste Assim que o total de pontos de função não ajustados for obtido, o fator de ajuste deve ser determinado. O cálculo do fator de ajuste representa a funcionalidade geral da aplicação provida ao usuário pela aplicação e é obtido através da análise de 14 Características Gerais do Sistema. 75

PF - Fator de Ajuste Características Gerais do Sistema influência 0 1 2 3 4 5 nenhuma mínima moderada média significante forte 1. O sistema exige backup e recuperação confiáveis? 2. É requerida comunicação de dados? 3. Existem funções de processamento distribuído? 4. O desempenho é crítico? 5. O sistema funcionará num sistema operacional existente e intensamente utilizado? 6. São requeridas entrada de dados on-line? 7. As entradas on-line requerem que as transações de entrada sejam construídas com várias telas e operações? 8. Os arquivos são atualizados on-line? 9. Entradas, saídas, arquivos e consultas são complexos? 10. O processamento interno é complexo? 11. O código é projetado para ser reusával? 12. A conversão e a instalação estão incuídas no projeto? 13. O sistema é projetado para múltiplas instalações em diferentes organizações? 14. A aplicação é projetada de forma a facilitar mudanças e o uso pelo usuário? 76

L M M PF - Fator de Ajuste Características Gerais do Sistema O nível de influência de cada uma das características varia de zero até cinco: Nenhuma influência (0), Influência mínima (1) Influência moderada (2), Influência média (3) Influência significante (4), Influência forte (5). Quando totalizados, os níveis podem alterar a contagem de pontos de função numa amplitude de 35% até +35%. O valor final do fator de ajuste pode variar de 0,65 até 1,35. 77

PF - Fator de Ajuste Cálculo do Fator de Ajuste 1 - Atribuir peso de 1 a 5 para cada uma das 14 características gerais do sistema 2 - Calcular o nível de influência (NI) através da soma dos pesos de cada uma das 14 características 3- Calcular o Fator de Ajuste (FA) através da equação : FA= (NI * 0,01) +0,65 4 - Cálculo do Pontos de Função Ajustados: FPA= PFBrutos * FA 78

PF - Fator de Ajuste Cálculo do Fator de Ajuste 3) Ajustar os Pontos por Função de acordo com a complexidade do sistema, através da seguinte fórmula: 14 PF = PF-Bruto x 0,65 + 0,01 x (F i ) i = 1 F i = valores de ajuste da complexidade das perguntas 1-14 PRODUTIVIDADE = PF / pessoas-mês MÉTRICAS DERIVADAS QUALIDADE = CUSTO = DOCUMENTAÇÃO = erros / PF $ / PF pags.docum. / PF 79

Modelo COCOMO (para Estimativa) 80

N N O P P Tipos de Modelo 1: Modelo COCOMO Básico modelo estático de variável simples esforço de desenvolvimento calculado em função do tamanho do software (LOC) Modelo 2: Modelo COCOMO Intermediário esforço de desenvolvimento calculado em função do tamanho do software (LOC) e de um conjunto de "direcionadores de custo Modelo 3: Modelo COCOMO Avançado mesmas características do modelo intermediário avaliação do impacto dos "direcionadores de custo" em cada passo do processo de construção 81

Q Q Q R R R S Classes de Projetos São definidos para 3 classes de projetos: Orgânico projetos pequenos equipes pequenas e com baixa experiência requisitos não muito rígidos Semi-Separado projetos com tamanho e complexidade médios equipes com experiências variadas requisitos rígidos e não rígidos Embutido restrições rígidas de hardware, software e operacionais 82

Exemplo Modelo COCOMO Básico Esforço E = A (KLOC) e B Tempo de Desenvolvimento T = C (E) e D Modelo COCOMO Intermediário Esforço E = A (LOC) e B x FAE Básico Intermediário classes A B C D A B orgânico 2.4 1.05 2.5 0.38 3.2 1.05 semi-separado 3.0 1.12 2.5 0.35 3.0 1.12 embutido 3.6 1.20 2.5 0.32 2.8 1.20 83

Fator de Ajuste do Esforço FAE - Fator de Ajuste do Esforço ATRIBUTOS DIRECIONADORES DE CUSTO Atributos do Produto: complexidade, confiabilidade exigida tamanho do banco de dados Atributos do Hardware: restrições de desempenho, restrições de memória, etc. Atributos Pessoais: capacidade, experiência Atributos de projeto: uso de ferramentas, métodos, etc. Cada atributo é ponderado numa escala de 6 pontos e, através de tabelas publicadas por Boehm, obtém-se o FAE, que varia de 0.9 a 1.14. 84

Exemplo Exemplo de aplicação do COCOMO Utilizando-se os dados obtidos através da Estimativa LOC, o Modelo Básico e Semi-separado, tem-se: E = A (KLOC) e B E = 3.0 (KLOC) exp 1,12 = 3.0 (33.3) 1,12 = 152 pessoas-mes T = C (E) e D T = 2.5 (E) exp 0.35 = 2.5 (152) 0.35 = 14.5 meses Com esses valores é possível determinar um número recomendado de pessoas N = E/T = 152/14.5 = 11 pessoas 85