Você está na página 1de 40

ENGENHARIA DE SOFTWARE I

GERNCIA DE PROJETOS -
MTRICAS
Sergio Akio Tanaka
Sucesso do Projeto de Software
Depende de:
Entender o escopo do projeto
Riscos
Recursos necessrios
Tarefas a serem executadas
Os marcos de referncia
Esforo (custo) despendido
Programao a ser seguida
Limitao na Gerncia de Projetos
Desconhecem as tcnicas
Cticos
Demorado
Falta tempo disponvel
Custa caro
Usurio quer o produto j
Iniciando um Projeto de SW
Pr-requisito para o planejamento:
Objetivos e escopos estabelecidos
Alternativas de solues consideradas
Restries administrativas e tcnicas
Sem as quais fica impossvel definir:
estimativas de custos razoveis e precisas,
uma diviso real das tarefas ou uma programao de projeto
administrvel.
Medidas e Mtricas
As mtricas so necessrias para controlar a eficincia
e a economia do processo de desenvolvimento de
Software.
O processo (engenharia de software) medido num
esforo para melhor-lo.
O produto (software) medido num esforo para
aumentar a sua qualidade.
Estimativa
As Mtricas so construdas para entender e melhorar
o processo de desenvolvimento e a qualidade do
produto resultante, so tambm utilizadas como base
de previses de custo e tempo de entrega do produto.
Normalmente as estimativas so feitas usando as
experincias passadas como nico guia.
E se o projeto romper novos horizontes? Ento, s
experincia passada no ser o suficiente.
Estimativa (continuao)
Existe uma srie de tcnicas, todas tm os seguintes
atributos em comum:
O escopo do projeto deve ser estabelecido antecipadamente.
Mtricas de software so utilizadas e o histrico de aferies
passadas usado como uma base a partir da qual estimativas
so feitas.
O projeto dividido em pequenas partes que so estimadas
individualmente.
Anlise dos Riscos
Identificao dos riscos
Avaliao dos riscos
Disponibilizao dos riscos por ordem de prioridade
Estratgias de administrao dos riscos
Resoluo dos riscos
Monitorao dos riscos
Determinao de Prazos
Conjunto de tarefas identificado
Interdependncia entre as tarefas so estabelecidas
Esforo associado a cada tarefa estimado
Pessoas e outros recursos so atribudos
Rede de tarefas criada
Grfico de Gant desenvolvido
Monitorao e Controle
Cada tarefa anotada no programa
rastreada pelo gerente de projeto
Caso a tarefa no acompanhe a
programao, o gerente pode usar uma
ferramenta de planejamento e controle de
projetos automatizados para determinar o
impacto do no cumprimento dos prazos
sobre os marcos de referncia
intermedirios do projeto e a data de
entrega global.
Por que medir?
Conceitue Medida
Medida quantitativa utilizada para determinar o
tamanho de algo.
Mtricas de Produtividade e Qualidade de SW
Medir fundamental em qualquer disciplina de
engenharia, e a engenharia de software no
exceo.
Mtricas de Software
No contexto de gerenciamento de projetos:
Mtricas de produtividade e de qualidade
Medidas do resultado do desenvolvimento de
software como uma funo do esforo aplicado
Medidas da adequao ao uso do resultado que
produzido
Propsitos de planejamento e estimativa
Interesse histrico
Medidas do Software
As medidas usadas em engenharia de Software so
construdas quer sobre os atributos dos modelos do
problema que sucessivamente so obtidos ao longo do
processo, quer sobre os atributos dos tipos do processo
que se usam para o desenvolvimento.
Razes da Medio do Software:
1) Indicar a qualidade do produto
2) Avaliar a produtividade das pessoas que produzem o
produto
3) Avaliar os benefcios (produtividade e qualidade) de
novos mtodos e ferramentas de software
4) Formar uma baseline para estimativas
5) Ajudar a justificar os pedidos de novas ferramentas
ou treinamento adicional
Medies do Mundo Fsico
Duas categorias:

Medida Direta
Ex: comprimento do parafuso

Medida Indireta
Ex: qualidade do parafuso
Medies em Software
Medida Direta em Software
LOC (Line of Code)
Tempo de Resposta
Quantidade de Memria
Falhas ao longo do tempo

Medida Indireta em Software


Funcionalidade - Qualidade
Complexidade - Eficincia
Confiabilidade - Manutebilidade
e outras
Diviso das Mtricas em Categorias

Mtricas Tcnicas
Mtricas de
Software Mtricas de Qualidade
Mtricas de Produtividade

