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

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

Gestão e Projetos de TI Prof. Guilherme Keller.

Apresentações semelhantes


Apresentação em tema: "Gestão e Projetos de TI Prof. Guilherme Keller."— Transcrição da apresentação:

1 Gestão e Projetos de TI Prof. Guilherme Keller

2 Análise de Pontos de Função
IFPUG – Manual de Práticas de Contagem

3 Determinar o Tipo de Contagem
AGENDA Introdução Contagem nas Fases do Ciclo de Vida Termos Utilizados na APF Procedimentos de Contagem Determinar o Tipo de Contagem Identificar o Escopo e a Fronteira da Aplicação Dicas para ajudar na Contagem APF

4 Introdução

5 Introdução POR QUE MEDIR SOFTWARE ??? Para entender e melhorar nossos processos; Estimar custo e recursos de projetos; Avaliar a aquisição de pacotes; Suportar análise de produtividade e qualidade; Remunerar fornecedores; Apoiar a gerência de escopo e requisitos do projeto.

6 Introdução POR QUE USAR A APF??? Padrão controlado por uma organização: IFPUG; Instrumento de comunicação entre desenvolvedores e usuários; Permite estimar antes da completeza dos requisitos; Independente da tecnologia; Permite monitorar qualidade e produtividade; Permite várias formas de contratação: Homem/Hora, Preço por PF, ...

7 Introdução ESTIMATIVAS de PROJETOS de SOFTWARE Quanto tempo ??? Quanto custa ??? As respostas dependem de: Requisitos (e a qualidade de que foram descritos); Equipe (quantidade e experiência); Tecnologia.

8 Introdução Indicadores Derivados de PONTOS DE FUNÇÃO Horas/PF; R$/PF; Defeitos/PF; Baseline; Tamanho do Backlog.

9 Introdução APF - Análise de Pontos de Função É um método padrão para medir desenvolvimento de software do ponto de vista do usuário.

10 Introdução Objetivos da APF Análise de Pontos de Função mede software pela quantificação das funcionalidades providas ao usuário, com base no projeto lógico; Mede funcionalidades que o usuário solicita e recebe; Mede desenvolvimento e manutenção de software, independentemente da tecnologia utilizada para implementação.

11 Introdução Benefícios As organizações podem aplicar a APF para: Tomar decisões MAKE-OR-BUY; Ajudar usuários determinarem os benefícios de um pacote de aplicação para sua organização contando funções que especificamente correspondem às suas solicitações; Medir as unidades de um produto de software para manter qualidade e produtividade de análise; Estimar custo e recursos requeridos no desenvolvimento e manutenção do software; Normalização na comparação de softwares.

12 Contagem nas Fases do Ciclo de Vida

13 Medida pode ser aproximada
Contagem nas Fases do Ciclo de Vida Comparação de Medidas Fase do Ciclo de Vida Medida pode ser aproximada Medida pode ser exata Proposta: usuários expressam necessidades e intenções. SIM NÃO Requisitos: desenvolvedores e usuário revisam e concordam nas necessidades e intenções do usuário. Projeto: desenvolvedores podem incluir elementos para implementações que não são usados pela análise de pontos de função. Construção Entrega Manutenção Corretiva/Evolutiva

14 Contagem nas Fases do Ciclo de Vida
Contagem: Indicativa, Estimada e Detalhada As contagens Indicativa e Estimada foram criadas pela NESMA e a Contagem Detalhada foi criada pelo IFPUG: Indicativa – valor indicativo de pontos de função do sistema, quando ainda não se conhece os detalhes do modelo de dados e nem do processo; Estimada – valor estimado de pontos de função do sistema, quando se conhece as funções mas não sua complexidade exata; Detalhada – valor de pontos de função do sistema, quando se conhece as funções e consegue determinar sua complexidade, de acordo com o padrão do IFPUG. Neste curso iremos aprender detalhadamente como medir software em quantidade de PONTOS de FUNÇÃO, não iremos entrar no mérito de quais PRODUTIVIDADES utilizar para chegar em quantidade de horas. Estudos devem ser feitos em cada organização para chegar em produtividades coerentes.

15 Contagem nas Fases do Ciclo de Vida
Contagem Indicativa (NESMA) Valor indicativo de pontos de função do sistema, quando ainda não se conhece os detalhes do modelo de dados e nem do processo. Quando utilizar? Nas fases iniciais do desenvolvimento, quando existir apenas uma visão superficial do projeto. Como funciona? Tamanho Indicativo = A + B onde: A = qtde entidades do DER x 35 B = qtde arquivos externos x 15 Além do mais, para que os objetivos acima sejam atendidos, o processo de contagem de pontos de função deve ser: Simples o suficiente para minimizar o retrabalho do processo de medição Uma medida consistente entre os vários projetos e organizações

16 Contagem nas Fases do Ciclo de Vida
Contagem Estimada (NESMA) Valor estimado de pontos de função do sistema, quando se conhece as funções mas não sua complexidade exata. Quando utilizar? Nas fases iniciais do desenvolvimento, quando já existir o modelo de dados e informações preliminares dos processos, onde podemos identificar as funcionalidades. Como funciona? Para cada função encontrada, utilizar a seguinte regra: Funções de Dados: complexidade BAIXA Funções de Transação: complexidade MÉDIA Além do mais, para que os objetivos acima sejam atendidos, o processo de contagem de pontos de função deve ser: Simples o suficiente para minimizar o retrabalho do processo de medição Uma medida consistente entre os vários projetos e organizações

17 Contagem nas Fases do Ciclo de Vida
Contagem Detalhada (IFPUG) Valor de pontos de função do sistema, quando se conhece as funções e consegue determinar sua complexidade, de acordo com o padrão do IFPUG. Quando utilizar? Em qualquer fase do desenvolvimento a partir do momento que exista o modelo de dados e do processo detalhado. Como funciona? Identificar as funções e classificá-las como funções de dados ou de transações. Medir a complexidade de cada função, baseada nos tipos de registros ou arquivos lógicos referenciados e nos tipos de dados.

18 Termos Utilizados na APF

19 Termos Utilizados pela APF
Visão do Usuário A visão do usuário representa uma descrição formal das necessidades do negócio do usuário na linguagem do usuário. Os desenvolvedores traduzem a informação do usuário em linguagem técnica a fim de prover uma solução.

20 Termos Utilizados pela APF
Informações de Controle Dados que influenciam um processo elementar da aplicação que está sendo contada. Especifica o que, quando, ou como os dados serão processados. Reconhecido pelo Usuário Refere a requisitos definidos para processo e/ou grupos de dados que estão de acordo, e entendidos tanto pelos usuários quanto pelos desenvolvedores. Antes de iniciar a contagem de pontos de função, determine qual fase do ciclo de vida está o projeto, e assim decidir qual medição vai ser efetuada. Documente tudo o que for assumir. Aproximação permite suposições das funções e/ou complexidades desconhecidas. Medição exata inclui a identificação de todas as funções e suas complexidades. Num primeiro estágio, os Requisitos Iniciais do Usuário pode ser o único documento disponível para análise do pontos de função. Apesar das desvantagens, esta contagem pode ser muito útil para produzir uma estimativa antecipada. Meça apenas as necessidades e intenções solicitadas pelo usuário.

21 Termos Utilizados pela APF
Manter Capacidade de modificar dados através de um processo elementar. Manter engloba as funções: Incluir, alterar, excluir, popular, converter, etc. Processo Elementar É a menor unidade da atividade que é significativa ao usuário. O processo elementar deve ser auto-contido e deixar o negócio da aplicação que está sendo contada em um estado consistente. Elementos para a Contagem Indicativa: Grupos Lógicos de Dados ou de Informações de Controle reconhecidos pelo usuário Arquivos Lógicos Internos Contribuem com 35 pontos de função não ajustados Arquivos de Interface Externa Contribuem com 15 pontos de função não ajustados EXEMPLO: Uma aplicação com: 3 entidades do modelo = 3 x 35 = 105 2 arquivos externos = 2 x 15 = 30 TOTAL PF não ajustados Estudos em mais de 100 projetos realizados pela NESMA mostram que a Contagem Indicativa fornece uma aproximação boa da contagem detalhada de Pontos de Função para projetos até 500 PF

22 Termos Utilizados pela APF
Usuário Qualquer pessoa que especifica os Requisitos Funcionais do Usuário e/ou qualquer pessoa ou “coisa” que se comunica ou interage com o software em algum momento. Lógica de Processamento Requisitos especificamente solicitados pelo usuário para completar um processo elementar. Modelo de Processos: Protótipo do sistema, layout dos arquivos e dos relatórios enviados para fora, descrição das funções, etc... Funções de Dados e de Transação serão detalhadas no próximo tópico.

23 Procedimento de Contagem

