Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
* * Medidas do Esforço no Desenvolvimento de Software Aula 2 Prof. Horácio Ribeiro Objetivos da aula: - Aprender de forma sucinta o modelo de Albrecht -- Relacionar os conceitos envolvidos na proposta de Albrecht, - Aprender os conceitos em estudo de casos a partir de um DFD - Aprender a usar o modelo para um caso e uso - Converter PF em KLOC - Identificar as limitações do modelo * * DESAFIO: Modelo de medida indireta que permitisse planejar e decidir. Albretch em 1974 após estudado mais 5000 softwares É um modelo baseado na funcionalidade necessária. * * PRINCIPIO: - Identificar características de um sistema e mapear estas características na funcionalidade do software definida na especificação. Albretch identificou que as funcionalidades se refletiam nos seguintes seguintes aspectos: entradas – saídas – consultas – arquivos e interfaces * * CONSTRUÇÃO DA FUNÇÃO: -O Principio é construir uma função que mapeie um número real. - O número real representa uma quantidade de medida da funcionalidade que foi chamado de PONTO FUNÇÃO - Esta função foi construída por ajuste, baseado em dados observados em outros softwares. Este método de construir uma função por observação é muito comum na engenharia * * * * Elementos da funcionalidade * * Tabela de contagem * * Exemplo de contagem * * Identificação dos elementos * * Aplicando na tabela com software simples tem-se: * * Definiu que a forma de desenvolver o sistema pode provar variações na medida da funcionalidade. Analisou 14 fatores que podem influenciar na medida da funcionalidade Estes fatores, alguns subjetivos, são avaliados com uma nota de zero a cinco, por um conjunto de especialistas. * * 14 aspectos técnicos e régua de notas * * A formula construída final ficou: * * As métricas definidas a partir de PF * * Ponto Função Não ajustado: - É o resultado da contagem * Peso de complexidade. (contagem total) Ponto função ajustado - é o resultado considerando as características de implementação. - é o produto da contagem por um fator de ajuste. * * fator de ajuste. 14 ( 0,65 + o,o1 * (NOTA) ) I = 1 i Observe que: 65% é da funcionalidade o fator do somatório pode variar de zero a 0,7 (todos os itens tirando 5) Logo o fator de ajuste pode ser de 1,35 a 0,65 * * O fator de ajuste indica o maior ou menor esforço para a produção do software. um software com características complexas de implementação o fator de ajuste ´1,35 e um s0ftware muito simples 0,65. para uma contagem de 43 (por exemplo) Tem-se: 43 PF não ajustados e 68,05 PF ajustados (se o fator de ajuste for 1,35) (1,35*48) * * Mapeamento de PF em KLOC * * Exercício Faça a previsão de tamanho e prazo para um sistema com 178,45 PF ajustados. Considere a tabela abaixo Decida que linguagem usar se o projeto não pode consumir mais de 450 dias * * Resposta * * Pode-se estimar um projeto no inicio da especificação. Neste caso devido a imprecisão poderemos ter um erro maior na estimativa. * * Fazer o cálculo de PF para um caso e uso * * Fazer o cálculo de PF para um caso e uso * * Fazer o cálculo de PF para um caso e uso * * Contamos - 5 arquivos - 3 entradas - 1 saída - 2 consultas - 0 interfaces * * Aplicando na tabela de contagem 2 5 0 6 35 0 65 * * Desafio: Calcule quantas linhas em C deve se estimar para este sistema? E se for em PHP? * * Você pode estudar um pouco mais visitando o site: Análise de Pontos de Função O metro quadrado do software .: Objetivos :. Sensibilizar a audiência quanto à necessidade de medição de software Apresentar as principais aplicações da FPA como unidade de medida e processo de contagem Apresentar técnicas para definir os objetos de medição Introdução à Análise de Pontos de Função (APF ou FPA) Agenda .: Por que medir? :. Contexto Requisitos : tendem a expandir Qualidade, Funcionalidade, Performance Problemática Recursos : tendem a ser limitados Tempo, Dinheiro, Pessoas entre outros Na satisfação dos Requisitos, disputam-se por Recursos Como manter esta situação sob controle, a fim de obter o melhor resultado? Isoladamente estas tecnologias não foram capazes de fornecer as respostas desejadas. “No Silver Bullet: Essence and Accidents of Software Engeneering” Fred Brooks .: Ferramentas :. Histórico Ferramentas CASE Linguagens de 4a. Geração Tecnologias OO Ambiente integrado de desenvolvimento Arquitetura Cliente-Servidor Hoje Gerência de Projetos Terceirização e Gestão de Contratos Iniciativas de SPI ERP Gerência de projetos “Não se pode controlar aquilo que não se consegue medir” - Tom de Marco .: O que é Gerência de Projetos :. Gerência [Do lat. gerere, 'trazer'; 'produzir', 'criar'; 'executar'; 'administrar'.] Dicionário Aurélio Projetos [Empreendimento temporário posto em execução para criar um único produto ou serviço] PMBOK Como gerenciar projetos? .: Como gerenciar projetos? :. Planejar Definir e refinar objetivos Selecionar o melhor curso de ação Executar Coordenar pessoas e outros recursos para executar o plano Controlar Garantir que os objetivos são alcançados Monitorar e medir o progresso regularmente Identificar variações do plano Tomar ações corretivas quando necessário Processos que permitam controlar sua execução pelo conhecimento prévio dos efeitos de suas respostas. P.: Como? R.: Visibilidade. .: Visibilidade :. Trazer a VISIBILIDADE necessária a: Comunicação efetiva Rápida identificação e correção de problemas Realização de escolhas chave Defesa e justificativa de decisões Acompanhamento de objetivos específicos O principal papel das métricas de projeto é trazer a visibilidade necessário à ação gerencial. P.: A partir de quando? R.: Do início. .: Planejamento :. Quando o trabalho começa Falta de conhecimento exige estimativa Conforme este conhecimento evolui menos se assume O quanto este conhecimento evolui é uma métrica A Análise de Pontos de Função permite estimar o tamanho dos requisitos funcionais desde muito cedo. P.: Como medir conhecimento? R.: Com os requisitos. .: Medindo e Estimando :. Os requisitos e seu crescimento P.: Para que saber o tamanho funcional? R.: Ele é um fator normalizador. Qual o Esforço? Qual o Prazo? Qual o Custo? .: Recursos para responder :. Experiência Individual A Data Limite Indicadores de PRODUTIVIDADE Quantas HORAS são necessárias para realizar as ATIVIDADES envolvidas no fornecimento de um PONTO DE FUNÇÃO em determinado CONTEXTO? Qual o PREÇO de um PONTO DE FUNÇÃO contemplando determinadas ATIVIDADES neste CONTEXTO? A razão de bens ou serviços produzidos por unidade de tempo ou custo “Applied Software Measurement” P.: Está tudo muito abstrato. Dá pra dar um exemplo? .: Estimativas Paramétricas :. Atividades: Especificação (20%) Projeto (30%) Construção (40%) Documentação(10%) Tecnologia: Java Oracle AS com Portal Produtividade: 6 Horas/PF 1.900 PF * 6 H / PF = 11.400H * 11.400 H= 2.280 H * 11.400 H= 3.420 H * 11.400 H= 4.560 H * 11.400 H= 1.140 H P.: E isto é suficiente para tudo dar certo? .: Controle :. Dinâmica dos 99% concluídos P.: Como as métricas podem ajudar? Instrumento de acompanhamento Ajuda a perceber problemas em tempo Várias dimensões : cronograma, custos, qualidade, riscos ou escopo P.: Poderia ser mais específico? O Problema não é só o erro, mas a demora em identificá-lo P.: As métricas coletadas tem valor apenas para este projeto? P.: Minha empresa não desenvolve projetos de software. Ela contrata. A FPA pode ainda me ajudar? Terceirização e Gestão de Contratos A Análise de Pontos de Função como instrumento para nivelar de riscos Na Terceirização pessoas são gerenciadas, enquanto na Gestão de Contratos o foco está no resultado. P.: O FPA ajuda em ambos estes casos? .: Terceirização :. não é Gestão de Contratos Terceirização [Contratação de terceiros, por parte de uma empresa, para a realização de atividades não essenciais, visando à racionalização de custos, à economia de recursos e à desburocratização adminstrativa] Houaiss Gestão de Contratos [processos necessários à obtenção de bens e serviços externos a organização executora] PMBOK .: Pontos de Função :. Por que medir na terceirização? Monitoramento : Produtividade (horas) Qualidade (defeitos) Apesar de nos meses 1,2 e 3 ter havido o mesmo volume de PF entregues, a quantidade de horas aumentou A análise exclusiva da quantidade de horas não é conclusiva .: Pontos de Função :. Por que medir na terceirização? O ponto de função permite monitorar uma tendência de acomodação A industria do Erro. Quanto mais improdutivo mais o subcontratado ganha. P.: Como a FPA ajuda na gestão de contratos? Uma avaliação orientada aos processos de Gerência de Aquisições do Projeto do PMBOK©. .: Pontos de Função :. E na Gestão de Contratos? Ferramentas, Técnicas e Produtos Análise de “Make-or-buy” Seleção do Tipo de Contrato Preço global fixo Preço unitário Negociação Contratual Sistema de Pagamentos Especificação de Trabalho (SOW) Documentos de Aquisição Critérios de Avaliação Relatório de Desempenho .: Análise de “Make or Buy” :. Visa determinar se é mais vantajosa a contratação de um produto específico no mercado ou o seu desenvolvimento interno. Comparação dos níveis de performance Organização x Mercado Alguns aspectos são quantificáveis Análise Objetiva Indicadores Por exemplo ... Comparar: “Pôr em paralelo, equiparar em valor, qualidade ou intensidade” Houaiss .: Caso: Aplicação da FPA :. Análise de “Make or Buy” A organização deve empreender internamente o desenvolvimento de um novo sistema; Deve ser contratada uma empresa externa para o desenvolvimento completo do novo sistema; Deve ser realizado internamente o trabalho de especificação de requisitos e implantação, enquanto a codificação e testes será contratada no mercado; É conveniente a aquisição de um pacote (COTS) com sua parametrização e adequações tanto no parque de sistemas quanto na organização. P.: Como decidir? R.: Compare. P.: Como comparar? R.: Conheça a si para poder comparar-se ao mercado. “Se você conhece o inimigo e se conhece, você não deve temer o resultado de cem batalhas“ A Arte da Guerra .: Conheça a si mesmo :. Funcionalidade solicitada pela organização (PF) Indicadores: taxa de produção (PF/HM), custo (R$/PF), indicadores de qualidade (defeitos/PF), Distribuição do esforço entre as atividades (especificação, projeto, etc.) Números internos de outra forma de difícil apuração ou justificativa. .: Seleção do Tipo de Contrato :. Distribuindo Riscos Aumento do Escopo - Quem Contrata Queda na Produtividade - Contratado Modelos de Terceirização Homem-Hora - O contratado é beneficiado pela queda na produtividade Preço Fechado - O contratado é prejudicado pelo aumento do escopo Pontos de Função - Cada um arca com o risco que lhe corresponde - Ganha x Ganha .: Ponto de Função - Unidade :. Contratando Resultados Se o cliente quiser mais funcionalidades, é só pagar o preço do Ponto de Função Se o fornecedor quiser manter sua lucratividade, é só manter sua produtividade e qualidade Não existe ponto de função “defeituoso” Os pontos de função refletem as novas telas, relatórios, consultas, controles, etc. que vão se materializando conforme se aumenta o conhecimento do sistema SOW “Descreve o item a ser contratado com suficiente detalhe para permitir que os potenciais fornecedores possam avaliar se são capazes de atender ao edital” PMBOK©. P.: E se minha empresa for a fornecedora? .: Outras Aplicações Afins :. Negociação Contratual Sistema de Pagamentos Especificação de Trabalho (SOW) Apoio na validação da descrição Pode ser usada para estimar ou contar PF? Documentos de Aquisição e Critérios de Avaliação Defeitos por Ponto de Função Produtividade Mínima Capacidade de Produção Relatório de Desempenho Iniciativas de Software Process Improvement O papel das métricas e da Análise de Pontos de Função em iniciativas de SPI .: SPI :. Software Process Improvement Procedimento sistemático Melhora a performance de um sistema composto por um conjunto de processos existentes Modificação em processos existentes ou a atualização de novos processos Objetivando corrigir ou evitar problemas identificados no sistema anterior Assessment Software Engineering Processes: Principles and Applications, Wang Y. 2000 P.: O que é um Assessment? Software Engineering Processes: Principles and Applications, Wang Y. 2000 P.: Como assim um modelo? .: SPA :. Software Process Assessment Procedimento sistemático Investiga a existência, adequação e performance de um contexto real Compara a um MODELO, padrão ou benchmark SEI CMMI – Capability Maturity Model ® Integration sm SPICE - Software Process Improvement and Capability Determination (ISO 15504); TickIT Gerência de Requisitos Planejamento de Projetos Monitoramento e Controle de Projetos Gerência de Acordos com Fornecedores MEDIÇÃO e ANÁLISE Garantia de Qualidade de Produto e Processo Gerência de Configuração Nível 1 Inicial Nível 2 Gerenciado Nível 3 Definido Nível 4 Quantitativamente Gerenciado Nível 5 Otimizado .: Process Areas :. Representação em Estágios .: Medição e Análise :. Objetivo: DESENVOLVER e SUSTENTAR a capacidade utilizada no suporte às necessidades de INFORMAÇÃO da gerência. Áreas Relacionadas Planejamento de Projetos [2] Monitoramento e Controle de Projetos [2] Gerência de Configuração [2] Desenvolvimento de Requisitos [3] Definição de Processos Organizacionais [3] Gerência Quantitativa de Projeto [4] CMMI - SW -V1.1- Staged Representation página 152 P.: Enfim qual o papel da FPA nisso? .: Papel da FPA :. Iniciativas de SPI “..., quando feita adequadamente, a medição em seqüência de atributos de qualidade de produtos e processos pode fornecer uma base efetiva para a iniciação e gerência de atividades de melhoria de processos.” PSM: Measuring for Process Management and Improvement William A. F. et al, 1997 FUNCIONALIDADE O Que Medir ? Software é PROCESSO e PRODUTO .: Goal/Question/Metric :. Cada organização ou projeto tem objetivos. Para cada um destes há um conjunto de questões a fim de verificar seu cumprimento. Muitas destas questões tem respostas que podem ser mensuradas Basili, V.R, 1984, Goal Question Metric Paradigm Medidas são a quantificação de uma característica do software, processo ou produto. .: O Que Medir :. Aspectos comuns do software Previsto e Realizado Recursos e Custos Crescimento e Estabilidade Qualidade do Produto Performance do Desenvolvimento Adequação Técnica Categorias para medição Tamanho funcional e estabilidade, etc. Métricas Esforço, Datas, Reporte de Problemas, etc. .: O papel do TAMANHO :. Fator normalizador dos dados (métricas) coletadas Adiciona a experiência coletiva à experiência individual Deve ser representativo - quantificar bens ou serviços produzidos .: Pontos de Função :. Independente de tecnologia e Padronizado pelo IFPUG Requisitos funcionais refletem objetivos objeto de gerenciamento normalizador de todas as atividades envolvidas Baseado em Descrição formal das necessidades de negócio do usuário Em sua linguagem. Desenvolvedores traduzem-na em linguagem de T. I. para fornecer a solução. P.: Mas o que é um Ponto de Função? Método Padrão para Medir Software do Ponto de Vista do Usuário através da quantificação da Funcionalidade Fornecida .: Objetivos :. Objetivos da Técnica Medir a Funcionalidade que o usuário solicita e recebe Medir o desenvolvimento e manutenção de software de forma Independente da Tecnologia utilizada para sua implementação Objetivos do Processo de Contagem Simples o suficiente para minimizar o trabalho adicional envolvido no processo de medição Uma medida Consistente entre vários projetos e organizações .: Componentes da Contagem :. .: Processo de Contagem :. Questões??? Carlos Eduardo Vazquez (27)9254-6389 carlos.vazquez@fattoCS.com.br * * * * O método de Albrecht tem um problema? Como uniformizar o processo de contagem. Para as empresas fazerem negócios precisam de uma unidade que não varia com a subjetividade da contagem. Para resolver isto criou-se um organismo internacional chamado IPFG – internacional Ponto Função GRUPO * * O IPFG TEM COMO OBJETIVO DESENVOLVER E PADRONIZAR A FORMA DE MEDIR O SOFTWARE Produz um manual de contagem que serve como padrão Tem melhorado a forma de diminuir a subjetividade da contagem * * Com isto encerramos nossa aula. Na próxima aula Vamos verificar como o FPUG definiu o processo de contagem. Vamos verificar que os princípios do ponto função foram preservados mas a forma da contagem foi sistematizada. Faça os exercícios e estude no nosso livro texto * * Até a próxima aula *
Compartilhar