Mtricas orientadas
ao tamanho

Mtricas orientadas
funo

Mtricas orientadas
pessoas
Categorias das Mtricas de SW
Mtricas da Produtividade
sada do processo de engenharia de sw
Mtricas da Qualidade
conformidade com os requisitos implcitos e explcitos
do cliente
Mtricas Tcnicas
caractersticas do sw (complexidade lgica, grau de
modularidades)
Explcitas

Necessidades Explcitas: so as prprias


condies e objetivos propostos pelo produto
expressos na definio de requisitos. Esses
requisitos definem as condies em que o
produto deve ser utilizado, seus objetivos,
funes e o desempenho esperado;
Implcitas

Necessidades Implcitas: so aquelas que no


esto expressas nos documentos do produtor
mas que so necessrias para o usurio. Incluem
as diferenas entre os usurios, a evoluo no
tempo, as implicaes ticas, as questes de
segurana e outras vises.
Categorias das Mtricas de SW
Mtricas Orientadas ao Tamanho
usadas para compilar as medies diretas da sada e
da qualidade da engenharia de sw
Mtricas Orientadas para a Funo
oferecem medidas indiretas
Mtricas Orientadas s Pessoas
compilam sobre as maneiras que as pessoas
desenvolvem sw e percepes humanas sobre o uso
de mtodos e ferramentas
Possveis Crticas ao MOT
LOC so dependentes da linguagem
Penalizam programas bem projetados (curtos)
No acomodam facilmente linguagem no
procedimentais
Requer um nvel de detalhes difcil de conseguir para
se usar nas estimativas
Mtricas Orientadas Funo (MOF) -
Medidas Indiretas
Fator de Ponderao

Parmetro de medida Contagem Simples Mdio Complexo

Nmero de entradas X 3 4 6 =
do usurio
Nmero de sadas X 4 5 7 =
do usurio
Nmero de consultas
do usurio X 3 4 6 =

Nmero de arquivos
X 7 10 15 =
Nmero de interfaces
do usurio
X 5 7 10 =

Contagem - total
Cinco Domnios da Informao - MOF
1) Nmero de entradas do usurio: cada entrada do usurio que
proporcione dados distintos orientados aplicao so
contados. As entradas devem ser distinguidas das consultas,
as quais so contadas separadamente.
2) Nmero de sadas do usurio: cada sada do usurio que
proporcione informaes orientadas aplicao so contados.
Nesse contexto, sada refere-se a relatrios, telas, mensagens
de erro, etc. Os itens de dados individuais dentro de um
relatrio no so contados separadamente.
Cinco Domnios da Informao - MOF
(continuao)
3) Nmeros de consultas do usurio: uma consulta definida
como uma entrada on-line que resulte numa gerao de alguma
resposta de software imediata na forma de uma sada on-line.
4) Nmero de arquivos: cada arquivo-mestre lgico, isto , um
agrupamento lgico de dados, que pode ser uma parte de um
grande banco de dados ou um arquivo convencional, contado.
5) Nmero de interfaces externas: todas as interfaces legveis por
mquina (por exemplo: arquivo de dados em fita ou disco) que
sejam usados para transmitir informaes a outro sistema so
contadas.
Computando os Pontos por Funo
Produtividade = FP/pessoa-ms Custo = $/FP
Qualidade = defeitos/FP Documentao = pginas de documentao/FP
Pontue cada fator numa escala de 0 a 5:
0 1 2 3 4 5

Sem Incidental Moderado Mdio Significativo Essencial


influncia
1. O sistema requer backup e recuperao 8. Os arquivos-mestres so atualizados on-line?
confiveis? 9. A entrada, sada, arquivos ou consultas so
2. So exigidas comunicaes de dados? complexos?
3. H funes de processamento distribudo? 10. O processo interno complexo?
4. O desempenho critico? 11. O cdigo foi projetado de forma a ser
5. O sistema funcionar num ambiente reusvel?
operacional existente, intensivamente 12. A converso e a instalao esto includas no
utilizado? projeto?
6. O sistema requer entrada de dados on-line? 13. O sistema projetado para mltiplas
7. A entrada de dados on-line exige que a instalaes em diferentes organizaes?
transao de entrada seja elaborada em 14. A aplicao projetada de forma a facilitar
mltiplas telas ou operaes? mudanas e o uso pelo usurio?
Computando pontos de particularidade
(feature point)
Parmetro de medida Contagem Ponderao