24 Procedimentos de Contagem
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados Uma contagem de pontos de função é feita usando as informações em uma linguagem que é comum tanto para usuários como para desenvolvedores. A visão do usuário: É uma descrição das funções do negócio É aprovada pelo usuário Pode ser usada para contar pontos de função Pode variar na forma física (ex., catálogo de transações, propostas, documento de requisições, especificações externas, especificações detalhadas, manual do usuário)

25 Exemplo Resumido de Contagem
Informações de Novo Funcionário (EE) User 1 Sistema Monetário Índice de Conversão (AIE) Aplicação de Recursos Humanos Informação do Funcionário (ALI) Solicitação e Apresentação das Informações do Funcionário (juntas 1 CE) Relação de Funcionários (SE) Fronteira Por exemplo, alguém do departamento de folha de pagamento estabelece ciclos de pagamentos para planejar quando os funcionários de cada local serão pagos. O ciclo de pagamento, ou planejamento, contém informações do momento mais adequado que sentem quando o processo elementar de pagamento de funcionários vai ocorrer.

26 Procedimentos de Contagem (continuação)
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados Por exemplo, usuários e desenvolvedores entendem que uma Aplicação de Recursos Humanos ira manter e guardar informações do Funcionário na Aplicação.

27 Determinar o Tipo de Contagem

28 Determinar o tipo de Contagem
Este é o primeiro passo no procedimento da contagem de pontos de função Existem 3 tipos de contagem: Projeto de Desenvolvimento; Projeto de Melhoria; Aplicação. Exemplos incluem, mas não limitam em, inclusão, alteração, exclusão, carga inicial, revisão, atualização, marcação (de status) e criação.

29 Determinar o tipo de Contagem
Projeto de Desenvolvimento Mede as funcionalidades fornecidas ao usuário quando da sua primeira instalação, incluindo eventuais funções de conversão de dados necessárias para a implantação do sistema. Por exemplo: um usuário solicita a habilidade de incluir um novo funcionário pela aplicação. A definição do usuário inclui informações de salário e dependentes. A partir da perspectiva do usuário, a menor unidade da atividade é de incluir um novo funcionário. Incluindo uma das partes da informação, como salário ou dependente, não é uma atividade que poderá qualifica-lo como um processo elementar. os requisitos do usuário para incluir um funcionário inclui determinar informações de salário e dependentes. Se todas as informações do funcionário não são incluídas, um funcionário também não poderá ser. A partir da perspectiva do usuário, a menor unidade da atividade é de incluir um novo funcionário. Incluindo uma das partes da informação, como salário ou dependente, não é uma atividade que poderá qualifica-lo como um processo elementar.

30 Determinar o tipo de Contagem
Projeto de Melhoria Mede as funcionalidades incluídas, alteradas ou excluídas do sistema e também eventuais funções de conversão de dados, conforme solicitação do usuário. Exemplos: pessoas do departamento do RH que interagem com a aplicação para atualizar funcionários a aplicação de Benefícios que interage com a aplicação de RH para receber informações sobre os dependentes dos funcionários.

31 Determinar o tipo de Contagem
Aplicação Mede as funcionalidades atuais da aplicação fornecida ao usuário. É também conhecida como número de pontos de função baseline ou instalado. validações: lógica de processamento que valida uma informação que está sendo incluída. fórmulas matemáticas e cálculos: processo que inclui o cálculo do número total de funcionários. valores equivalentes são convertidos: processo elementar referencia taxa de conversão monetária do dólar para outras moedas. A conversão é concluída pela recuperação de valores de tabelas, então necessidades de cálculos não é executado. dados são filtrados e selecionados pela utilização dos critérios especificados para comparar vários grupos de dados: para gerar uma lista de funcionários por sua função atribuída, um processo elementar compara o número da função atribuída para selecionar e listar os funcionários com estas atribuições. condições são analisadas para determinar quais são aplicáveis: quando um funcionário é incluído, depende se será um funcionário mensalista ou horista. um ou mais ALIs são atualizados: quando incluir um funcionário, o processo elementar atualiza o ALI funcionário para manter os dados do funcionário. um ou mais ALIs e AIEs são referenciados: quando incluir um funcionário, o ALI moeda é referenciado para usar a taxa de conversão do dólar correta para determinar o valor da hora do funcionário. dados ou informações de controle são recuperados: para ver uma lista de possibilidades de faixas de pagamentos, a informação de faixa de pagamento é recuperada. dados derivados são criados pela transformação de dados existentes para criar dados adicionais: para determinar (derivar) um número de registro do paciente (ex. BARCR01), o seguinte dado é concatenado: as primeiras 3 letras do último nome do funcionário (BAR de Barros) as primeiras 3 letras do último nome do funcionário ( BAR de Barros) um número seqüencial de dois dígitos (começando de 01) o comportamento do sistema é alterado: um aplicativo apresentado em português ou em inglês, conforme solicitação do usuário. preparar e apresentar informações para fora da fronteira: uma lista de funcionários mostrada ao usuário. capacidade para receber dados ou informações de controle que entram pela fronteira da aplicação: um usuário entra com várias partes de informações para incluir uma ordem de compra para o sistema. dados são reclassificados e rearranjados: um usuário solicita a lista de funcionários em ordem alfabética. Nota: reclassificando ou rearranjando um grupo de dados não impacta na identificação de tipo ou de uma única função de transação.

32 Determinar o tipo de Contagem
Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados

33 Identificar o escopo da montagem e a Fronteira da Aplicação

34 Identificar o Escopo da Contagem e a Fronteira da Aplicação
O escopo da contagem define a funcionalidade que será incluída em uma determinada contagem de pontos de função. A fronteira da aplicação indica o limite entre o sistema que está sendo medido e o usuário.

35 Procedimentos de Contagem (continuação)
Escopo da Contagem Define a funcionalidade que será incluída em uma determinada contagem de pontos de função. O escopo: Define um (sub) grupo do software que está sendo medido; É determinado pelo propósito de executar a contagem de pontos de função; Identifica quais funções serão incluídas na contagem de pontos de função para fornecer respostas importantes ao propósito da contagem; Pode incluir mais que uma aplicação.

36 Procedimentos de Contagem (continuação)
Fronteira da Aplicação Indica o limite entre o sistema medido e o usuário A fronteira da aplicação: Define o que está externo à aplicação; Interface conceitual entre a aplicação e o mundo externo; Age como uma membrana através da qual dados são processados pelas transações (EEs, SEs e CEs); Inclui dados lógicos mantidos pela aplicação (ALIs); Ajuda a identificar dados lógicos referenciados mas não mantidos dentro da aplicação (AIEs); É dependente da visão do usuário no processo do negócio, independente de considerações tecnológicas. Primeiro passo do procedimento de contagem de pontos de função.

37 Procedimentos de Contagem (continuação)
Fronteira da Aplicação Regras A fronteira é determinada baseada na visão do usuário. O foco está no que o usuário pode entender e descrever. A fronteira entre aplicações relacionadas está baseada nas diferentes áreas funcionais como visto pelo usuário, não em considerações técnicas. A fronteira inicial já estabelecida para a aplicação ou aplicações que estão sendo modificadas não é influenciada pela contagem do escopo. A contagem de pontos de função pode estar associada tanto a projetos quanto a aplicações. Nota: qualquer contagem realizada antes do término do projeto deve ser considerada como uma estimativa de funcionalidades a serem entregues ao usuário. Sabemos que é normal identificarmos novas funcionalidades durante o projeto. Este fenômeno é chamado de scope creep.

38 Procedimentos de Contagem (continuação)
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados Lembre-se: os pontos de funções relativos as funções de conversão não fazem parte do tamanho do aplicativo, e sim do tamanho do projeto.

39 Procedimentos de Contagem (continuação)
Contagem de Função de Dados Funções de Dados representam a funcionalidade fornecida para o usuário satisfazer seus requisitos de dados internos e externos. Arquivo Lógico Interno; Arquivo de Interface Externa. Melhoria: novas implementações, manutenção de melhorias ou corretivas. Nota: devemos refletir as alterações envolvidas no projeto assim que ele for concluído, instalando os pontos de função do projeto de melhoria, atualizando diretamente os pontos de função da aplicação.

40 Procedimentos de Contagem (continuação)
Contagem de Função de Dados Arquivo Lógico Interno (ALI) Grupo de dados ou informações de controle logicamente relacionados, reconhecido pelo usuário e mantidos dentro da fronteira da aplicação. Sua intenção primária é armazenar dados mantidos por um ou mais processos elementares da aplicação que está sendo contada. Nota: este número é inicializado ao final da contagem do projeto de desenvolvimento e atualizado no término de cada projeto de melhoria que altera as funcionalidades da aplicação.

41 Procedimentos de Contagem (continuação)
Contagem de Função de Dados - ALI Regras O grupo de dados ou informação de controle é lógico e identificável pelo usuário; O grupo de dados é mantido através de um processo elementar dentro da fronteira da aplicação que está sendo contada. Este é o segundo passo do procedimento de contagem de pontos de função.

