Introducao A Metricas De Software

  • May 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Introducao A Metricas De Software as PDF for free.

More details

  • Words: 1,513
  • Pages: 5
Unioeste - Universidade Estadual do Oeste do Parana Ciência da Computação – Disciplina: Engenharia de Software II Prof. Willian Francisco da Silva Introdução a Métricas de Software 32 Apresentar os conceitos de métricas de software e destacar sua importância e utilidade. Bibliografia www.bfpug.com.br http://www.pr.gov.br/batebyte/edicoes/2000/bb101/metricas.htm www.psphome.hpg.ig.com.br/downloads/ etapas_do_gerenciamento_do_projeto.doc http://www.iis.com.br/~coriceu/prodsoft/12metr.htm Título Nro. Objetivo

Introdução a Métricas de Software

Não se pode controlar aquilo que não se consegue medir. Tom de Marco Software é atualmente um dos maiores componentes do orçamento de muitas organizações. A maioria delas reconhece a importância de controlar os gastos com software, de analisar a performance dos resultados obtidos com o seu desenvolvimento e manutenção, a fim de permitir uma padronização. Para fazer isto, necessitamos fazer uso de medidas e de modelos apropriados. Medidas são necessárias para analisar qualidade e produtividade do processo de desenvolvimento e manutenção bem como do produto de software construído. Sabendo exatamente o "tamanho" do sistema a ser desenvolvido, pode-se pensar em : • alocar adequadamente a equipe que o desenvolverá; • definir claramente as responsabilidades; • ter indicação de performance durante o desenvolvimento; • avaliar se novas tecnologias estão efetivamente trazendo os ganhos esperados; • ter um gerenciamento mais correto; • melhorar a precisão das estimativas envolvidas; • avaliar o patrimônio representado pelo software desenvolvido; E a partir de medições torna-se possível realizar uma das atividades mais fundamentais do processo de gerenciamento de projetos que é o planejamento. A partir deste planejamento, passamos a identificar a quantidade de esforço, o custo e as atividades que serão necessárias para a realização do projeto.[2] Pela medição é possível quantificar e assim administrar melhor. O processo é medido num esforço para melhorá-lo. O produto é medido, num esforço para aumentar a sua qualidade.

1

Unioeste - Universidade Estadual do Oeste do Parana Ciência da Computação – Disciplina: Engenharia de Software II Prof. Willian Francisco da Silva O software é medido por muitas razões: indicar a qualidade do produto, avaliar a produtividade das pessoas que produzem o produto, avaliar os benefícios derivados de novos métodos e ferramentas de software, formar uma linha básica para estimativas, ajudar a justificar os pedidos de novas ferramentas ou treinamento adicional. Porém, às vezes surgem indagações do tipo: Quais são as métricas apropriadas para o processo e para o produto? É justo usar medições para se comparar pessoas, processos e produtos? Essas perguntas vem à tona quando é feita uma tentativa de se medir alguma coisa que não tenha sido medido no passado. A medição é algo comum no mundo da engenharia. Infelizmente, a engenharia de software está longe de ter uma medição padrão amplamente aceita e com resultados sem nenhum fator subjetivo. Temos dificuldade em concordar sobre o que medir e como avaliar o resultado das medições obtidas. Geralmente, usa-se o recursos das estimativas (ou do chute1). Estimativas são feitas usando-se a experiência passado como único guia. Se um novo projeto for muito semelhante, em termos de tamanho e função, a um projeto passado, provavelmente esse novo projeto exigirá aproximadamente a mesma quantidade de esforço, tomará o mesmo tempo em calendário e custará o mesmo valor em dólares. Há bem pouco tempo, a única base para a realização de estimativas era a experiência da equipe técnica envolvida no projeto, ou seja, um processo inteiramente subjetivo e que fatalmente levava a atividades atropeladas ou não realizadas, produtos com deficiência funcional, custo de realização além do previsto e atraso na entrega do produto. Um dos grandes problemas da utilização da experiência passada de desenvolvimento de projetos de software em novos desenvolvimentos é a dificuldade de estabelecer semelhanças de funcionalidade e tamanho entre projetos de software. Se o projeto romper novos horizontes, novas técnicas de estimativas foram disponibilizadas para o desenvolvimento de software com os seguintes atributos: • O escopo do projeto deve ser estabelecido antecipadamente. • Métricas de software são utilizadas e o histórico de aferições passadas é usado como uma base a partir da qual estimativas são feitas. • O projeto é dividido em pequenas partes que são estimadas individualmente.

1

CHUTE – calculo hipotetico usando tecnica estruturada

2

