1.35k likes | 1.44k Views
Gestão e Projetos de TI Prof. Guilherme Keller. Análise de Pontos de Função. IFPUG – Manual de Práticas de Contagem. AGENDA. Introdução Contagem nas Fases do Ciclo de Vida Termos Utilizados na APF Procedimentos de Contagem Determinar o Tipo de Contagem
E N D
Gestão e Projetos de TI Prof. Guilherme Keller
Análise de Pontos de Função IFPUG – Manual de Práticas 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
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.
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, ...
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.
Introdução • Indicadores Derivados de PONTOS DE FUNÇÃO • Horas/PF; • R$/PF; • Defeitos/PF; • Baseline; • Tamanho do Backlog.
Introdução APF - Análise de Pontos de Função É um métodopadrãopara medir desenvolvimento de software doponto de vista do usuário.
Introdução • Objetivos da APF • Análise de Pontos de Funçãomede 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.
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.
Contagem nas Fases do Ciclo de Vida
Contagem nas Fases do Ciclo de Vida Comparação de Medidas
Contagem nas Fases do Ciclo de Vida • Contagem:Indicativa, Estimada e Detalhada • As contagens Indicativa e Estimada foram criadas pela NESMA e aContagem 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.
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.
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.
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.
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. Termos Utilizados pela APF
Informações de Controle Dados que influenciam um processo elementar da aplicação que está sendo contada. Especifica oque, 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. 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. 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. Termos Utilizados pela APF
Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Identificar o Escopo da Contagem e a Fronteira da Aplicação Determinar o Tipo de Contagem Calcular a Quantidade de Pontos de Função Ajustados Determinar o Fator de Ajuste Procedimentos de Contagem
User 1 Sistema Monetário Índice de Conversão (AIE) Solicitação e Apresentação das Informações do Funcionário (juntas 1 CE) Aplicação de Recursos Humanos Informação do Funcionário (ALI) User 1 Informações de Novo Funcionário (EE) User 1 Relação de Funcionários (SE) Fronteira Exemplo Resumido de Contagem
Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Identificar o Escopo da Contagem e a Fronteira da Aplicação Determinar o Tipo de Contagem Calcular a Quantidade de Pontos de Função Ajustados Determinar o Fator de Ajuste Procedimentos de Contagem (continuação)
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. 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. 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. 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. Determinar o tipo de Contagem
Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Identificar o Escopo da Contagem e a Fronteira da Aplicação Determinar o Tipo de Contagem Calcular a Quantidade de Pontos de Função Ajustados Determinar o Fator de Ajuste Determinar o tipo de Contagem
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. Identificar o Escopo da Contagem e a Fronteira da Aplicação
Escopo da Contagem Define a funcionalidade que será incluída em uma determinada contagem de pontos de função. Procedimentos de Contagem (continuaçã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.
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. 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. Procedimentos de Contagem (continuação)
Contar Funções de Dados Contar Funções de Transação Determinar a Contagem de Pontos de Função Não-Ajustados Identificar o Escopo da Contagem e a Fronteira da Aplicação Determinar o Tipo de Contagem Calcular a Quantidade de Pontos de Função Ajustados Determinar o Fator de Ajuste 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. 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. 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. 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 referenciadospor 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. 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. 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. 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. Procedimentos de Contagem (continuação)
Diferença entre ALIs e AIEs A principal diferença entre um ALI e um AIE é que o AIEnã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. 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. Quando mantidos pelo usuário Procedimentos de Contagem (continuação) • 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.
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.). 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 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. Procedimentos de Contagem (continuação)