MÉTRICAS DE SOFTWARE



Documentos relacionados
Padrões de Qualidade e Métricas de Software. Aécio Costa

Engenharia de Software

Projeto de Sistemas I

Qualidade de Software. Profa. Cátia dos Reis Machado

Engenharia de Software

Implantação de um Processo de Medições de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

ENGENHARIA DE SOFTWARE I

Introdução à ES - Continuação

GARANTIA DA QUALIDADE DE SOFTWARE

Introdução Visão Geral Processos de gerenciamento de qualidade. Entradas Ferramentas e Técnicas Saídas

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite (81 )

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Requisitos de Software

Copyright Total Metrics

Análise Estruturada de Sistemas

Políticas de Qualidade em TI

Fundamentos de Teste de Software

Teste de Software. Profa. Cátia dos Reis Machado

NORMA ISO/IEC Isac Aguiar isacaguiar.com.br

ISO Aécio Costa

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira

O processo de melhoria de processo

Software na medida certa: desmistificando pontos de função

Concepção e Elaboração

Modelos de Qualidade de Produto de Software

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software

Como Definir Processos de Estimativas aderentes às Melhores Práticas do CMMI?

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

Lean Seis Sigma e Benchmarking

Introdução à Engenharia de Software

MASTER IN PROJECT MANAGEMENT

Engenharia de Software II: Desenvolvendo o Orçamento do Projeto. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Auditoria e Qualidade de Software ISO/IEC 9126 Engenharia de Software Qualidade de Produto

CMMI Conceitos básicos. CMMI Representações contínua e por estágios. Professor Gledson Pompeu (gledson.pompeu@gmail.com)

Análise de Pontos por Função

Avaliação de Riscos Aplicada à Qualidade em Desenvolvimento de Software

Escolha os melhores caminhos para sua empresa

Engenharia de Software

Projectos de Software

Fase 1: Engenharia de Produto

Modelagem de Software

Metodologias de Desenvolvimento de Sistemas. Analise de Sistemas I UNIPAC Rodrigo Videschi

Gestão da Qualidade Políticas. Elementos chaves da Qualidade 19/04/2009

GESTÃO DE PROJETOS PARA A INOVAÇÃO

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

Artigo Lean Seis Sigma e Benchmarking

Padrões de Qualidade de Software e Métricas de Software

Introdução à Computação

Planejamento e Gerenciamento de Software. Tema 3. Gerência de Projetos Profa. Susana M. Iglesias

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

PDS - DATASUS. Processo de Desenvolvimento de Software do DATASUS

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr

Engenharia de Software na Prática Hélio Engholm Jr.

Modelo de Qualidade CMMI

PRODUTOS RIOSOFT COM SUBSÍDIO SEBRAEtec

Introdução à Qualidade de Software. Profº Aldo Rocha

Engenharia de Software II


Fundamentos em Teste de Software. Vinicius V. Pessoni

Fundamentos de Sistemas de Informação Sistemas de Informação

Engenharia de Software

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Simulações em Aplicativos

Engenharia de Requisitos

Gerenciamento de Processos de Negócio. Macaé. 08 de setembro de Marcos Santos.

Processo de Desenvolvimento Unificado

UNIVERSIDADE FEDERAL DO PARANÁ - UFPR Bacharelado em Ciência da Computação

Como Implantar Agora 03 Controles Simples e Efetivos Para Você Garantir A RASTREABILIDADE Da Sua Empresa Sem Precisar Investir em Softwares Caros!

MELHORIA DE SERVIÇO CONTINUADA ITIL FOUNDATION V3 Conteúdo deste resumo deve ser contemplado com a leitura do livro ITIL Melhoria de Serviço

Padrões de Qualidade de Software

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Qualidade de. Software. Definições. Qualidade do Produto ISO Processo de. Software. Modelo de Processo de. Software CMM SPICE ISO 12207

ENGENHARIA DE SOFTWARE

