A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Engenharia de Software

Apresentações semelhantes


Apresentação em tema: "Engenharia de Software"— Transcrição da apresentação:

1 Engenharia de Software
Métricas de Software Márcio Campos -

2 Motivação Métrica é fundamental para qualquer disciplina de engenharia. A métrica possibilita uma avaliação objetiva e matemática para a avaliação de software. Métricas podem ser de controle ou preditivas.

3 Medição, Métrica e Indicador
É o ato de se determinar a medida. Métrica ou medida Correlaciona duas medidas de alguma forma ou com algum padrão. Prove uma indicação quantitativa da extensão, volume, dimensão, capacidade ou tamanho de algum atributo de um produto ou de um processo. Indicador. É uma combinação de métrica ou de medições que provê algum conhecimento sobre o processo, o produto ou sobre o projeto.

4 Aplicação Métrica podem ser aplicadas tanto para a avaliação do processo ou projeto quanto para a avaliação do produto. Métricas podem ser aplicadas para estimativas, produtividade, controle de qualidade. Possibilitam a criação de modelos em que são estabelecidos critérios para avaliação da qualidade.

5 Tipos de Medição Diretas ou primitivas Indiretas ou derivadas
De processo: custo e esforço. De produto: linhas de código, velocidade de execução. Indiretas ou derivadas Funcionalidade, complexidade, eficiência etc.

6 Característica da métrica
Internas dizem respeito aos atributos internos ao software tais como manutenibilidade. Externas dizem respeito ao atributos externos, vistos pelos usuários finais

7 Processo de medição Escolhas as medições a serem feitas
Selecione os componentes a serem avaliados Meça estes componentes. Identifique as características anômalas. Analise os componentes anômalos.

8 Métricas de Software Métricas de produto

9 Linhas de código Forma direta de se medir código Controvérsias
Vantagem: facilidade de medição. Desvantagens: Dependentes da linguagem de programação. Penaliza programas bem estruturados e projetados. Para o uso de estimativas deve-se entrar em um nível de detalhe muito grande. O que é uma linha de código?

10 Lines of Code (LOC)/Direta

11 Comparação

12 Análise de Pontos por Função/indireta
Concentra-se na funcionalidade ou utilidade dos sistemas. Baseados em: Entradas do usuário (telas). Saídas do usuário (telas e relatórios)‏ Consultas (telas). Arquivos. Arquivos de Interface.

13 Pontos por Função Não Ajustados, Cálculo

14 Pontos por Função/indireta

15 Comparação

16 Ajuste dos Pontos de Função
São considerados 14 itens (graus de influência), dentre os quais: Necessidade de backup, Comunicação de dados Processamento distribuído, Desempenho crítico. Entrada de dado on-line, Reutilização de código. São avaliados atribuindo-se um valor de 0 a 5 a cada um dos ítens (ajuste)‏

17 Ajuste dos Pontos de Função (II)‏
PFA = PF x (0,65 + (0,01 x ajuste))‏ Os graus de influência afetam em +/- 35% do tamanho do sistema. Produtividade = PF/PM. Qualidade = PF rejeitados/PF aceitos. Custo = $ / PF.

18 Características Vantagens Desvantagens independente da linguagem.
considera a tecnologia como fator de influência no tamanho do sistema Desvantagens aplicado somente a sistemas de informação. não considera sistemas multimídia, hipertexto, orientado a objeto. só a partir de uma definição completa do sistema que se tem a real idéia do seu tamanho

19 PF e LOC

20 Análise de Pontos por Caso de Uso
Baseia-se na medição dos casos de uso de uma aplicação. Consiste na medição de: atores (Unadjusted actor weight): baseado no tipo de ator. casos de uso (unadjusted use case weight): baseado no número de transações de um caso de uso. Unadjusted use case points = UAW e UUCW Considera-se dois tipos de ajustes: técnicos e de ambiente technical complexity factor (13 fatores) = (0.1 x Tfactor)‏ environmental complexity factor (8fatores) = (-0.03 x Efactor)‏ use case points = UUCP x TCF x ECF

21 Análise de Pontos por caso de uso
Modelo geral da Análise de Pontos por Caso de Uso

22 Outras métricas de produto
Correção. Defeitos/KLOC Manutenibilidade. Tempo médio de mudança. Usabilidade. Habilidades intelectuais e operacionais necessárias. Tempo necessário para se tornar eficiente. Aumento de produtividade associado. Avaliação subjetiva.

23 Métricas de Software Métricas de projeto

24 Métricas de projetos interativos
Indicadores de gerenciamento progresso: trabalho e progresso despesa: orçamento e despesas rotatividade: alocação e rotatividade da equipe Indicadores de qualidade establidade: fluxo de mudanças e estabilidade modularidade: fragmentação e modularidade adaptabilidade: retrabalho e adaptabilidade maturidade: tempo médio entre falhas e maturidade

25 Métricas de Software Métricas de Processo

26 Métricas de Processo Tempo gasto para um processo em particular ser concluído. Recursos requeridos para um processo particular Número de ocorrências de um evento em particular.

27 Métricas de processo Estabelecendo uma referência.
Um conjunto de métricas. Considerando... Relativa acurácia das informações. Obtida de vários projetos. As métricas devem ser consistentes. As aplicações devem ser similares (mesmo domínio).

28 Métricas de Software Goal, Question & Metric http://www.gqm.nl/

29 O modelo

30

31 Sumário Métricas são importantes para a construção de sólidos princípios pautados por modelos confiáveis e decisões isentas. Pode-se medir o produto, o processo o projeto. Deve-se estabelecer modelos de qualidade pautados em indicadores consistentes. Deve-se praticar a medição a partir de modelos e de processos de medição estabelecidos como o GQM e ami.

32 Dúvidas? Márcio Campos - camposmf@gmail.com
Métricas de Software. Dúvidas? Márcio Campos -


Carregar ppt "Engenharia de Software"

Apresentações semelhantes


Anúncios Google