O Modelo de Informação do Practical Software Measurement – PSM (2008) também
pode ser considerado uma evolução do modelo GQM. O PSM fornece um apoio para a definição das necessidades de Informações, o Goal do GQM (WIEGERS, 2001) e um guia para chegar-se na especificação da métrica e indicadores.
O modelo PSM relaciona-se ao desenvolvimento de uma estrutura de informação de medição de projeto usando o Modelo de Informação de Medição, e descreve atividades e tarefas de medição usando o Modelo de Processo de Medição. Estes modelos fornecem a base para um programa de medição de software efetivo (MCGARRY, 2002; PSM, 2008).
O PSM é um processo para se analisar questões relacionadas a projetos de software, seus riscos e custos. Ele é baseado na experiência obtida em projetos do departamento de defesa dos Estados Unidos, representando as melhores práticas da comunidade de engenharia de software. O processo é completamente flexível para se adaptar a uma necessidade específica de uma organização (DOD, 2008).
2.7.7.1. O Modelo de Processo de Medição
O Modelo de Processo de Medição do PSM fornece um framework para implementação de medição em um projeto. Ele é construído baseando-se no ciclo PDCA (Plan - Do - Check -
Act) de Deming (1982), adaptado para suportar atividades e tarefas específicas de medição. A
Figura 7 apresenta o Modelo de Processo de Medição que inclui quatro atividades principais: planejar medição, executar medição, avaliar medição, estabelecer e sustentar compromisso.
O subprocesso Planejar Medição compreende a identificação das necessidades de informação do projeto e a seleção das medidas apropriadas para tratar estas necessidades utilizando o Modelo de Informação de Medição. Este subprocesso compreende 3 atividades:
Identificar e priorizar necessidades de informação Selecionar e especificar métricas
Integrar mensuração aos processos do projeto
O subprocesso Executar Medição engloba a coleta e o processamento dos dados de medição; o uso dos dados para analisar as necessidades de informação e questões associadas; e a geração de produtos de informação para apresentar os resultados da análise, ações alternativas, e recomendações para os responsáveis pelas decisões. Este subprocesso também é composto por 3 atividades:
Coletar e processar dados Analisar dados
Produzir recomendações
O subprocesso Avaliar Medição aplica técnicas de medição e de análise para medir o processo. As medidas aplicadas e a capacidade do processo de medição são avaliadas, ajudando a identificar as ações de melhoria associadas. As atividades que compõe este subprocesso são:
Avaliar medidas
Avaliar o processo de mensuração Atualizar a base de experiências Identificar e implementar melhorias
O processo Estabelecer e Sustentar Compromissos garante que sejam fornecidos os recursos e a infra-estrutura organizacional requeridos para implementar um programa de medição viável.
Os Processos Técnicos e Gerenciais também estão representados no Modelo de Processo de Medição. Os responsáveis pelas decisões operam dentro destes processos, definindo necessidades de informação e usando produtos de informação de medição para apoiar suas decisões.
2.7.7.2. Estrutura de formação de Indicadores do PSM
A estruturação de um indicador descreve como os atributos relevantes de software são quantificados e convertidos para indicadores. A Figura 8 ilustra a estrutura de formação de um indicador (HAZAN, 2002). Os componentes chave são os seguintes:
Atributo mensurável é uma propriedade distinguível de uma entidade de software. Entidades incluem processos, produtos, projetos e recursos. Os atributos devem ser relevantes para atender às necessidades de informação do usuário.
Medida Básica é uma medida de um único atributo definido por um método de medição específico. Uma medição básica é funcionalmente independente de todas as outras medidas e captura informação sobre um único atributo.
Método de Medição é uma seqüência lógica de operações, descrito genericamente, usado na quantificação de um atributo com respeito a uma escala específica. Cada combinação única de um atributo e um método produz uma medida básica diferente.
Tipo de Método depende da natureza das operações usadas para quantificar um atributo específico. Os métodos podem ser subjetivos, os quais envolvem julgamento humano ou objetivos, os quais se baseiam em regras numéricas tais como contagem. Estas regras podem ser implementadas manualmente ou automaticamente.
Escala é um conjunto de valores ordenado, contínuo ou discreto, ou um conjunto de categorias, nas quais um atributo é mapeado. A escala define o conjunto de possíveis valores que podem ser produzidos pela execução de um método de medição.
Unidade de Medição é uma quantidade específica, definida e adotada por convenção, com a qual outras quantidades do mesmo tipo são comparadas para expressar sua magnitude relativa para aquela quantidade.
Medida Derivada é uma medida, ou quantidade, que é definida como uma função de duas ou mais medidas básicas ou derivadas.
Função Medição é um algoritmo ou cálculo executado para combinar dois ou mais valores de medidas básicas e/ou derivadas.
Indicador é uma medida que fornece uma estimativa ou avaliação de atributos derivados de um modelo de análise com respeito a definição de necessidades de informação. Indicadores constituem a base para a tomada de decisões.
Modelo de Análise envolve duas ou mais medidas básicas ou derivadas com um critério de decisão associado. Os modelos de análise produzem estimativas ou avaliações relevantes para as necessidades de informação definidas.
Critério de Decisão são limiares, metas e limites usados para determinar a necessidade para ação ou investigação adicional ou descrever o nível de confiança em um resultado dado. O critério de decisão ajuda a interpretar os resultados da medição.
Figura 8 - Estruturação de criação de um Indicador no PSM (HAZAN, 2002)
A Figura 9 a seguir apresenta um exemplo de uma construção de um indicador de produtividade. A produtividade está relacionada ao esforço gasto e ao tamanho do software. Assim, o esforço e o tamanho são as entidades de software mensuráveis de interesse. Atributos específicos destas entidades devem ser selecionados para que seja possível quantificar e uma função de medição deve ser projetada para combiná-los em uma medida derivada para cada projeto. A estimativa de produtividade baseada em dados históricos permite a computação de intervalos de confiança que ajudam a avaliar se os resultados atuais são similares aos valores estimados.
Figura 9 - Exemplo de estruturação de Indicador através do PSM (HAZAN, 2002)
Os principais benefícios de se utilizar a estrutura do PSM são: padronização da nomenclatura de componentes utilizados para compor um indicador; redução de redundância, identificando um conjunto essencial de medidas básicas; aumento da precisão e repetibilidade pela garantia de que todos os aspectos essenciais da abordagem da medição estão adequadamente definidos; maximização do valor das medições básicas pela criação de padrões para indicadores que podem ser facilmente reconhecidos, reusados, e adaptados; documentação do link entre a necessidade de informação e como esta é satisfeita.
O PSM apresenta a estrutura mais completa, quando comparamos com o GQM e GQ(I)M. Ele possui um detalhamento de cada um dos componentes de um indicador e faz o mapeamento até o objetivo traçado, conforme demonstrado na Figura 8 e Figura 9. Porém, também se trata de uma processo genérico para definição de indicadores, acarretando nos mesmos problemas listados anteriormente para o GQM e GQ(I)M.