COMO ENTENDER O VALOR EMPRESARIAL DOS SISTEMAS E COMO GERENCIAR A MUDANÇA

Introdução. Gerência de Projetos de Software. Sumário. Sistemas de Informação para Processos Produtivos

UML - Unified Modeling Language

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP

FERRAMENTAS E INDICADORES DE DESEMPENHO

Metodologia de Gerenciamento de Projetos da Justiça Federal

Proposta de Especificação do Software. Codificar Sistemas Tecnológicos. Site Institucional GRUPO POLYMAC-DINOX. Autor: Equipe Codificar

Gerenciamento de Qualidade

ANÁLISE COMPARATIVA ENTRE OS MODELOS DE PROCESSO: PROTOTIPAÇÃO, PSP E SCRUM

EXERCÍCIO 3 Metodologia de gestão de processos

COMO ENTENDER O VALOR EMPRESARIAL DOS SISTEMAS E COMO GERENCIAR A MUDANÇA

Planejamento de Projetos. Professor Gabriel Baptista ( gabriel.baptista@uninove.br ) ( )

Transcrição:

MÉTRICAS DE SOFTWARE 1

Motivação Um dos objetivos básicos da Engenharia de Software é transformar o desenvolvimento de sistemas de software, partindo de uma abordagem artística e indisciplinada, para alcançar um processo controlado, quantificado e previsível. Métricas de Software são discutidas há mais de 20 anos na engenharia de software. No entanto, sua utilização não é verificada, na prática, na maioria dos projetos. Pesquisas realizadas em empresas de software indicam que mais da metade dos grandes projetos sofrem com atrasos, altos custos ou algum fracasso na sua execução. Falta de controle dos projetos 2

Motivação Não se pode gerenciar o que não se pode medir. Tom De Marco Se você não sabe para onde quer ir, pode seguir qualquer caminho. Se você não sabe onde está, não adianta ter um mapa, que ele não vai ajudar! Roger Pressman 3

O que são Métricas de Software? Uma métrica é a medição de um atributo (propriedades ou características) de uma determinada entidade (produto, processo ou recursos). Exemplos: Tamanho do produto de software (ex: Número de Linhas de Código LOC) Número de pessoas necessárias para preparar a especificação em UML de uma aplicação Número de defeitos encontrados no documento de requisitos do software 4

O que são Métricas de Software? Uma métrica é a medição de um atributo (propriedades ou características) de uma determinada entidade (produto, processo ou recursos). Exemplos: Tempo, em dias, para realizar a programação de um sistema Custo, em R$, para a realização de uma tarefa Grau de satisfação do cliente com um determinado software (muito satisfeito / satisfeito / pouco satisfeito) 5

Por que Medir Software? Entender e aperfeiçoar o processo de desenvolvimento Melhorar a gerência de projetos e o relacionamento com clientes Reduzir frustrações e pressões de cronograma Gerenciar contratos de software Indicar a qualidade de um produto de software 6

Por que Medir Software? Avaliar a produtividade do processo Avaliar os benefícios (em termos de produtividade e qualidade) de novos métodos e ferramentas de engenharia de software Avaliar retorno de investimento 7

Propriedades Desejáveis de uma Métrica Facilmente calculada, entendida e testada Passível de estudos estatísticos Expressa em alguma unidade (tempo, pessoas, $) Obtida o mais cedo possível no ciclo de vida do software Passível de automação 8

Propriedades Desejáveis de uma Métrica Repetível e independente do observador Comprometida com uma estratégia de melhoria 9

Em resumo... Uma métrica deve ser: Válida: quantifica o que se quer medir Confiável: produz os mesmos resultados, dadas as mesmas condições Prática: barata, fácil de calcular e fácil de interpretar 10

Em resumo... Dois contextos para medição de software Processo: ex. produtividade Produto: ex. qualidade 11

Categorização de Métricas Métricas diretas (fundamentais ou básicas) Medidas realizadas em termos de atributos observados (usualmente determinadas pela contagem) Ex.: custo, esforço, número de linhas de código, número de páginas, número de diagramas, etc. 12

