Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução
Receba as boas-vindas à disciplina Métricas de Software.
Toda empresa já nasce com o “sonho de ser bem-sucedida”, porém muitas delas nem
chegam a completar seu primeiro ano. Empresas de sucesso são aquelas que estão
trabalhando com foco na gestão da qualidade e do conhecimento. No entanto, não se
pode gerenciar o que não se pode medir. Assim, plataformas como ITIL, CMMI, MPS-BR
e outras, colocam as métricas e medições como práticas fundamentais para a gestão de
software com padrão de qualidade.
A qualidade tornou a medição do software nos seus diversos aspectos uma obrigação.
Deve-se desenvolver no profissional de software a visão gerencial, assim como a
preocupação com custo, produtividade, qualidade e novas métricas, suas formas de
medição e suas limitações. Ele deve conhecer conceitos para medir o software
(produtividade, qualidade, prazo, tamanho etc.) desde a fase de especificação de
requisitos. Para tal, deve conhecer técnicas e ferramentas em suas medidas nas diversas
fases do projeto.
Objetivos
Compreender os conceitos das métricas e das medições de software;
Entender o que envolve a qualidade de software.
O que é métrica?
Por sua natureza, a engenharia é uma disciplina quantitativa. A métrica de produto ajuda
os engenheiros de software a visualizar o projeto e a construção do software,
focalizando atributos específicos e mensuráveis dos artefatos da engenharia de
software.
Quem realiza?
Atenção!
A métrica de produto proporciona uma base por meio da qual a análise, projeto,
codificação e teste podem ser conduzidos mais objetivamente e avaliados de maneira
mais quantitativa.
Por que devemos medir?
Para sabermos quanto cobrar;
Para conseguirmos dar prazos;
Para definirmos a equipe;
Para definirmos complexidade;
Para definirmos tamanho;
Para medirmos risco.
Os resultados das análises são interpretados para obter informações sobre a qualidade
do software.
Atenção!
O produto, no caso, são as métricas computadas por meio de dados coletados dos
requisitos e modelos de projeto, código-fonte e casos de teste.
Essas medidas de atributos internos do produto fornecem uma indicação em tempo real
da eficácia dos modelos de requisitos, projeto e código, da eficácia dos casos de teste e
da qualidade geral do software que será criado.
Qualidade de Software
O desenvolvimento de sistemas de software envolve uma série de atividades em que as
oportunidades de falhas são muito grandes.
Ninguém tolera erros, por isso o desenvolvimento de software tem que ter garantia de
qualidade.
Custo do reparo
Quanto mais cedo for verificado o software durante o seu ciclo de vida, menores as
chances de elevar os custos de reparo.
Figura 1
Garantia de qualidade
A garantia de qualidade de software (Software Quality Assurance) não é algo com a qual
começamos a nos preocupar depois que o código foi gerado, e sim ao longo de todo o
processo de engenharia de software. A SQA ou GQS abrange:
Estratégia de teste;
Mecanismos de medição.
Figura 4
Características operacionais
Corretude
Confiabilidade
Usabilidade
Integridade
Características de manutenção
Manutenibilidade
Flexibilidade
Testabilidade
Refere-se ao esforço exigido para testar um programa a fim de garantir que ele execute
a função pretendida. Posso testá-lo?
Reusabilidade
Interoperabilidade
Refere-se ao esforço exigido para se acoplar um sistema a outro. Serei capaz de compor
uma interface com outro sistema?
SEGUNDO PRESSMAN:
“Você não pode testar qualidade. Se ela não estiver lá antes, ela não estará lá quando
terminar de testar”;
MEDIDA
MEDIÇÃO
MÉTRICA
Duração do projeto
Custo
Métricas do processo
As métricas do processo quantificam atributos do processo de desenvolvimento e do
ambiente de desenvolvimento.
Métricas para o nível de experiência do pessoal: número de anos que uma equipe está
usando uma linguagem de programação; número de anos que um programador está na
organização.
Técnicas de desenvolvimento;
Auxílio para programação;
Técnicas de supervisão etc.
Métricas do produto
São medidas do produto de software. Podem não revelar nada sobre como o software
foi desenvolvido.
Incluem:
Atenção!
Figura 5
Qualidade;
Funcionalidade;
Complexidade;
Eficiência;
Confiabilidade;
Manutenibilidade.
Vantagens:
É fácil de calcular;
É o fator mais importante para muitos modelos de estimativa.
Desvantagens:
Princípios de medição
Formulação: criação de medidas e métricas apropriadas para a representação
do software.
Coleção: no caso, refere-se ao mecanismo usado para acumular dados
necessários para criar as métricas formuladas.
Análise: é a computação das métricas e a aplicação de ferramentas
matemáticas.
Interpretação: relacionada à avaliação de métricas que resultam em
informações sobre a qualidade da representação.
Feedback: são recomendações derivadas da interpretação de métricas de
produto transmitidas para a equipe de software.
Pressman (Engenharia de Software) elege atributos que deverão ser abrangidos por
métricas. Clique aqui [../docs/a01_t28.pdf] para conhecer esses atributos, na íntegra.
Planejamento
Análise
Design
Programação