Para início de estudo
Seção 2 Os tipos de métricas
Pressman (1995) dividiu o domínio das métricas de sotware sob o ponto de vista da aplicação em:
a) Métricas de qualidade: oerecem uma indicação de quanto o
sotware pode adequar-se às exigências implícitas e explícitas do cliente. Normalmente, a qualidade é medida durante todo o processo de engenharia de sotware (complexidade, modularidade e tamanho do programa) e depois que o produto é entregue a seu usuário (número de deeitos, manutebilidade do sistema). Tipicamente empresas
desenvolvedoras utilizam-se da norma ISO/IEC 9126, que possuem um conjunto de métricas relacionadas às suas características.
b) Métricas de produtividade: concentra-se na saída do processo de
engenharia de sotware.
c) Métricas técnicas: concentra-se na característica do sotware, na sua
complexibilidade lógica e grau de manutenibilidade e não no processo por meio do qual o sotware oi desenvolvido.
d) Métricas orientadas ao tamanho: são medidas diretas do sotware e
do processo por meio do qual ele é desenvolvido.
e) Métricas orientadas para unção: são medidas indiretas do
sotware e do processo por meio do qual ele é desenvolvido, determina de orma consistente o tamanho e a complexidade de um sotware.
) Métricas orientadas às pessoas: compilam inormações sobre
a maneira segundo a qual as pessoas desenvolvem sotware de computador, e as percepções humanas sobre a eetividade das erramentas e métodos.
A classicação das métricas não é uma unanimidade, em alguns casos parecem até redundantes, como no caso das métricas de produtividade e orientadas ao tamanho. A seguir, acompanhe mais detalhes sobre as métricas orientadas ao tamanho e a unção:
Métricas orientadas ao tamanho
As métricas de sotware orientadas ao tamanho são medidas diretas do sotware e do processo de desenvolvimento de sotware.
Universidade do Sul de Santa Catarina
Imagin a sguint situação: você tm uma pquna mprsa d dsnvolvimnto mantém rgistros rlacionados ao tamanho dsts projtos (m linhas d código) no dcorrr dos últimos 5 anos.
ests dados srão a bas para alimntar um conjunto d métricas d qualidad d produtividad orintadas ao tamanho para cada projto. Obsrv a gura a sguir:
Projeto Esorço $ KLOC Pg/Doc Erros Pessoas
Folha de Pagamento 24 168 12.1 365 29 3 Contabilidade 62 440 27.2 1224 86 5 Contas a Pagar 43 314 20.2 1050 64 6
Lgnda:
Esorço- númro d mss d dsnvolvimnto
$- custo m dólars ( X 100 )
KLOC- númro d linhas d código ( X 100 )
PG/Doc- rr-s ao númro d páginas d documntação
Erros- rros ncontrados na as d tsts
Pessoas- númro d pssoas nvolvidas no dsnvolvimnto Obsrv qu as métricas orintadas ao tamanho giram m torno do númro d linhas d código (LOC) como a principal mdida. Vja qu, a partir do quadro aprsntado, torna-s possívl calcular a produtividad, a qualidad, o custo o nívl d documntação do projto. Acompanh: Produtividad = KLOC/pssoa-mês
Qualidad = rros/KLOC Custo = $/LOC
Documntação = páginas documntação/KLOC
Contas a Pagar
Produtividad = 20200 / 6 = 3366,67 Qualidad = 64/20200 = 0,003168
Custo = 31400/20200 = 1,55
Documntação = 1050/20200 = 0,05198
No sistma d contas a pagar, o custo por linha d código do projto oi d US$ 1,55, ntão oram implmntadas 20.200 linhas a um custo d US$ 1,55 por linha d código. Já a produtividad da quip oi d 3366,67 linhas d código para cada mmbro da quip d dsnvolvimnto.
Qualidade de Sotware
e dados históricos disponíveis. Mas seu uso possui muitos opositores que criticam a dependência da métrica do tipo de linguagem de programação. Seu uso com linguagens procedurais é eciente, mas de diícil utilização em linguagens não-
procedurais como linguagens orientadas a objetos (JAVA), pois não considera questões como herança, penalizando programas bem escritos. De qualquer maneira, sua aplicação depende de uma base histórica de projetos anteriores.
Métricas orientadas à unção
A métrica orientada à unção mede o sotware através da quanticação de sua uncionalidade ornecida ao usuário. Consiste em um método para medição de sotware que
determina de orma consistente o tamanho e a complexidade de um sotware , sob a perspectiva do usuário, independentemente
da tecnologia utilizada.
Não são contadas linhas de código. A métrica orientada à unção concentra-se na uncionalidade ou utilidade do programa. Uma abordagem oi sugerida baseada nesta proposta chamada de
pontos por unção ( unction point ).
Os pontos por unção (FPs) são derivados, usando-se uma relação empírica baseada em medidas de inormações e complexidade do sotware.
Pontos de Função e Medidas: o que é um Ponto de Função? O que é Tamanho Funcional?
Tamanho uncional é uma mdida d tamanho d sotwar basada m uma avaliação padronizada dos rquisitos lógicos dos usuários. Smlhant aos mtros quadrados d uma casa, pontos d unção são indpndnts dos métodos ísicos, rramntas ou linguagm d dsnvolvimnto utilizados para construir o sotwar. O procsso d cálculo d pontos d unção stá contido no Manual d Práticas d Contagm (atualmnt m sua vrsão 4.0) do Grupo Intrnacional d Usuários d Pontos d Função (IFPUG).
Universidade do Sul de Santa Catarina
Como calcular pontos d unção?
Pressmann (1995) identica as unções de negócio no cálculo do ponto de unção em 5 unções principais:
Entradas (EE) -são inormações ornecidas ao sistema
pelo usuário, ou seja, entrada de dados no sistema eitas pelo usuário, por exemplo a inclusão, alteração ou exclusão dos dados cadastrais para azer sua cha na locadora, ou o lançamento dos dados de um DVD recebido pela locadora.
Saídas (SE) - as saídas são relatórios, mensagens de erro,
telas do sistema. Usando como exemplo, um sistema de videolocadora uma SE seriam relatórios de clientes, a
impressão do bloqueto de assinatura de retirada de ta.
Consultas (CE) - são perguntas diretas em uma base de
dados ou em um arquivo que busca por dados especícos, usam chaves simples, requerem resposta imediata e não azem nenhuma atualização (saídas para as consultas do usuário). Você pode contar aqui telas de consulta, como a tela para vericar se o DVD que você deseja alugar está na locadora ou não, ou mesmo uma tela de consulta do seu
O que são Pontos de Função?
Da msma manira qu a mdida m mtros quadrados do tamanho d uma casa não prmit dduzir a vlocidad com a qual a casa pod sr construída ou o su tmpo d construção, o tamanho m Pontos d Função NÃO md a produtividad ou o sorço d dsnvolvimnto. Pontos d unção mdm o tamanho do QUe o sotwar az, ao invés d COMO l é dsnvolvido implmntado. Isto signica qu, dado um conjunto d rquisitos d usuário, o tamanho uncional do sotwar srá o msmo, sja l dsnvolvido com a utilização d COBOL ou DB2, usando dsnvolvimnto rápido d
Qualidade de Sotware
Arquivos (ALI)- cada agrupamento lógico de dados,
que pode ser uma parte do banco de dados ou um arquivo convencional, é contado. Um exemplo de ALI é o arquivo que armazena as inormações de todos os clientes e os DVDs da locadora.
Interaces Externas (AIE) - com outro sistema, todas
as interaces legíveis por máquina, como arquivos de dados em ta ou disco que sejam usadas para transmitir inormações a outro sistema, são contadas.
Imagin um procsso qu xija a transmissão d dados como no caso d duplicatas cobradas por um dtrminado banco. O su sistma gra as duplicatas postriormnt stas são transmitidas para o sistma do banco qu irá cobrá-las. est é um xmplo d intrac xtrna).
Quando as unções (EE, SE, CE, ALI, AIE) são avaliadas, você vai ponderar a complexidade das unções em baixa, média
ou alta. São atribuídos pesos de acordo com a complexidade de cada unção de negócio. Por exemplo, se você tiver uma entrada de dados em um dos programas do sistema considerado como complexa, você vai multiplicar 1 X 6 e o valor da contagem para este programa será 6.
Parâmetro de
medida Contagem Fator de Ponderação Pontos
Simples Médio Complexo
EE X3 X4 X6
SE X4 X5 X7
CE X3 X4 X6
ALI X7 X10 X15
Universidade do Sul de Santa Catarina
Vja outro xmplo:
Imagin qu você prtnda calcular o ponto por unção d um sistma simpls, composto apnas por um cadastro d alunos, cadastro d notas, rlatório m ordm alabética d aluno xportação dos dados do aluno para um arquivo no ormato excl qu srá utilizado por outro stor da scola. O primiro passo vai sr a idnticação das unçõs do ngócio.
Contagm:
ALI = 02 (temos no sistema o arquivo de alunos e o arquivo de notas) AIE = 0
SE = 01 (como saída, só existe uma listagem de alunos em ordem alabética) EE = 02 (existem duas entradas de dados, uma para inclusão de dados do alunoe outra para inclusão de notas)
CE = 01 (os dados do aluno são exportados para que possam ser consultados noarquivo Excel)
Todos os tipos d unção srão considrados d complxidad SIMPLeS nst xmplo.
Parâmetro
de medida Contagem
Fator de Ponderação
Pontos
Simples Médio Complexo
EE 02 X3 06 SE 01 X4 04 CE 01 X3 03 ALI 02 X7 14 AIE X5 0 Total 27
Para calcular os pontos por unção, você vai utilizar sta órmula:
Qualidade de Sotware
O qu é a SOMA(Fi)?
A Fi representa um ator de ajuste sobre atores que inuenciam
a implantação do sotware.
Este ator de ajuste é extraído de uma lista de atores (exemplo: 14 atores) adaptada às necessidades da empresa, podendo ser modicada de acordo com suas necessidades.
A tabla aprsntada é um xmplo d ators qu podm sr considrados na avaliação:
1. Comunicação d dados
2. Procssamnto d dados distribuído (unçõs distribuídas)
3. Prormanc
4. Conguração do quipamnto 5. Volum d transaçõs
6. entrada d dados on-lin 7. Intrac com o usuário 8. Atualização on-lin 9. Procssamnto complxo 10. Rusabilidad 11. Facilidad d implantação 12. Facilidad opracional 13. Múltiplos locais 14. Facilidad d mudanças Fonte: Koscianski (2007)
Cada ator deve ser pontuado com valores de 0 a 5, de acordo com sua inuência sobre o processo de desenvolvimento:
0: Sem inuência 3: Médio
1: Incidental 4: Signicativo 2: Moderado 5: Essencial
Acompanhe que na tabela a seguir o ator de ajuste do sistema de alunos pela contagem dos atores. Lembre-se que esta contagem é um exemplo e pode ser dierente de acordo com o projeto ou
Universidade do Sul de Santa Catarina
Fator Contagem
1. Comunicação de dados 0 2. Processamento de dados distribuído (Funções Distribuídas) 0
3.Perormance 3
4. Conguração do equipamento 3 5. Volume de transações 2 6. Entrada de dados on-line 3 7. Interace com o usuário 4 8. Atualização on-line 5 9. Processamento complexo 0 10. Reusabilidade 0 11. Facilidade de implantação 0 12. Facilidade operacional 0 13. Múltiplos locais 0 14. Facilidade de mudanças 0 Total 20
Neste caso, considere que a perormance do sotware tem uma inuência média no projeto, que a atualização on-line de notas é essencial que a interace do usuário é um ator signicativo para o sucesso do produto.
Assim, substituindo na órmula:
FP = contagem total x [0,65 + 0,01 x SOMA(Fi)] FP = 27 X [ 0,65 + 0,01 X 20 ]
FP = 22,95
Ao chegar ao valor do ponto por unção (22,95), você pode usar as seguintes medidas para cálculos de produtividade, qualidade e custos já utilizados anteriormente usando KLOC:
Calcular a produtividad > Produtividad = FP/pssoa-mês. Calcular a qualidad > Qualidad = ditos/FP.
Calcular o custo > Custo = $/FP.
Qualidade de Sotware
Lembre-se: para usar as métricas d ponto por unção
para uma proposta orintada a objtos, é ncssário adaptar a contagm dos pontos considrando o númro d classs, númro d cases, númro d métodos, médias d métodos, médias d métodos por class, linhas d código por método, proundidad máxima da hirarquia d classs, a rlação xistnt ntr métodos públicos privados, ntr outros.
Quais são os bnícios das métricas orintadas à unção?
As métricas orientadas à unção apresentam vários beneícios, sendo usadas como:
orma de dimensionar aplicações;
veículo para quanticar custo, esorço e tempo;
erramenta para cálculo de índices de produtividade e
qualidade do mesmo;
ator de normalização para comparar sotware.
Hoje ela é usada em conjunto na implantação do modelo CMM e CMMI como apoio à implantação das áreas-chaves Gerência de Requisitos, Planejamento e Acompanhamento de Sotware e
Gerência de Subcontratação de Sotware.
O uso do ponto por unção ultrapassou as barreiras para avaliação da qualidade e sua quanticação está sendo usada inclusive para a aquisição de produtos de sotware.
Universidade do Sul de Santa Catarina
A Solução Australiana para os Projetos de Desenvolvimento de Sistemas
O govrno do estado d Victoria, Austrália, possui um orçamnto anual para sotwar da ordm d US$ 26 milhõs, crca d R$ 66 milhõs, sndo o lídr nacional na utilização da TI para provr srviços aos cidadãos.
Assim como outras organizaçõs la também tm nrntado sérios problmas no dsnvolvimnto d sotwar.
Antriormnt, os prços ram xos nas contrataçõs d dsnvolvimnto. Os orncdors cotavam prços baixos nas licitaçõs, a m d ganhar o contrato, na xpctativa d qu o clint solicitass muitas altraçõs no dcorrr do projto. essas altraçõs ram cobradas a um prço alto, d modo a compnsar o prço baixo original.
A solução adotada oi a contratação basada m um prço xo por ponto d unção. Com bas m uma spcicação prliminar, é licitado o prço por ponto d unção.
O orncdor é scolhido com bas no prço orcido na capacitação técnica. O pagamnto é tuado com bas no prço por ponto d unção contratado, no tamanho do sotwar ntrgu nas modicaçõs solicitadas ao longo do projto.
Font: AGUIAR, Mauricio.A Solução Australiana para os Projetos de
Desenvolvimento de Sistemas. PMI Inormation Systms Local Intst Group – Rio. Disponívl: <http://www.bpug.com.br/islig-rio/Downloads>. Acsso m: 19 jan. 2011.
No Brasil, empresas como Correios, Serpro, Dataprev e Caixa Econômica Federal selecionam e pagam seus ornecedores usando pontos por unção. Neste caso, é utilizado para determinar custo, qualidade e produtividade.
Agora que você conhece algumas métricas existentes no mercado, estude na próxima seção um modelo de mensuração que oi
Qualidade de Sotware
Seção 3 - PSM –
Practical Software MeasurementPSM é um modelo de mensuração patrocinado pelo
Departamento de Deesa Americano (DoD). Este modelo é bastante recente e oi publicado pela primeira vez em 1997.
Apesar de novo, tem sido usado no mundo todo como base para elaborar a Process Area Measurement and Analysis do CMMI e oi
padronizado pela norma ISO/IEC 15939Sotware Engineering – Sotware Measurement Process Framework.
Segundo Aguiar (2005), o PSM é adaptado para abordar os objetivos, questões e requisitos de inormação especícos do
sistema e do sotware, pertinentes a cada programa ou projeto. O processo de medição do PSM é denido a partir de um conjunto de 9 melhores práticas, denominadasprincípios da medição.
Você sabia?
Fazm part do dsnvolvimnto do PSM,
organizaçõs muito dirnts como a Força Aéra, a Marinha o exército amricano, a Boing, o Mitr, GTe ntr outros.
Segundo Aguiar (2002), o modelo de estruturação de atividades de mensuração em um projeto de sotware, o PSM, deve resolver alguns problemas básicos:
especicar ormalmente as medidas que serão utilizadas
no processo;
conduzir o processo de medição.
O PSM atinge estes dois problemas azendo uso de 2 modelos: o modelo de inormação e o modelo de processo. A seguir,
Universidade do Sul de Santa Catarina
Modelo de Inormação
No modelo de inormação, você vai denir a estrutura e as
medidas que serão utilizadas no projeto. Neste modelo, existem alguns conceitos:
Atributo – propriedade considerada undamental sob
o ponto de vista de necessidades da inormação (um atributo importante pode ser as horas trabalhadas ou mesmo as uncionalidades que você obtém a partir das especicações do projeto).
Método – operação que mapeia o atributo para uma
escala (você pode usar o ponto por unção para obter o tamanho do projeto ou contar o tamanho do projeto em número de horas ou mesmo linhas de código).
Medida básica – resultado da aplicação do método sobre
o atributo (se você aplicar o ponto por unção vai ter como medida básica o tamanho do projeto em pontos por unção).
Função – algoritmo que combina duas ou mais medidas
básicas (se você contou o projeto em pontos por unção, pode dividir estes pontos pelo número de horas
trabalhadas nele, assim terá a medida do esorço para seu desenvolvimento).
Modelo – algoritmo que combina medidas e critérios
de decisão.
Indicador – estimativa que promove uma baseline para
Qualidade de Sotware
Figura 4.1 - Construção Mensurável. Fonte: Aguiar (2005).
Modelo de Processo
O modelo de processo é um roteiro que apoia a equipe de
medição na condução das atividades para a execução da mesma. O modelo é composto de três pontes principais: osprocessos técnicos gerencias, os processos centrais de mensuração e a avaliação da mensuração.
Universidade do Sul de Santa Catarina
Figura 4.2 - Modelo de Processo. Fonte: Aguiar (2005).
De acordo com a gura, observe que o processo que o processo mais central compreende as atividades centrais de medição.
Neste processo, você tem atividades undamentais como o
planejamento da medição.
Para planejar a medição, é necessário a execução de 3 subprocessos:
O primeiro deles é aidenticação e priorização das
necessidades de inormação. Neste subprocesso, você
considera questões como objetivos, itens críticos, ambiente de execução, melhorias e mudanças necessárias. O PSM classica estas necessidades em categorias como prazo e progresso, recursos e custo, tamanho e estabilidade do produto, qualidade do produto, perormance do processo, ecácia da tecnologia e satisação do usuário.
A segunda atividade deve ser aseleção e especicação das
medidas.Nesta etapa você vai selecionar os indicadores,
Qualidade de Sotware
A terceira atividade é aintegração da medição aos
processos de apoio. Nesta atividade, você vai analisar como os dados serão coletados e analisados.
Todos os procedimentos de coleta de dados devem ser integrados aos processos que ornecem dados. No plano de medição, você vai ter o arteato gerado neste processo, com toda sua documentação. Outro processo central é aexecução da medição composto por 3
atividades principais:
A primeira atividade é a coleta e o processamento de
dados. Aqui você realiza a coleta de dados considerando a
especicação contida no plano de medição, sua preparação e armazenamento de orma que a inormação seja
acilmente recuperável.
A segunda atividade,análise dos dados, envolve a
transormação das medidas básicas em indicadores e sua utilização em questões relacionadas ao planejamento e ações corretivas.
A última atividade do processo de execução é aprodução
de recomendações. Nesta etapa, são eitas avaliações do
projeto e projeções para o uturo.
Além deste processo central, você também tem processos
periéricos, como avaliar medição onde são avaliadas as medidas,
o próprio processo de mensuração e a base de experiência são avaliadas e melhorias são identicadas e implementadas. Outro processo periérico é oestabelecimento e sustentação de compromissosque propõe obtenção do comprometimento
organizacional, denição de responsabilidades, previsão de recursos e revisão do progresso do programa de mensuração.
Apesar do PSM ser um modelo relativamente novo, sua aceitação no mercado tem sido expressiva principalmente ao ser combinada com modelos como o CMM e o CMMI.
Universidade do Sul de Santa Catarina
Síntese
O interesse pelo uso de métricas por empresas desenvolvedoras de sotware tem aumentado de orma surpreendente nos últimos anos. Isto tem ocorrido pelo reconhecimento por parte das
empresas, da necessidade de se estabelecerem métodos e medidas consistentes que acompanhem a avaliação, o planejamento, o gerenciamento e a evolução dos processo de produção.
A melhoria do processo acontece pela medição de seus atributos signicativos e pelo desenvolvimento de uma série de métricas que orneçam indicadores capazes de apontar uma estratégia de melhoria para este processo.
Medir não traz beneícios relacionados somente ao cumprimento de prazos ou mesmo à estimativa de custo de um projeto, mas traz beneícios gerais ao uncionário, possibilitando melhoria no dimensionamento de sua carga de trabalho. Possibilitar cursos e treinamentos, reequilibrar divisões de tareas, alterar processos considerados diíceis readequar equipes são alguns dos resultados possíveis por meio da análise do processo de medição. Nesta unidade, observou-se que técnicas e métodos independentes, como o ponto por unção e o PSM, podem ser usados isoladamente ou em conjunto com outros modelos, como no caso do CMM. Vericou-se que undamental no processo de medição é a denição do que medir, como medir e como analisar os resultados desta medição.
Qualidade de Sotware