Categorização de Métricas Métricas indiretas (derivadas) Medidas obtidas a partir de outras métricas Ex.: complexidade, eficiência, confiabilidade, facilidade de manutenção uso de fórmulas 13

Categorização de Métricas Métricas orientadas a tamanho São medidas diretas do tamanho dos artefatos de software associados ao processo por meio do qual o software é desenvolvido. Ex.: custo da implementação, número de linhas de código (LOC, KLOC) número de páginas de documentação, número de defeitos em uma especificação de requisitos, etc. 14

Categorização de Métricas Métricas orientadas por função Consiste em um método para medição de software que indica a complexidade do software. Ex.: SOD (Speed of Delivery) - medida do número de funções desenvolvidas/entregues em um determinado período de tempo (mês), utilizando a equipe disponível. 15

Categorização de Métricas Métricas de produtividade Concentram-se na saída/resultado do processo de engenharia de software. Ex.: PDR (Project Delivery Rate) - horas necessárias para desenvolver parte do sistema (função) Métricas de qualidade Oferecem uma indicação de quanto o software se adapta às exigências do cliente Ex.: defeitos por artefato 16

Categorização de Métricas Métricas técnicas Concentram-se nas características do produto e não no processo de desenvolvimento Ex.: complexidade lógica e grau de manutenibilidade 17

Possíveis Problemas com Métricas Ex: Comparar a produtividade de engenheiros em termos de linha de código Está sendo utilizada a mesma unidade de medida? O que é uma linha de código válida? O contexto considerado é o mesmo? Todos os engenheiros são familiarizados com a linguagem de programação? 18

Possíveis Problemas com Métricas O que se quer realmente é o tamanho do código? E a qualidade do código? Como o resultado será interpretado? Produtividade média de um engenheiro? O que se quer com o resultado? Comparar a produtividade do processo de software? 19

Os Quatros Papéis de Medição Entender Métricas ajudam a entender o comportamento e funcionamento de processos, produtos e serviços de software Avaliar Métricas podem ser utilizadas para tomar decisões e determinar o estabelecimento de padrões, metas e critérios de aceitação 20

Os Quatros Papéis de Medição Controlar Métricas podem ser utilizadas para controlar processos, produtos e serviços de software Prever Métricas podem ser utilizadas para prever valores de atributos 21

Estimativas de Software Objetivos: 1. Estimar o tamanho do produto 2. Estimar o esforço 3. Estimar o prazo 4. Fornecer estimativas dentro de uma faixa permitida e refinar essa faixa à medida que o projeto progride É difícil conhecer se é possível desenvolver o produto desejado pelo cliente antes de conhecer os detalhes do 22

Estimativas de Software É difícil conhecer se é possível desenvolver o produto desejado pelo cliente antes de conhecer os detalhes do projeto 23

Tipos de Estimativas Tamanho Quantidade de software a ser produzida Ex. número de linhas de código, número de requisitos funcionais, número de casos de uso Esforço Derivado da estimativa de tamanho Ex. estimativa de tamanho X produtividade (qtde diagramas X tpo gasto para 1 analista preparar 1 diagrama = esforço (dias) 24

Tipos de Estimativas Prazo Geralmente é baseado em datas requisitadas pelo cliente Qualidade Medidas de resultados Ex. defeitos por fase, esforço de mudanças 25

ISBSG International Software Benchmarking Standards Group Organização sem fins lucrativos Mantém um banco de dados de métricas de projetos de software para auxiliar na melhoria gerência de recursos de Tecnologia da Informação http://www.isbsg.org/ 26

Métricas de Software: Resumo As atividades de medição devem ser guiadas por objetivos Planos de Métricas detalham como criar programas de medição para atender a objetivos técnicos específicos Tendências recentes: evolução de métricas ou modelos específicos para a implantação de amplos programas organizacionais de métricas 27

Métricas de Software no Contexto de Qualidade 28