42 Sistema de Moedas Financeiras Aplicação de Recursos Humanos
Procedimentos de Contagem (continuação) Contagem de Função de Dados Arquivo de Interface Externa (AIE) Grupo de dados ou informações de controle logicamente relacionados, reconhecido pelo usuário, referenciado pela aplicação mas mantido dentro da fronteira de outra aplicação. Sua intenção primária é armazenar dados referenciados por um ou mais processos elementares da aplicação que está sendo contada. Um AIE contado para uma aplicação, deve ser ALI de outra aplicação. No exemplo anterior do sistema de RH, mostra a fronteira entre o sistema de RH e o usuário e entre o sistema de Moedas Financeiras (que é externo ao sistema de RH). User1 Sistema de Moedas Financeiras Índice de Conversão (AIE) Tela de pedido e apresentação das Informações do Funcionário (juntas 1 CE) Aplicação de Recursos Humanos Informação do Funcionário (ALI) User1 Inclusão de Funcionário (EE) User1 Relação de Funcionários (SE) Fronteira

43 Procedimentos de Contagem (continuação)
Contagem de Função de Dados – AIE Regras O grupo de dados ou informação de controle é lógico e identificável pelo usuário; O grupo de dados é referenciado e externo à aplicação que esta sendo contada; O grupo de dados não é mantido pela aplicação que está sendo contada; O grupo de dados é mantido em um ALI em outra aplicação. O escopo da contagem é influenciado pelo Propósito da Contagem. Propósito da Contagem: Fornecer uma resposta para um problema do negócio. Determina o tipo de contagem de pontos de função e o escopo da contagem solicitada para obter a resposta do problema do negócio durante a revisão Influencia o posicionamento da fronteira. Exemplos de propósitos são: Fornecer uma contagem de pontos de função como um start do processo estimado para determinar o esforço do desenvolvimento da primeira versão de uma aplicação Fornecer uma base da contagem de pontos de função da aplicação instalada Fornecer uma contagem de pontos de função para possibilitar comparação das funcionalidades entregues por dois diferentes fornecedores O escopo de: Uma contagem de pontos de função de melhoria inclui todas as funções que estão sendo incluídas, alteradas e excluídas sem impactar na fronteira da(s) aplicação(ões). Uma contagem de pontos de função de desenvolvimento inclui todas as funções impactadas (construídas ou adaptadas) pelas atividades do projeto. Uma contagem de pontos de função da aplicação pode incluir, dependendo do propósito (ex., fornecer um pacote como uma solução de software): ­  Apenas as funções que estão sendo usadas pelo usuário ­  Todas as funções entregues A fronteira da aplicação das duas contagens é a mesma e independentes do escopo.

44 Procedimentos de Contagem (continuação)
Contagem de Função de Dados – DERs Regras Conte um DER (Dado Elementar Referenciado) 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; Quando duas aplicações mantêm e/ou referenciam o mesmo ALI/AIE, mas cada uma mantém/referenciam diferentes DERs, conte apenas os DERs que estão sendo usados por cada aplicação para medir o ALI/AIE; Conte um DER para cada parte do dado requisitado pelo usuário para estabelecer um relacionamento com outro ALI ou AIE. A identificação da fronteira da aplicação é um passo essencial pois ela impacta diretamente no resultado da contagem de pontos de função. A fronteira da aplicação ajuda na identificação dos dados que entram na aplicação e que deverá ser incluído no escopo da contagem.

45 Procedimentos de Contagem (continuação)
Contagem de Função de Dados - RLRs Regras Conte um RLR para cada subgrupo opcional ou obrigatório para o ALI ou AIE, ou se não existirem subgrupos, conte o ALI ou AIE com apenas 1 RLR. A identificação da fronteira da aplicação é um passo essencial pois ela impacta diretamente no resultado da contagem de pontos de função. A fronteira da aplicação ajuda na identificação dos dados que entram na aplicação e que deverá ser incluído no escopo da contagem.

46 Procedimentos de Contagem (continuação)
Diferença entre ALIs e AIEs A principal diferença entre um ALI e um AIE é que o AIE não é mantido pela aplicação que está sendo contada, ele é mantido por outra aplicação, enquanto o ALI é mantido pela aplicação que está sendo contada.

47 Quando mantidos pelo usuário
Procedimentos de Contagem (continuação) Exemplos de ALIs O grupo lógico de dados ou informação de controle reconhecido pelo usuário e mantido através de um processo elementar dentro da fronteira da aplicação que está sendo contada. Tabelas do usuário – dados das transações do negócio (mantidos pela aplicação); Arquivos de mensagens; Arquivos de help; Arquivos de controle ou parâmetros; Arquivos de segurança. Quando mantidos pelo usuário Passos para a contagem de Funções de Dados: Identificar os ALIs e AIEs. Determinar a Complexidade e Contribuição dos ALIs e AIEs para a contagem de pontos de função não ajustados.

48 Procedimentos de Contagem (continuação)
Não Exemplos de ALIs Arquivos temporários, de trabalho ou de classificação; Arquivos de backup; Arquivos de índices; Arquivos gerados para processamento em outra aplicação. Neste caso, este tipo de arquivo deve ser contado como função de transação; Arquivos criados em função da tecnologia (JCL, BAT, etc.). Grupo lógico de dados Grupo lógico de informações de controle É mantido através de processo elementar dentro da fronteira da aplicação que está sendo contada

49 Desde que mantidos por outra aplicação
Procedimentos de Contagem (continuação) Exemplos de AIEs O grupo de dados lógico ou informação de controle reconhecido pelo usuário e referenciado pela aplicação que está sendo contada, externo a ela e não mantido por ela e sim por outra aplicação. Dados externos - utilizados pela aplicação e mantidos em outra aplicação. Arquivos de mensagens; Arquivos de help; Arquivos de controle ou parâmetros; Arquivos de segurança. Desde que mantidos por outra aplicação Grupo lógico de dados Grupo lógico de informações de controle É mantido através de processo elementar dentro da fronteira da aplicação que está sendo contada

50 Procedimentos de Contagem (continuação)
Não Exemplos de AIEs Arquivos de movimentos recebidos de outra aplicação para manter um ALI. Estes arquivos devem ser contados como função de transação; Dados formatados e processados para uso de outras aplicações. Grupo lógico de dados Grupo lógico de informações de controle É mantido através de processo elementar dentro da fronteira da aplicação que está sendo contada

51 Procedimentos de Contagem (continuação)
Complexidade e Contribuição ALI e AIE O número de ALIs e AIEs e suas respectivas complexidades funcionais determinam a contribuição das funções de dados para a contagem de pontos de função não-ajustados. Para cada ALI ou AIE identificado, determine sua complexidade baseado nos DERs (Tipos de dados) e RLRs (Tipos de registros). Grupo lógico de dados Grupo lógico de informações de controle É mantido através de processo elementar dentro da fronteira da aplicação que está sendo contada

52 DERs Procedimentos de Contagem (continuação)
Complexidade e Contribuição ALI e AIE DERs Complexidade 1 a 19 20 A 50 > 50 1 Baixa Média 2 a 5 Complexa > 5 RLRs Grupo lógico de dados Grupo lógico de informações de controle É mantido através de processo elementar dentro da fronteira da aplicação que está sendo contada Contribuição Baixa Média Complexa ALI x 7 x 10 x 15 AIE x 5 Função

53 Procedimentos de Contagem (continuação)
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados Grupo lógico de dados Grupo lógico de informações de controle É mantido através de processo elementar dentro da fronteira da aplicação que está sendo contada

54 Procedimentos de Contagem (continuação)
Contagem de Função de Transação Funções de Transação representam a funcionalidade fornecida ao usuário para o processamento dos dados por uma aplicação: Entrada Externa Saída Externa Consulta Externa

55 Procedimentos de Contagem (continuação)
Contagem de Função de Transação Cada Função de Transação (EE, SE, CE) deve ser um Processo Elementar. O Processo Elementar deve conter pelo menos uma Lógica de Processamento. Para cada tipo de função de transação, certos tipos de lógicas de processamento devem ser executadas pelo processo elementar para que a intenção primária daquela função de transação seja satisfeita. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site. Processo Elementar: menor unidade da atividade que é significativa ao usuário, auto-contida e deixar o negócio em um estado consistente. Lógica de Processamento: requisitos especificamente solicitados pelo usuário para completar um processo elementar.

56 Procedimentos de Contagem (continuação)
Contagem de Função de Transação Para identificar os Processos Elementares, olhe para as atividades do usuário ocorridas na aplicação: O processo é a menor unidade de atividade que é reconhecida pelo usuário; O processo é auto-contido e deixa o negócio da aplicação em um estado consistente. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

57 Procedimentos de Contagem (continuação)
Contagem de Função de Transação O Processo Elementar deve ser único: A lógica de processamento é diferente das executadas em outros processos elementares da aplicação; O conjunto de tipos de dados identificado é diferente do identificado em outros processos elementares da aplicação; Os ALIs ou AIEs referenciados são diferentes dos arquivos referenciados por outros processos elementares da aplicação. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

