ISO/IEC 14598 – 6 Avaliação do Produto – Módulos de Avaliação Paulo Jorge nº 20949 Pedro Pereira nº 19953 1 Resumo 2 Introdução NORMA ISO/IEC 14598 Conceitos de Módulos de Avaliação Formato de um Documento Desenvolver um Módulo de Avaliação Exemplo de um Módulo de Avaliação Introdução A avaliação do Software depende em larga escala das técnicas e métricas utilizadas. Mas também a forma como a documentação das métricas e dos métodos é feita, assume um papel importante. – – O conceito de Módulo de Avaliação permite uma solução para estas necessidades – 3 Deve ser standard. De fácil acesso. Define uma forma de avaliação e a formatação que reporta os resultados das medidas resultantes da aplicação das métricas e técnicas (What). Introdução 4 Entende-se por módulo de avaliação um pacote contendo a tecnologia para avaliação das características e subcaracterísticas de um determinado software: Os modelos de qualidade; dados e informações a respeito do plano de aplicação desses modelos. Objectivo – Padronizar os módulos de avaliação para que seja possível a sua reutilização (Why) Introdução 5 Os módulos de avaliação podem ser utilizados no contexto das ISO/IEC 9126 e dos standards da ISO/IEC 14598. – ISO/IEC 9126 – Características da qualidade do produto de Software. – ISO/IEC 14598 – Plano para a avaliação de produtos de Software. ISO/IEC 14598 6 ISO 14598 7 Módulo de Avaliação - Conceito 8 Diferentes aspectos da avaliação necessitam de diferentes técnicas de aplicação. Assim, uma avaliação deve ser estruturada em unidades. Cada uma das unidades deve focar a avaliação da qualidade de um aspecto específico, recorrendo a uma técnica específica. Esta informação deve estar bem armazenada para que privilegie uso futuro – Módulo de Avaliação. Módulo de Avaliação 9 Clarifica qual o aspecto da qualidade do software que está a ser medido; A forma como ao medida é efectuada está bem definida, bem como as pré-condições e exactidão da medida. Estabelecem as ligações entre as técnicas de avaliação, as métricas e as medidas. Documentação Formato Será aplicado dentro do contexto da avaliação do produto de software; Deve suportar o desenvolvimento de novas métricas estado da arte; Disponibiliza uma definição precisa das métricas utilizadas e sua aplicação; Contém toda a informação necessária para aqueles que futuramente necessitem do MA para uma nova avaliação. 10 Documentar Módulos de Avaliação Documentar um módulo de avaliação tem como vantagens: Disponibilizar uma referência comum para descrição das bases teóricas do módulo; Identificar um conjunto de requisitos para documentar e desenvolver um módulo; Permite a recolha e catálogo de um largo número de módulos de avaliação antecipadamente. 11 Desenvolver um MA 1 – Identificar os requisitos do MA – – – 2 – Especificar o MA – 12 Identificar o modelo de qualidade; Identificar características e sub-características da qualidade; Decidir qual o objectivo da avaliação. Com base nos requisitos, especificar as técnicas de inputs da avaliação, bem como as métricas. Desenvolver um MA 3 – Desenvolver Procedimentos de avaliação – – – 4 – Descrição do Procedimento de Avaliação – Descrever o ponto anterior de acordo com o formato do MA – ser conforme com esta norma. 5 – Verificação e Validação do MA – 13 Estimar quais os recursos necessários; Detalhar as procedures de avaliação a desenvolver; Uma versão trial da procedure avaliação pode tornar-se uma mais valia. A validação deve assegurar que o MA representa o estado da arte da tecnologia, e ser testado por diferentes tipos de pessoas e em diferentes ambientes. Formato Documentação (EM0 – EM5) 14 EM0 - Introdução – Informação formal sobre o módulo de avaliação; – Breve introdução sobre as técnicas descritas no módulo; – Preparação, aprovação, contribuições e alterações e relações com outros documentos. Formato Documentação (EM0 – EM5) EM1 – Âmbito – – – Define o âmbito da aplicação do módulo de avaliação; Identifica as características, sub-características ou atributos onde o módulo de avaliação tem aplicação; Descreve o nível de avaliação definido pelo módulo. – – 15 O nível deve ser descrito tendo em conta a utilização do software e o seu ambiente de utilização. Deve descrever as técnicas de avaliação aplicadas; Identificar o âmbito de aplicação do módulo. Formato Documentação (EM0 – EM5) EM2 - Referências – 16 Nesta clausula são apontadas as referências a normativos ou a documentos técnicos. Se o módulo de avaliação depende do resultado de outros, é nesta clausula que devem ser mencionados. Formato Documentação (EM0 – EM5) EM3 – Termos e Definições – – 17 Aqui são definidos os termos técnicos utilizados no módulo. Podem ainda ser encontrados nesta clausula, referências a fontes onde as definições podem ser encontradas. Formato Documentação (EM0 – EM5) EM4 – Inputs e Métricas – Identifica os inputs necessários para a avaliação: – – Especificar os dados a extrair dos inputs; Descrever como as medidas são calculadas através dos dados, utilizando as métricas. 18 Componentes do produto; Informação do produto; Informação de suporte; Informação sobre o produto em utilização. Se as métricas forem combinadas, devem ser descritas aqui as dependências. Todas as suposições e pré-condições têm de ser satisfeitas antes de se proceder è medição. Formato Documentação (EM0 – EM5) EM5 – Interpretação dos Resultados – – – 19 Especificar a interpretação dos resultados obtidos com as medições; Se obtiverem medidas distintas para uma mesma característica ou atributo, aqui são descritas as formas como podem ser combinadas e avaliadas; Descreve o índice do relatório que fornecerá o resultado final da aplicação do módulo. Em alguns casos, a visualização de valores obtidos são importantes e devem ser encorajados. Formato Documentação (EM0 – EM5) EMA – Procedimento da Aplicação – – – A inclusão deste anexo é opcional Deve descrever os procedimentos da aplicação de forma detalhada. Deve incluir pontos como: 20 Definição de termos técnicos usados; Recursos necessários para a implementação; Instruções da avaliação; Documentação. Exemplo de MA – Fault Density EM0 - Introdução – Objectivo – Determinar a densidade de falhas (defeitos no software) num programa, calculada recorrendo a estimativa. EM1 - Âmbito – Características: – – – 21 Fiabilidade; Maturidade; Densidade de falhas. Nível de avaliação – B (ISO 14598-5) Técnicas – Modelo de Crescimento de Fiabilidade Aplicabilidade – a todos os tipos de linguagens de programação. Exemplo de MA – Fault Density EM2 - Referências – EM3 - Termos e Definições – – – – – – – 22 Fault – Defeito no Software; Falha – Ocorrência de um evento, dado um conjunto de eventos definidos; LOC – Linhas de Código; ELOC – Nº de linha de código onde foi detectada e modificada uma falha; EELOC – Nº estimado de ELOC; NCLOC- Nº de linhas sem comentários; FDV (Fault Density Value) – nº de Falhas por unidade de volume do produto. Exemplo de MA – Fault Density EM4 - Inputs e Métricas – Inputs – Dados – Nº de falhas detectadas (ELOC) Determinação do tempo de cada falha (calendário do CPU) Nº de linhas de código (NCLOC) Métricas e Medidas 23 Código Origem – Componente do produto Programa de testes – Informação do Produto FDV = (EELOC – ELOC)/NCLOC) Exemplo de MA – Fault Density EM5 - Interpretação dos Resultados – Mapping das medidas: – FDV <= 10^-4 EXCELENTE 10^-4 < FDV <= 10^-3 BOM 10^-3 < FDV <=10^-2 SUFICIENTE FDV > 10^-2 MAU Valores de acordo com os objectivos dos thresholds e do domínio do software avaliado. Reporting Resultados obtidos com o MA – Identificação do código fonte – FDV – Rating correspondente {Excelente; Bom; Suficiente; Mau} 24 Exemplo de MA – Fault Density EM6 – Procedimento da Aplicação – – RGM – Modelo utilizado para estimar o nº de linhas de código com erro. Recursos necessários: 25 Ferramenta de contagem de LOC; Ferramenta de contagem de linhas alteradas; Ferramenta de recolha de dados RELIABILITY; Ferramenta de análise (Opcional); Hardware comum Exemplo de MA – Fault Density EM6 – Qualificações – Mão de Obra – Seleccionar amostras de código; Geração de linhas de dados; Algoritmo Documentação 26 Na recolha das falhas e no cálculo dos valores FDV. Instruções de Avaliação – Conhecimentos da aplicação do Modelo RGM. Identificar a versão do código fonte da amostra; Qual o conjunto de falhas utilizados para estimar EELOC; Data da aplicação e a pessoa responsável. Exemplo de MA – Qualidade em Uso EM0 – Introdução – Princípios de avaliação da qualidade em uso de um produto de software. EM1 – Âmbito – Características Este MA especifica como se avaliam 3 qualidades de uso definidas na ISO/IEC 9126-1 e os principios da ISO 9241-11. – Efectividade; – Produtividade; – Satisfação. 27 Exemplo de MA – Qualidade em Uso – – – EM2 – Referências – 28 Nível de Avaliação – O nível de acuidade ao uso depende de quão próximo está o contexto de avaliação face ao contexto da utilização do software, tendo em conta ainda o número de utilizadores. Técnica – Simulação de ambiente real, sem outra ajuda que não a existente em ambiente real. Aplicabilidade – Apropriado a qualquer produto que faça parte de um sistema com interacção de utilizadores. … Exemplo de MA – Qualidade em Uso EM3 – Termos e Definições – – – – Contexto do Uso – todo o ambiente real; User – A pessoa que interage com o produto; Objectivo – O que se pretende com a avaliação; Tarefa – Actividades para atingir o objectivo. EM4 - Inputs e Métricas – Input 29 Código executável e documentação; Contexto do uso; Contexto da avaliação Exemplo de MA – Qualidade em Uso EM4 – Inputs e Métricas – Dados – Métricas 30 Tempos de tarefa; Tempos de Output; Satisfação dos Resultados; Dificuldades encontradas. Efectividade Produtividade Satisfação Exemplo de MA – Qualidade em Uso EM5 – Interpretação dos Resultados – – – – Efectividade; Produtividade; Satisfação; Interpretação das medidas: 31 Acuidade ao uso; Interpretação. Relatório. Exemplo de MA – Qualidade em Uso EM6 – Procedimentos na Aplicação – Recursos Necessários: – Instruções: 32 Um avaliador com valências e experiência na avaliação de factores humanos; Esforço de, pelo menos, 3 pessoas para planear, 2 pessoas para avaliar e 2 pessoas para a análise e relatório. O relatório deve definir claramente que utilizadores efectuaram que tarefas, em que ambientes e toda a estrutura em que de desenrolou a simulação.