Nmero de entradas X 4 =
do usurio
Nmero de sadas X 5 =
do usurio
Nmero de consultas
do usurio X 4 =

Nmero de arquivos X 7 =
Nmero de interfaces
do usurio X 7 =

Algoritmos X 3 =

Contagem - total
Mtricas de Qualidade do SW
Qualidade: medida ao longo do processo de engenharia de sw e
depois que o produto for entregue ao cliente.
Mtricas derivadas antes da entrega oferece uma base
quantitativa para decises de projeto e de teste.
So inclusas:
Complexidade do programa
Modularidade efetiva
Tamanho do programa
As mtricas aps entrega concentram-se especialmente nos
nmeros de defeitos encontrados e na manutebilidade do
sistema.
Viso Geral dos Fatores que Afetam a
Qualidade
McCall e Cavano definiram 3 fatores:
1) operao do produto (usando-o)
2) reviso do produto (mudando-o)
3) transcrio do produto (migrando-o)
Medida da Qualidade
Corretitude: operar corretamente.
Manutebilidade: facilidade de alterao.
Integridade: capacidade de suportar ataques.
Usabilidade: amigvel ao usurio.
Pesquisa no RUP: FURPS (Funcionalidade,
Usabilidade, Confiabilidade, Performance,
Suportabilidade).
Viso Profissional de Qualidade
Processo
De
Desenvolvimento

Usurios
Requisitos

Produto
Final

Requisitos
Atendidos

PRODUTO COM QUALIDADE


Cinco Fatores que Influenciam a Produtividade de SW
(Basili e Zelkowitz)
01) Fatores humanos: O tamanho e a experincia da organizao de
desenvolvimento.
02) Fatores do problema: A complexidade do problema a ser resolvido
e o nmero de mudanas nos requisitos ou restries do projeto.
03) Fatores do processo: Tcnicas de anlise e projeto que so usadas,
linguagens e ferramentas CASE (Computer-Aided Software
Engineering) disponveis e tcnicas de reviso.
04) Fatores do produto: Confiabilidade e desempenho do sistema
baseado em computador.
05) Fatores relacionados a recursos: Disponibilidade de ferramentas
CASE, recursos de hardware e software.
Integrao de Mtricas dentro do Processo de
Engenharia de SW
Maioria dos desenvolvedores no realiza medies.
Maioria no tem muita vontade de comear a faz-lo.
Fazer o que no era feito, sempre provoca resistncia.
Gerente de projeto: Por que precisamos fazer isto?
Desenvolvedor atarefado: No vejo o porqu?
Leva at 3 anos at que amplas tendncias organizacionais
estejam disponveis.
Benefcios da medio so to motivadores que o trabalho
rduo vale o esforo.
Argumentos para Mtricas de SW
Por que to importante medir o processo de
engenharia de software e o produto (software) que ele
produz?
Se no medirmos, no haver nenhuma maneira real
de determinarmos se estamos ou no melhorando. Se
no melhorarmos estamos perdidos.
Benefcios Imediatos das Mtricas em Nvel
Tcnico
Desenvolvedores ficam ansiosos para saber questes
como:
Quais requisitos do usurio so as mais provveis de sofrer
mudanas?
Quais mdulos desse sistema so mais propensos a erros?
Quanto de teste deve ser planejado para cada mdulo?
Quantos erros (de tipos especficos) posso esperar quando o
teste se iniciar?
Exerccios
1) O Software medido por muitas razes,
indique 5 delas:
2) Por que to importante medir o processo de
engenharia de software e o produto (software)
que ele produz?
3) D exemplos de Medidas Diretas e Indiretas:
Exerccio continuao
4) Suponhamos que voc seja o gerente de
projetos de uma empresa que constri software
para produtos de consumo. Voc foi contratado
para construir o software para um sistema de
segurana domstico sofisticado. Usando as
informaes discutidas na seo 2.1 do livro do
Pressman, desenvolva um esboo detalhado
(seja to especfico quanto possvel) dos passos
que deveria realizar para administrar este projeto.
Suponhamos que voc, ainda, tenha de se reunir
com o seu cliente. Qual paradigma de engenharia
de software escolheria?
Bibliografia
PRESSMAN, Roger S. ENGENHARIA DE
SOFTWARE. So Paulo: Makron Books, 1995.
(Captulo 2 - pginas 54 a 87).

SOMMERVILLE, Ian. ENGENHARIA DE


SOFTWARE. So Paulo: Addison Wesley, 2003.
(Capitulo 24)