58 Procedimentos de Contagem (continuação)
Contagem de Função de Transação Entrada Externa (EE) Processo elementar que processa dados ou informações de controle que vem de fora da fronteira da aplicação; Sua intenção primária é manter um ou mais ALIs e/ou alterar o comportamento do sistema. Nota: arquivos mantidos tanto pela aplicação que está sendo contada e também por outra aplicação, deve ser contado como ALI nas duas aplicações, contando como DERs para cada aplicação apenas os campos que cada aplicação mantém.

59 Procedimentos de Contagem (continuação)
Contagem de Função de Transação - EE Regras Os dados ou informação de controle são recebidos de fora da fronteira da aplicação. Pelo menos um ALI é mantido se o(s) dado(s) que esta(ão) entrando pela fronteira não é uma informação de controle que altera o comportamento do sistema. Para a identificação do processo, umas das seguintes três afirmações devem ser aplicadas: A lógica de processamento é diferente das lógicas executadas em outras entradas externas da aplicação; O grupo de tipos de dados identificados é diferente dos grupos identificados em outras entradas externas da aplicação; Os ALIs ou AIEs referenciados são diferentes dos arquivos referenciados em outras entradas externas da aplicação.

60 Procedimentos de Contagem (continuação)
Contagem de Função de Transação Saída Externa (SE) Processo elementar que envia dados ou informações de controle para fora da fronteira da aplicação. Sua intenção primária é apresentar informações ao usuário através de lógica de processamento ou pela recuperação de dados ou informações de controle.

61 Procedimentos de Contagem (continuação)
Contagem de Função de Transação Consulta Externa (CE) Processo elementar que envia dados ou informações de controle para fora da fronteira da aplicação. Sua intenção primária é apresentar informações ao usuário através da simples recuperação de dados ou informações de controle.

62 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – SE/CE Regras Comuns A função envia dados ou informação de controle para fora da fronteira da aplicação. Para a identificação do processo, umas das seguintes três afirmações devem ser aplicadas: A lógica de processamento é diferente das lógicas executadas em outras saídas externas ou consultas externas da aplicação; O grupo de tipos de dados identificados é diferente dos grupos identificados em outras saídas externas ou consultas externas da aplicação; Os ALIs ou AIEs referenciados são diferentes dos arquivos referenciados em outras saídas externas ou consultas externas da aplicação. DERs (data element type) – é um campo único, reconhecido pelo usuário e não repetido. RETs (record element type) – é um subgrupo de dados reconhecido pelo usuário dentro do ALI ou AIE Este subgrupo pode ser: Opcional: aqueles em que o usuário tem a opção de usar ou não usar este subgrupo durante um processo elementar que inclui ou cria informações. Ex.: quando o usuário for incluir informação de novo funcionário, ele pode ou não incluir informação dos dependentes Obrigatório: são aqueles onde o usuário deve usar pelo menos uma vez. Ex.: toda vez que for incluir novo pedido de compras, o usuário deve informar pelo menos um item do pedido, senão, não existe o pedido. Passos para contagem de PF não-ajustados das Funções de Dados: identifique ao arquivos lógicos internos. Identifique os arquivos de interface externa. Determine a complexidade de cada ALI e AIE identificado. Aplique a contribuição para cada ALI e AIE a partir da sua complexidade, encontrando assim a quantidade de pontos de função não-ajustados de cada função de dados. Calcule o total de pontos de função não-ajustados para cada grupo de funções

63 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – SE Regras Adicionais A lógica de processamento do processo elementar: Contém pelo menos uma fórmula matemática ou cálculo; Cria dados derivados; Mantém pelo menos um ALI; Altera o comportamento do sistema. Exemplo: 1 ALI – baixa complexidade = 1 x 7 = 7 PF não ajustados 2 ALIs – alta complexidade = 2 x 15 = 30 PF não-ajustados 3 AIEs – média complexidade = 3 x 7 = 21 PF não-ajustados

64 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – CE Regras Adicionais A lógica de processamento do processo elementar recupera dados ou informações de controle de um ALI ou AIE. A lógica de processamento do processo elementar NÃO: contém pelo menos uma fórmula matemática ou cálculo; cria dados derivados; mantém pelo menos um ALI; altera o comportamento do sistema.

65 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – ALR Regras de ALRs para EEs Conte um ALR para cada ALI mantido; Conte um ALR para cada ALI ou AIE lido durante o processamento da entrada externa; Conte um ALR para cada ALI tanto lido ou mantido. Passos para a contagem de Funções de Transação: Identificar o processo elementar. Determinar a intenção primária dos processos elementares identificados e classificá-los como EEs, SEs e CEs. Validar novamente as regras de identificação das transações. Determinar a Complexidade das transações. Determinar a Contribuição das transações para a contagem de pontos de função não ajustados.

66 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – ALR Regras de ALRs para SEs Conte um ALR para cada ALI ou AIE lido durante o processamento do processo elementar; Conte um ALR para cada ALI mantido durante o processamento do processo elementar; Conte um ALR para cada ALI tanto lido ou mantido durante o processamento do processo elementar. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

67 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – ALR Regras de ALRs para CEs Conte um ALR para cada ALI ou AIE lido durante o processamento do processo elementar. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

68 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – DERs Regras para DERs de EEs Conte um DER para cada campo não repetido, reconhecido pelo usuário que entra ou existe na fronteira da aplicação e é solicitado para completar a entrada externa; Não conte campos que são recuperados ou derivados pelo sistema e gravados em um ALI durante o processo elementar se os campos não atravessam a fronteira da aplicação; Conte um DER para a capacidade de enviar uma mensagem de resposta do sistema para fora da fronteira da aplicação para indicar um erro ocorrido durante o processamento, confirmação que o processamento está completo ou uma verificação que o processamento deverá continuar. A lógica de processamento deve conter ao menos uma fórmula matemática ou cálculo, ou criar dado derivado. Pode também manter um ou mais ALIs e/ou alterar o comportamento do sistema, desde que não seja a função primária.

69 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – DERs Regras para DERs de SEs e CEs Conte um DER para a habilidade de especificar uma ação, mesmo se existirem vários métodos de chamar o mesmo processo lógico; Conte um DER para cada campo não repetido, reconhecido pelo usuário que entra na fronteira da aplicação e é solicitado para especificar quando, o que e/ou como o dado é para ser recuperado ou gerado pelo processo elementar; Conte um DER para cada campo não repetido, reconhecido pelo usuário que existe na fronteira; Se um DER tanto entra quanto existe na fronteira, conte ele apenas uma vez no processo elementar. A lógica de processamento não deve conter fórmula matemática ou cálculo e nem criar dado derivado. Não pode manter ALIs durante o processamento nem alterar o comportamento do sistema.

70 Procedimentos de Contagem (continuação)
Contagem de Função de Transação – DERs Regras para DERs de SEs e CEs (continuação) Conte um DER para a capacidade de enviar uma mensagem de resposta do sistema para fora da fronteira da aplicação para indicar um erro ocorrido durante o processamento, confirmação que o processamento está completo ou uma verificação que o processamento deverá continuar; Conte um DER para a habilidade de especificar uma ação para ser solicitada mesmo se existirem vários métodos de chamar o mesmo processo lógico; Não conte campos que são recuperados ou derivados pelo sistema e gravados em um ALI durante o processo elementar se os campos não atravessam a fronteira da aplicação; Não conte literais como DERs; Não conte variáveis de paginação ou stamps geradas pelo sistema. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

71 Função Função de Transação EE SE CE IP F N/A
Procedimentos de Contagem (continuação) Diferença entre EEs, SEs e CEs A principal diferença entre as funções de transação é a sua intenção primária. IP = Intenção Primária F = é uma função mas não a IP Função Função de Transação EE SE CE Altera o comportamento do sistema IP F N/A Mantém um ou mais ALIs Apresenta informações ao usuário Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

72 Procedimentos de Contagem (continuação)
Exemplos de EEs Os dados ou informação de controle são recebidos de fora da fronteira aplicação. Pelo menos um ALI é mantido, ou altera o comportamento do sistema: Telas de entrada de dados com operações de inclusão, exclusão, alteração de registros dos arquivos; Entradas em modo batch (uma para cada processo elementar); Transações que recebem dados externos utilizados na manutenção de ALIs. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

73 Procedimentos de Contagem (continuação)
Não Exemplos de EEs Telas de filtros de relatórios e consultas; Menus; Login; Entradas requeridas apenas pela tecnologia ou implementação utilizada. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

74 Procedimentos de Contagem (continuação)
Exemplos de SEs A função envia dados ou informações de controle para fora da fronteira da aplicação. Contém pelo menos uma fórmula matemática ou cálculo, ou cria dados derivados, ou mantém pelo menos um ALI. Relatórios, telas de consulta ou arquivos com totalização de dados ou cálculos; Emissão de relatórios com atualização de algum arquivo lógico interno; Consultas com apresentação de dados derivados; Arquivos de movimento gerados para outros aplicativos; Informações em formato gráfico. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