Unioeste - Universidade Estadual do Oeste do Parana Ciência da Computação – Disciplina: Engenharia de Software II Prof. Willian Francisco da Silva Utilidade das Medidas A capacidade de se medir um sistema de software (ou suas partes) permite: 1. estimar o tempo de construção do software 2. estimar regiões que tendem a apresentar uma grande taxa de defeitos. 3. ajudar na justificação de novas ferramentas e especialização adicional. As métricas relacionadas com (1) são importantes principalmente na etapa de análise do sistema. As métricas relacionadas com (2 e 3) são importantes em todas as fases de desenvolvimento do sistema. Categorias de métricas As métricas de software, do ponto de vista de medição, podem ser divididas em duas categorias: medidas diretas e indiretas. Podemos considerar como medidas diretas do processo de engenharia de software o custo e o esforço aplicados no desenvolvimento e manutenção do software e do produto, a quantidade de linhas de código produzidas e o total de defeitos registrados durante um determinado período de tempo. Porém, a qualidade e a funcionalidade do software ou a sua capacidade de manutenção são mais difíceis de ser avaliadas e só podem ser medidas de forma indireta. Também podemos dividir as métricas de software, sob o ponto de vista de aplicação, em duas categorias: métricas de produtividade e de qualidade. As métricas de produtividade se concentram na saída do processo de engenharia de software e métricas de qualidade indicam o quanto o software atende aos requisitos definidos pelo usuário. Entre as medidas diretas do processo de engenharia de software incluem-se o custo e o esforço aplicados. As medidas diretas do produto incluem as linhas de código produzidas, velocidade de execução, tamanho de memória e defeitos registrados ao longo de certo espaço de tempo. As medidas indiretas do produto incluem funcionalidade, qualidade, complexidade, eficiência, confiabilidade, manutenibilidade e outras. • • • • •

métricas da produtividade que se concentra na saída do processo de engenharia de software; métricas da qualidade que mostra o quão o estreitamente o software conforma-se às exigências implícitas e explícitas do cliente. métricas técnicas concentram-se na característica do software e não no processo pelo qual o software foi desenvolvido. métricas Orientadas ao Tamanho são usadas para compilar as medições diretas da saída e da qualidade da engenharia de software. métricas Orientadas para a função oferecem medidas indiretas

3

Unioeste - Universidade Estadual do Oeste do Parana Ciência da Computação – Disciplina: Engenharia de Software II Prof. Willian Francisco da Silva •

métricas Orientadas às Pessoas compilam informações sobre a maneira segundo a qual as pessoas desenvolvem software de computador.

Implementando um programa de métricas A implementação de um programa de métricas em uma empresa requer a atuação em diversas frentes: estrutura organizacional, padrões, ferramentas e processos. Estrutura organizacional: A estrutura organizacional da empresa deve ser modificada sendo criada uma equipe central para dar suporte às atividades relacionadas ao controle de métricas. Dentre as responsabilidades atribuídas a esta equipe destacam-se: definir os processos de medidas que serão usados; consolidar as métricas; analisar e divulgar; manter as ferramentas utilizadas para a coleta e gerenciamento; treinar as equipes; Padrões: Diversos padrões devem ser estabelecidos pela equipe central do programa de métricas. Exemplos: • Classificar os projetos em tipos de desenvolvimento: novos desenvolvimentos; grandes melhorias; manutenção; projetos internos; • Padronizar as fases dos projetos: levantamento de requisitos; análise; projeto; • Padronizar as atividades não operacionais da equipe: férias; licenças; • Padronizar as métricas primitivas: linhas de código, homens-hora,... • Padronizar as métricas compostas: Produtividade = linhas-decódigo/pessoas-mês, Tempo de entrega = pontos-de-função / duração Ferramentas: Diversos programas podem ser utilizados no apoio à implementação do programa de métricas. Como exemplo, programas para: a manutenção do banco de dados de métricas; a apropriação das homem-horas consumidos nas atividades; a contagem de linhas de código e para o cálculo de pontos de função; visulaização gráfica dos dados obtidos e consolidados; Processo: O processo de implementação do programa de métricas se faz por fases com as seguintes atividades. Pontos de Função – PF Para se dimensionar o "tamanho" de um software utilizam-se diversas técnicas. Dentre elas destaca-se a Análise por Pontos de Função. Em resumo, é uma técnica na qual verifica-se no software a ser criado a quantidade de interfaces com outras funcões e arquivos de dados e pontua-se cada interface considerando sua complexidade. Após algumas considerações qualitativa-se chega-se a uma quantidade que representa o "tamanho" do software a ser desenvolvido.

4

Unioeste - Universidade Estadual do Oeste do Parana Ciência da Computação – Disciplina: Engenharia de Software II Prof. Willian Francisco da Silva Na engenharia temos o uso de metro quadrado (m2) para avaliar o tamanho de uma construção. Mas obviamente outros grandezas são necessárias para um completo conhecimento da construção, por exemplo, preço, tempo de duração da construção, qualidade do material a ser utilizado, etc. Da mesma forma, o PF nos dá o tamanho do software (como se fosse o m2 da engenharia civil) mas necessita diversas outras grandezas para permitir um planejamento adequado do desenvolvimento e o dimensionamento completo do software.

5

Related Documents