75 Procedimentos de Contagem (continuação)
Não Exemplos de SEs Telas de help; Drop-downs (combos); Mensagens ocorridas durante uma EE; Arquivos, relatórios ou telas de consultas enviados para fora da fronteira apenas com recuperação da informação de ALI/AIE; Não considerar separadamente as totalizações contidas no relatório. A tabela mostra resumidamente as funções que podem ser executadas para cada tipo de função de transação, e especifica a intenção primária de cada uma. Nota: a intenção primária de uma EE é a principal diferença entre as SEs e CEs, que é que uma SE pode executar a função de alteração do comportamento do sistema ou manter um ou mais ALIs enquanto que a CE não pode. Legenda: PI é a intenção primária para o tipo de função de transação F é uma função, mas não é a intenção primária para o tipo de função de transação, e podem estar presente algumas vezes N/A não se aplica para o tipo de função de transação

76 Formas de lógicas de processamento
Procedimentos de Contagem (continuação) Exemplos de CEs Envia dados ou informações de controle para fora da fronteira da aplicação. Recupera dados ou informações de controle de um ALI ou AIE. Não deve conter fórmula matemática ou cálculo. Não cria dados derivados. Não mantém ALI. Não altera o comportamento do sistema. Relatórios, telas de consulta ou arquivos sem totalização de dados ou cálculos, sem derivação de dados nem atualização de algum arquivo lógico interno; Telas de Help e Drop-dows, desde que recuperem informações de um ALI/AIE; Telas de logon; Menus dinâmicos gerados com base na configuração da aplicação; Help de sistema, help de tela e help de campo, como 1 CE para cada tipo de Help. Resumo de quais lógicas de processamento podem ser executadas pelas EEs, SEs e CEs. d o tipo de função deve executar esta forma de lógica de processamento d* o tipo de função deve executar pelo menos uma destas formas de lógica de processamento p o tipo de função pode executar esta forma de lógica de processamento, mas não é obrigatória n o tipo de função não pode executar esta forma de lógica de processamento Um processo elementar pode incluir múltiplas alternativas ou ocorrências das ações acima. Formas de lógicas de processamento EE SE CE Validações são efetuadas p Fórmulas Matemáticas e Cálculos são efetuados d* n Valores equivalentes são convertidos Dados são filtrados e selecionados por critérios específicos para comparar vários grupos de dados Condições são analisadas para determinas quais se aplicam Pelo menos um ALI é atualizado Pelo menos um ALI ou AIE é referenciado d Dados ou informações de controle são recuperadas Dados derivados são criados O comportamento do sistema é alterado Preparar e apresentar informações para fora da fronteira Capacidade de aceitar dados ou informações de controle que entram pela fronteira da aplicação Ordenação ou reorganização de um grupo de dados

77 Procedimentos de Contagem (continuação)
Não Exemplos de CEs Menus estáticos; Drop-downs (combos); Arquivos, relatórios ou telas de consultas enviados para fora da fronteira incluindo cálculos, derivação de dados ou atualização de arquivos; Dados não recuperados de ALIs ou AIEs.

78 Lógicas de Processamento
Formas de lógicas de processamento Tipos de Função de Transação EE SE CE 1. Validações são efetuadas p 2. Fórmulas Matemáticas e Cálculos são efetuados d* n 3. Valores equivalentes são convertidos 4. Dados são filtrados e selecionados por critérios específicos para comparar vários grupos de dados 5. Condições são analisadas para determinar quais se aplicam 6. Pelo menos um ALI é atualizado 7. Pelo menos um ALI ou AIE é referenciado d 8. Dados ou informações de controle são recuperados 9. Dados derivados são criados 10. O comportamento do sistema é alterado 11. Preparar e apresentar informações p/ fora da fronteira 12. Capacidade de aceitar dados ou informações de controle que entram pela fronteira da aplicação 13. Ordenação ou reorganização de um grupo de dados Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

79 Lógicas de Processamento
Legenda: d o tipo de função deve executar esta forma de lógica de processamento. d* o tipo de função deve executar pelo menos uma destas formas de lógica de processamento (d*). p o tipo de função pode executar esta forma de lógica de processamento, mas não é obrigatória. n o tipo de função não pode executar esta forma de lógica de processamento. Alterar o comportamento do sistema Ex.: seleção de idiomas no inicio de um site.

80 Procedimentos de Contagem (continuação)
Complexidade e Contribuição para as Funções de Transação – EE, SE e CE Arquivo Lógico Referenciado (ALR) Cada ALI lido ou mantido pela função de transação; Cada AIE lido pela função de transação. Dado Elementar Referenciado (DER) Cada campo único, não repetido e reconhecido pelo usuário. Para classificar cada processo elementar, determine qual sua intenção primária.

81 Complexidade 1 a 4 4 a 15 > 16 0 a 1 2 > 3 Contribuição Baixa
Procedimentos de Contagem (continuação) Complexidade e Contribuição da EE DERs Complexidade 1 a 4 4 a 15 > 16 0 a 1 Baixa Média 2 Complexa > 3 ALR Nota: devemos lembrar que uma ordenação não constitui um processo elementar diferente. Ex.: dois relatórios, cuja diferença seja apenas a ordenação dos dados, constitui um único processo elementar. Contribuição Baixa Média Complexa EE x 3 x 4 x 6 Função

82 Complexidade 1 a 5 5 a 19 > 19 0 a 1 2 a 3 > 4 Contribuição
Procedimentos de Contagem (continuação) Complexidade e Contribuição das SEs e CEs DERs Complexidade 1 a 5 5 a 19 > 19 0 a 1 Baixa Média 2 a 3 Complexa > 4 ALR Contribuição Baixa Média Complexa SE x 4 x 5 x 7 CE x 3 x 6 Função

83 Procedimentos de Contagem (continuação)
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados

84 Procedimentos de Contagem (continuação)
Determinar a Contagem de Pontos de Função não-Ajustados Identificar todas as funcionalidades que serão entregues ao usuário em decorrência do desenvolvimento ou melhoria de um aplicativo; Determinar a complexidade e a contribuição de cada função; 3) Totalizar a quantidade de pontos de função não-ajustados do projeto.

85 Procedimentos de Contagem (continuação)
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular a Quantidade de Pontos de Função Ajustados

86 Procedimentos de Contagem (continuação)
Determinar o Fator de Ajuste O Fator de Ajuste (VAF) indica a funcionalidade geral fornecida ao usuário pela aplicação. O VAF é composto por 14 características gerais do sistema. Cada característica vem associada com descrições que ajudam a determinar o nível de influência que variam numa escala de 0 a 5.

87 Procedimentos de Contagem (continuação)
Determinar o Fator de Ajuste (continuação) Avaliar cada uma das 14 características gerais do sistema e classificá-la em uma escala de 0 a 5 para determinar o nível de influência (NI). Totalize os Níveis de Influência determinados nas 14 CGSs para calcular o Total do Nível de Influência (TDI). Aplicar o valor encontrado na fórmula para calcular o Fator de Ajuste: VAF = (TDI * 0,01) + 0,65 Nota: Os combos deverão ser contados uma única vez cada um para a aplicação. Ex.: o combo com o nome da cidade que aparece em diversas telas, deve ser contado uma única vez como CE com 1 ALR e 2 DERs (nome cidade + ação) Se para o mesmo aplicativo tivermos um outro combo onde aparece o código da cidade mais o nome da cidade, deveremos contá-lo separadamente, pois tem um campo a mais que atravessa a fronteira, então fica: CE com 1 ALR e 3 DERs (código cidade, nome cidade + ação)

88 Pontue como Influência no Sistema
Procedimentos de Contagem (continuação) Níveis de Influência Pontue como Influência no Sistema Não presente ou nenhuma influência 1 Influência Mínima 2 Influência Moderada 3 Influência Média 4 Influência Significativa 5 Grande influência A contagem dos ALRs influenciam na complexidade de cada função. Conte um ALR para ALI mantido Conte um ALR para cada ALI ou AIE lido Conte apenas uma vez cada ALI lido e mantido durante o processamento.

89 Procedimentos de Contagem (continuação)
Características Gerais do Sistema 1. Comunicação de Dados 2. Processamento Distribuído 3. Performance 4. Configuração Altamente Utilizada 5. Taxa de Transações 6. Entrada de Dados On-Line 7. Eficiência do Usuário Final 8. Atualização On-Line 9. Processamento Complexo 10. Reutilização 11. Facilidade de Instalação 12. Facilidade de Operação 13. Múltiplos Locais 14. Modificações Facilitadas Passos para contagem de PF não-ajustados das EEs: Identificar os processos elementares; Identificar a intenção primária dos processos elementares, e classifica-los como EE; Validar novamente as regras de identificação da EE; Determinar a complexidade da EE; Determinar a contribuição da EE.

90 Procedimentos de Contagem (continuação)
1. Comunicação de Dados Níveis em que a aplicação se comunica diretamente com o processador. A aplicação é puramente batch ou uma estação de trabalho isolada. A aplicação é batch, mas possui entrada de dados ou impressão remota. A aplicação é batch, mas possui entrada de dados e impressão remota. A aplicação inclui entrada de dados on-line ou front-end de tele processamento para um processo batch ou sistema de consulta. A aplicação é mais que um front-end, mas suporta apenas um tipo de protocolo de comunicação. A aplicação é mais que um front-end, e suporta mais de um tipo de protocolo de comunicação. Passos para contagem de PF não-ajustados das Ses e CEs: Identificar os processos elementares; Identificar a intenção primária dos processos elementares, e classifica-los como SEs ou CEs; Validar novamente as regras de identificação das SEs e CEs; Determinar a complexidade das SEs e CEs; Determinar a contribuição das SEs e CEs.

91 Procedimentos de Contagem (continuação)
2. Processamento Distribuído Nível que a aplicação transfere dados entre os componentes físicos da aplicação. 0. Dados não são transferidos ou processados em outro componente do sistema. 1. Dados são preparados para transferência, então é transferido e processado em outro componente do sistema, para processamento do usuário. 2. Dados são preparados para transferência, então é transferido e processado em outro componente do sistema, não para processamento do usuário. 3. Processamento distribuído e transferência de dados são on-line e em apenas uma direção. 4. Processamento distribuído e transferência de dados são feitos on-line e em ambas as direções. 5. Processamento distribuído e transferência de dados são on-line e são executados dinamicamente na maior parte dos componentes do sistema em apenas uma direção.

92 Procedimentos de Contagem (continuação)
3. Performance Grau para qual o tempo de resposta e através de considerações de performance influenciadas no desenvolvimento da aplicação. 0. Nenhum requisito especial de performance foi determinado pelo usuário. 1. Requisitos de performance e projeto foram estabelecidos e revisados, mas nenhuma ação em especial foi tomada. 2. Tempo de resposta ou volume de processamento são críticos durante as horas de pico. Não é necessário nenhum projeto especial para utilização da CPU. O limite para o processamento é o dia seguinte.

93 Procedimentos de Contagem (continuação)
3. Performance (continuação) 3. Tempo de resposta e volume de processamento é crítico durante todo o dia. Nenhum projeto especial para utilização da CPU foi solicitado. O prazo para processamento das interfaces com sistemas é obrigatório. 4. Adicionalmente, requisitos especificados pelo usuário são exigentes o bastante para que tarefas de análise de performance sejam necessárias na fase do projeto. 5. Adicionalmente, ferramentas de análise de performance devem ser utilizadas nas fases do projeto, desenvolvimento e/ou implementação para que os requisitos de performance do usuário sejam atendidos.

94 Procedimentos de Contagem (continuação)
4. Configuração Altamente Utilizada Nível no qual as restrições de recurso do computador influenciam o desenvolvimento da aplicação. 0. Nenhuma restrição operacional, implícita ou explícita foi incluída. 1. Restrições operacionais existem, mas são menos restritivas que uma aplicação típica. Nenhum esforço especial é necessário para satisfazer as restrições. 2. Restrições operacionais existem, mas são típicas da aplicação. Esforço especial através de controladores ou programas de controle é necessário para satisfazer as restrições. 0. Nenhuma influência Influência Mínima Influência Moderada Influência Média Influência Significativa Grande Influência

95 Procedimentos de Contagem (continuação)
4. Configuração Altamente Utilizada (continuação) 3. Restrições operacionais estabelecidas requerem regras especiais em uma parte da aplicação no processador centro ou um processador dedicado. 4. Restrições operacionais estabelecidas requerem regras especiais na aplicação inteira no processador centro ou um processador dedicado. 5. Adicionalmente, existem regras especiais na aplicação em componentes distribuídos do sistema. Cada característica possui uma descrição específica Após a caracterização do sistema, o VAF pode influenciar a contagem de PF em – 35% a + 35% Lembre-se: o VAF é para o aplicativo no total, mesmo que estivermos fazendo uma contagem de um projeto de melhoria que afeta apenas parte do sistema, devemos considerar o sistema no todo.

96 Procedimentos de Contagem (continuação)
5. Volume de Transação Nível no qual a taxa de transações do negócio influencia o desenvolvimento da aplicação. 0. Nenhuma previsão com períodos de pico de transações. 1. Baixo volume de transações que tem o mínimo de influência nas fases de projeto, desenvolvimento e instalação. 2. Médio volume de transações que tem alguma influência nas fases de projeto, desenvolvimento e instalação. 0. Nenhuma influência Influência Mínima Influência Moderada Influência Média Influência Significativa Grande Influência

97 Procedimentos de Contagem (continuação)
5. Volume de Transação (continuação) 3. Alto volume de transações que influenciam as fases de projeto, desenvolvimento e instalação. 4. Alto volume de transações foi determinado pelo usuário nos requisitos da aplicação ou no acordo de nível de serviço foram forte o bastante para solicitarem tarefas de análises de performance nas fases de projeto, desenvolvimento e/ou instalação. 5. Adicionalmente, requisitos de utilização de ferramentas de análise de performance nas fases de projeto, desenvolvimento e/ou instalação.

98 Procedimentos de Contagem (continuação)
6. Entrada de Dados On-line Níveis no quais os dados são informados ou recuperados através das transações interativas. 0. Todas as transações são processadas em lote. De 1% a 7% das transações são entradas de dados on-line. De 8% a 15% das transações são entradas de dados on-line. De 16% a 23% das transações são entradas de dados on-line. De 24% a 30% das transações são entradas de dados on-line. Mais de 30% das transações são entradas de dados on-line. Para diminuir a subjetividade na determinação do nível de influência de uma característica geral, o IFPUG fornece diretrizes que ajudam nesta tarefa. Se após analisar as diretrizes e mesmo assim nenhuma dessas orientações aplicar-se exatamente ao sistema, um julgamento deve ser feito para determinar o nível de influência mais aproximado.

99 Procedimentos de Contagem (continuação)
7. Eficiência do Usuário Final Nível das considerações para fatores humanos e casos de uso para o usuário na aplicação medida. Itens considerados: auxílio à navegação (teclas de função, acesso direto, menus dinâmicos, hiperlink); Menus; Ajuda e documentação on-line; Movimentação automática de cursor; Rolagem da tela; Paginação; Seleção de dados na tela com o cursor; Utilização intensa de campos com vídeo reverso, brilho, cores e outros indicadores; Documentação impressa das transações; Interface de mouse; Janelas pop-up; Descreve o grau de comunicação da aplicação com o processador. Considera a quantidade de protocolos de comunicação utilizados pela aplicação.

100 Procedimentos de Contagem (continuação)
7. Eficiência do Usuário Final (continuação) Itens considerados: Combos; Templates e/ou defaults; Suporte a dois idiomas (contar como 4 itens); Suporte a mais de dois idiomas (contar como 6 itens). Impressão remota (através de transação on-line); Teclas de função pré-programadas; Processos batch submetidos a partir de transações on-line;0 Descreve o grau de transferência de dados entre diferentes componentes da aplicação.

101 Procedimentos de Contagem (continuação)
7. Eficiência do Usuário Final (continuação) 0. Nenhum dos itens descritos. De 1 a 3 itens descritos. De 4 a 5 itens descritos. 6 ou mais itens, mas não existem requisitos específicos do usuário associados à eficiência. 6 ou mais dos itens acima, e requisitos determinados pelo usuário são fortes o bastante para necessitar de projeto de tarefas para que os fatores humanos sejam incluídos. 6 ou mais dos itens acima, e requisitos determinados pelo usuário são fortes o bastante para necessitar utilização de ferramentas especiais e processos a fim de demonstrar que os objetivos foram alcançados. Mede a importância e conseqüente influência que os objetivos de desempenho do sistema (tempo de resposta, ciclos de processador, etc.) exercem sobre o projeto, desenvolvimento, instalação e suporta da aplicação.

102 Procedimentos de Contagem (continuação)
8. Atualização On-line Níveis para quais os arquivos de interface interna são atualizados on-line. Nenhuma. Atualização on-line de 1 a 3 arquivos de controle está incluído. O volume de atualização é pequeno e a recuperação é fácil. Atualização on-line de 4 ou mais arquivos de controle está incluído. O volume de atualização é pequeno e a recuperação é fácil. A atualização da maioria dos arquivos internos é on-line. Adicionalmente, a proteção contra a perda de dados é essencial e foi especialmente projetada e programada no sistema. Adicionalmente, o alto volume traz considerações de custos no processo de recuperação. Procedimentos de recuperação altamente automatizados com um mínimo de intervenção do operador estão incluídos. Descreve até que pontos as restrições referentes aos recursos computacionais influenciam o desenvolvimento da aplicação.

103 Procedimentos de Contagem (continuação)
9. Processamento Complexo Níveis em que a lógica de processamento influencia no desenvolvimento da aplicação Componentes presentes: Controle sensível e/ou processamento específico de segurança da aplicação; Processamento lógico extensivo; Processamento matemático extensivo; Muito processamento de exceção resultando em transações incompletas que devem ser processadas novamente; Processamento complexo para tratar múltiplas formas de entrada/saída. Descreve em que nível o alto volume de transações influencia o desenvolvimento, instalação e suporte da aplicação.

104 Procedimentos de Contagem (continuação)
9. Processamento Complexo (continuação) Componentes presentes: 0. Nenhum dos itens anteriores. 1. Qualquer 1 dos itens anteriores. 2. Qualquer 2 dos itens anteriores. 3. Qualquer 3 dos itens anteriores. 4. Qualquer 4 dos itens anteriores. 5. Qualquer 5 dos itens anteriores. Descreve em que nível o são efetuadas entradas de dados na aplicação por meio de transações interativas.

105 Procedimentos de Contagem (continuação)
10. Reutilização Níveis para o qual a aplicação e o código da aplicação foram especificamente projetados, desenvolvidos e suportados para serem utilizados em outras aplicações. Não há código reutilizável. Código reutilizável é utilizado na aplicação. Menos de 10% da aplicação levou em consideração as necessidades de mais de um usuário. 10% ou mais da aplicação levou em consideração as necessidades de mais de um usuário. A aplicação foi especificamente empacotada e/ou documentada para fácil reutilização. Ela é customizada pelo usuário no nível de código. A aplicação foi especificamente empacotada e/ou documentada para fácil reutilização. Ela é customizada pelo usuário por meio de manutenção de parâmetros.

106 Procedimentos de Contagem (continuação)
11. Facilidade de Instalação Níveis em que a conversão de ambientes influencia no desenvolvimento da aplicação. 0. O usuário não definiu considerações especiais, e não há procedimento especial para instalação. O usuário não definiu considerações especiais, mas procedimentos especiais são necessários para instalação. Requisitos de instalação e conversão foram definidos pelo usuário, e roteiros de conversão e instalação foram fornecidas e testadas. O impacto da conversão não é considerado importante. Descreve em que nível o são efetuadas entradas de dados na aplicação por meio de transações interativas.

107 Procedimentos de Contagem (continuação)
11. Facilidade de Instalação (continuação) 3. Requisitos de instalação e conversão foram definidos pelo usuário, e roteiros de conversão e instalação foram fornecidas e testadas. O impacto da conversão é considerado importante. 4. Além do item 2, ferramentas de instalação e conversão automáticas foram fornecidas e testadas. 5. Além do item 3, ferramentas de instalação e conversão automáticas foram fornecidas e testadas. Descreve em que nível os arquivos lógicos internos da aplicação são atualizados.

108 Procedimentos de Contagem (continuação)
12. Facilidade de Operação Níveis que a aplicação atende aos aspectos operacionais, como os processos de inicialização, salva e recuperação 0. Não foi estabelecida pelo usuário outra consideração que não os procedimento de segurança normais.

109 Procedimentos de Contagem (continuação)
12. Facilidade de Operação (continuação) 1-4 Selecione os itens que sejam válidos: Procedimentos de inicialização, salvamento e recuperação foram fornecidos, mas é necessária a intervenção do operador; Procedimentos de inicialização, salvamento e recuperação foram fornecidos, e não é necessária a intervenção do operador (conte como 2 itens); A aplicação minimiza a necessidade de montagem de fitas; A aplicação minimiza a necessidade de manipulação de papéis. 5. Aplicação projetada para operação não-assistida. Não é necessário nenhuma intervenção do operador para operar o sistema, que não seja a inicialização e o término da aplicação. A recuperação de erros é automática.

110 Procedimentos de Contagem (continuação)
13. Múltiplos Locais Níveis para os quais a aplicação foi desenvolvida para diferentes ambientes de hardware e software. 0. Os requisitos do usuário não consideram a necessidade de mais de um usuário/local de instalação. 1. Necessidade de múltiplos locais foi considerada no projeto, e a aplicação foi projetada para operar apenas nos mesmos ambientes de hardware e software. 2. Necessidade de múltiplos locais foi considerada no projeto, e a aplicação foi projetada para operar em apenas ambientes de hardware e software similares. Descreve em que nível o processamento lógico ou matemático influencia o desenvolvimento da aplicação.

111 Procedimentos de Contagem (continuação)
13. Múltiplos Locais (continuação) 3. Necessidade de múltiplos locais foi considerada no projeto, e a aplicação foi projetada para operar em ambientes diferentes de hardware e software. 4. Adicionalmente aos itens 1 e 2, plano de suporte e documentação são fornecidos e testados para suportar a aplicação em múltiplos locais. 5. Adicionalmente ao item 3, plano de suporte e documentação são fornecidos e testados para suportar a aplicação em múltiplos locais.

112 Procedimentos de Contagem (continuação)
14. Modificação Facilitada Níveis nos quais a aplicação foi desenvolvida para modificação facilitada da lógica de processamento ou estrutura de dados. As seguintes características podem ser aplicadas na aplicação: Facilidade de consultas/relatórios flexíveis são fornecidos permitindo a manipulação de pedidos simples. (conte 1 item); Facilidade de consultas/relatórios flexíveis são fornecidos permitindo a manipulação de pedidos de média complexidade. (conte 2 itens); Facilidade de consultas/relatórios flexíveis são fornecidos permitindo a manipulação de pedidos complexos. (conte 3 itens). Descreve até que ponto a aplicação e o respectivo código foram projetados, construídos e suportados para serem utilizados em outras aplicações.

113 Procedimentos de Contagem (continuação)
14. Modificação Facilitada (continuação) Dados de controle do negócio Dados de controle do negócio são guardadas em tabelas que são mantidas pelo usuário através de processos on-line interativos, mas as alterações só têm efeito no próximo dia útil. (conte 1 item) Dados de controle do negócio são guardadas em tabelas que são mantidas pelo usuário através de processos on-line interativos, e as alterações têm efeito imediato. (conte 2 itens) 0. Nenhum dos itens anteriores. 1. Qualquer 1 dos itens anteriores. 2. Qualquer 2 dos itens anteriores. 3. Qualquer 3 dos itens anteriores. 4. Qualquer 4 dos itens anteriores. 5. Qualquer 5 dos itens anteriores. Descreve em que nível a conversão de ambientes preexistentes influencia o desenvolvimento da aplicação.

114 Procedimentos de Contagem (continuação)
Fator de Ajuste Após determinar os níveis de influência de cada característica, totalize os níveis encontrados e aplique a seguinte fórmula para encontrar o Fator de Ajuste: VAF = 0,65 + (0,01 x TDI) Descreve até que ponto a aplicação atende aos aspectos operacionais como inicialização, procedimentos de back-up e recuperação e minimização de intervenções manuais.

115 Procedimentos de Contagem (continuação)
Determinar o Tipo de Contagem Identificar o Escopo da Contagem e a Fronteira da Aplicação Contar Função de Dados Contar Funções de Transação Determinar a Contagem do Pontos de Função Não-Ajustados Determinar o Fator de Ajuste Calcular o Ponto de Função Ajustado Descreve até que ponto a aplicação foi especificamente projetada, desenvolvida e suportada para instalação em múltiplos locais para múltiplas organizações.

116 Procedimentos de Contagem (continuação)
Contagem de Pontos de Função Ajustados A contagem de Pontos de Função Ajustados é feita usando uma fórmula específica para cada tipo de contagem: projeto de desenvolvimento, projeto de melhoria e para aplicação (baseline). Descreve até que ponto a aplicação foi especificamente desenvolvida e para facilitar a mudança de sua lógica de processamento ou estrutura de dados.

117 Projeto de Desenvolvimento
Procedimentos de Contagem (continuação) Cálculo da Contagem de PF Ajustados Projeto de Desenvolvimento DFP: pontos de função do projeto de desenvolvimento. UFP: pontos de função não-ajustados das funções disponíveis após a instalação. CFP: pontos de função não-ajustados das funções de conversão. VAF: Fator de Ajuste. DFP = (UFP + CFP) x VAF Exemplo: Comunicação de Dados 3 Processamento Distribuído 3 Performance 3 Configuração Altamente Utilizada 3 Taxa de Transações 4 Entrada de Dados On-Line 5 Eficiência do Usuário Final 3 Atualização On-Line 5 Processamento Complexo 1 Reutilização 3 Facilidade de Instalação 2 Facilidade de Operação 2 Múltiplos Locais 2 Modificações Facilitadas 2 TDI = 41 VAF = 0,65 + (0,01 x TDI) = 0,65 + (0,01 x 41) = 0,65 + 0,41 = 1,06

118 EFP = [(ADD + CHGA + CFP) x VAF] + (DEL X VAFB)
Procedimentos de Contagem (continuação) Cálculo da Contagem de PF Ajustados Projeto de Melhoria EFP: pontos de função do projeto de melhoria. ADD: pontos de função não-ajustados das funções incluídas pelo projeto de melhoria. CHGA: pontos de função não-ajustados das funções modificadas pelo projeto de melhoria. CFP: pontos de função não-ajustados das funções de conversão. VAFA: Fator de Ajuste depois do projeto de melhoria. DEL: pontos de função não-ajustados das funções excluídas pelo projeto de melhoria. VAFB: Fator de Ajuste antes do projeto de melhoria. EFP = [(ADD + CHGA + CFP) x VAF] + (DEL X VAFB)

119 Aplicação – Contagem Inicial
Procedimentos de Contagem (continuação) Cálculo da Contagem de PF Ajustados Aplicação – Contagem Inicial AFP: pontos de função ajustados da aplicação ADD: pontos de função não-ajustados das funções instaladas VAF: Fator de Ajuste da aplicação AFP = ADD x VAF Este é o último passo da contagem de pontos de função.

120 AFP = [(UFPB + ADD + CHGA) - (CHGB + DEL)] X VAF
Procedimentos de Contagem (continuação) Cálculo da Contagem de PF Ajustados Aplicação – Após Projeto de Melhoria AFP: pontos de função ajustado da aplicação. UFPB: pontos de função não-ajustados da aplicação antes do projeto de melhoria. ADD: pontos de função não-ajustados das funções incluídas pelo projeto de melhoria. CHGA: pontos de função não-ajustados das funções modificadas pelo projeto de melhoria após seu término. CHGB: pontos de função não-ajustados das funções modificadas pelo projeto de melhoria antes do seu término. DEL: pontos de função não-ajustados das funções excluídas pelo projeto de melhoria. VAF: Fator de Ajuste depois do projeto de melhoria. AFP = [(UFPB + ADD + CHGA) - (CHGB + DEL)] X VAF

121 Dicas para Ajudar na Contagem APF

122 Dicas para ajudar na Contagem APF
Dicas para Funções de Dados Não assuma que um arquivo físico seja um ALI ou AIE; Operações de junção ou relacionamentos entre arquivos só serão considerados ALIs quando mantiverem em si informações adicionais às chaves; Não considere os arquivos temporários, de trabalho, de sort ou cópias como ALI ou AIE; Os pontos de função para as funções modificadas pelo projeto de melhoria devem refletir as funções como ficarão depois da modificação. Ex.: se um ALI será modificado pois será incluído 3 novos campos e ele tinha 10 campos, para a contagem da complexidade deste ALI consideramos como ficará o ALI após a implementação, ou seja, com 13 campos. Nota: normalmente, o VAFA e o VAFB são iguais, pois eles refletem o valor do fator de ajuste da aplicação, só irão ser diferentes, se com o projeto de melhoria, as modificações alterarem alguma característica geral do sistema. Componentes para o cálculo do número de PF de um projeto de desenvolvimento: Funcionalidade da aplicação requisitada pelo usuário para o projeto: incluídas, alteradas ou excluídas. Funcionalidade de conversão requisitada pelo usuário para o projeto – estas funções não farão parte do tamanho da aplicação. Fator de Ajuste da aplicação. Observe que não é necessário saber o número de PF da aplicação para determinar o tamanho do projeto de melhoria. As funções excluídas diminuirão o tamanho da aplicação, porém contribuirão no projeto de melhoria. n m ChaveA ChaveA ChaveB CampoA1 ChaveB CampoB1 CampoA2 CampoC1 CampoB2 CampoC2

123 Recupera da tabela de ESTILOS Valores Fixos
Dicas para ajudar na Contagem APF (continuação) Dicas para Funções de Transação Drop-down lista (COMBO). 1 CE CE Recupera da tabela de ESTILOS Valores Fixos Aqui consideramos todas as funcionalidades requisitadas pelo usuário e que foram instaladas. Ex.: pacote de software, aplicativo desenvolvido recentemente e instalado, ou ainda um aplicativo instalado há anos e que já sofreu manutenção e seus pontos não foram atualizados.

124 Dicas para ajudar na Contagem APF (continuação)
Dicas para Função de Transação Gráficos são considerados SE e normalmente possuem dois DERs diferentes.

125 DDFechto Dia Fechamento DD MMFechto Mês Fechamento MM
Dicas para ajudar na Contagem APF (continuação) Dicas para Tipos de Dados Uma data armazenada em múltiplos campos deve ser contada como um único DERs. Nome Campo Descrição Formato DDFechto Dia Fechamento DD MMFechto Mês Fechamento MM AAAAFechto Ano Fechament AAAA DataFechto Data Fechament DDMMAAAA O resultado de um cálculo de um processo elementar mantido em um ALI é contado como um DERs deste ALI, mesmo que seja a soma de outros DERs deste ALI; Armazenamento Físico Como visto pelo Usuário

126 Dicas para ajudar na Contagem APF (continuação)
Dicas para DERs Uma imagem anterior e posterior de um grupo de campos mantidos para o propósito de auditoria é contado como um DERs para a imagem antes e outro para a imagem depois. Campos que aparecem mais de uma vez no ALI/AIE devem ser contados como um DERs; Código Nome RG CPF Imagem antes Imagem depois Código Nome RG CPF Código Nome RG CPF

127 Acessos à Internet por Dia da Semana
Dicas para ajudar na Contagem APF (continuação) Dicas para DERs Para valores semanais armazenados para cada um dos 7 dias da semana, conte um DER para o campo valor e outro para o campo que identifica o dia da semana. Acessos à Internet por Dia da Semana Dia Acessos % do Total de Acessos Qtd. De Sites Acessados 1 Segunda-feira 1591 13,83 % 111 2 Terça-feira 1887 16,41 % 201 3 Quarta-feira 1547 13,45 % 177 4 Quinta-feira 1975 17,17 % 195 5 Sexta-feira 2209 19,21 % 191 6 Sábado 1004 8,73 % 200 7 Domingo 1286 11,18 % 121 Total Dias Úteis 9209 80,08% Total Fim de semana 2290 19,91 Não conta como DER Número seqüencial 8 DERs

128 Dicas para ajudar na Contagem APF (continuação)
Dicas para DERs Imagem e som é um DER cada um; Não são considerados DERs informações de cabeçalhos: número de pagina, data e hora, título. Botão de rádio conta como um DERs;  Feminino  Masculino

129 1 DER 4 DERs Dicas para ajudar na Contagem APF (continuação)
Dicas para DERs Caixa de verificação pode representar um ou múltiplos DERs. Conte mais de um DER se cada caixa de verificação é independente das outras e oferece uma diferente funcionalidade a nível do negócio. Conte como um DER se a informação é recursiva;  Cinema  Atualizar BD  Futebol  Imprimir Relatório  Teatro  Gerar Arquivo  Leitura  Enviar Alerta SIM / NÃO SIM / NÃO SIM / NÃO SIM / NÃO 1 DER 4 DERs

130 Dicas para ajudar na Contagem APF (continuação)
Dicas para RLR Geralmente, os sub-tipos de uma entidade são considerados registros lógicos referenciados; Funcionários e dependentes; Conta a pagar e parcelas; Mensagem ( ) e anexos.

131 Como visto pelo usuário
Dicas para ajudar na Contagem APF (continuação) Dicas para RLRs Nota fiscal e seus itens Nota Fiscal NOTA FISCAL No Nome: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx End.: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx % Desconto: 99,99% Vl.Total: ,99 Itens Código Descrição Vl.Unit Vl.Total 99999 xxxxxxxxxxxxxxxxxxxxx , ,99 Número Nota (PK) Código Cliente (FK) Endereço p/ Entrega Percentual Desconto Valor Total Nota: o mesmo acontece para valores mensais e anuais. Item Número Nota (FK) Código Item (PK) Quantidade Implementação Física Como visto pelo usuário

132 Dicas para ajudar na Contagem APF (continuação)
Dicas para Code Data Dados de códigos (Code Data) Este tipo de dado fornece uma lista de valores válidos para um atributo e nem sempre é especificado pelo usuário. Ás vezes é identificado pelo desenvolvedor em resposta a um ou mais requisitos técnicos do usuário. Orientações: Desconsidere as tabelas de Dados de Códigos antes de determinar os arquivos lógicos; Não conte Dados de Códigos como um ALR; Não conte as Funções Transacionais dos Dados de Códigos.

133 EXERCÍCIOS

134 Gestão e Projetos de TI Prof. Guilherme Keller

135 Análise de Pontos de Função
IFPUG – Manual de Práticas de Contagem


Carregar ppt "Gestão e Projetos de TI Prof. Guilherme Keller."

Apresentações semelhantes


Anúncios Google