Sei sulla pagina 1di 10

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS

CAMPUS SÃO GABRIEL


São Gabriel

Exercício: Estimativas de Tamanho, Esforço, Prazo e Custo de Software


com Function Points (FP)
Engenharia de Software II
Prof: Pedro Alves de Oliveira
Alunos: ________________________________________________________________

Objetivo
O objetivo deste exercício consiste em aplicar algumas técnicas da Engenharia de Software
relacionadas com estimativas, visando à sua aplicação na gerência de projetos de software.

Introdução
Considere o seguinte modelo de casos de uso de uma locadora virtual, que deverá ser
contratado para implementação em Java, por uma empresa desenvolvedora de software:

Cadastrar usuário

Usuário

Login SMTP

Sugerir DVDs para compra <<include>>

Devolver DVDs

Verificar DVDs em atraso


Consultar DVDs disponíveis
Cliente

<<include>>

Escalonador
Reservar DVDs

Cadastrar DVDs Verificar Reserva

Cadastrar Gênero

Alugar DVDs

Cadastrar preço de locação

Logout

Gerente

Página 1 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Algumas informações relacionadas à especificação de requisitos desta aplicação são:

Lista de atores
Ator Descrição
Usuário Usuário internet, para acesso ao sistema
Cliente Cliente da locadora autenticado no sistema, que pode solicitar filmes e sua
devolução.
Gerente Gerente da locadora, responsável pelo cadastro de filmes e gêneros.
SMTP Servidor de Email, responsável por enviar os emails entre os operadores
humanos do sistema. Acessado através de APIs.
Escalonador Escalonador do sistema, responsável por disparar atividades temporais.
Acessado através de APIs.

Casos de Uso:
Caso de uso Descrição
Cadastrar usuário Permite a qualquer usuário da internet se cadastrar como cliente da locadora,
tendo assim acervo à consulta de filmes e aluguel. Complexidade alta, pois
necessita realizar teste de Turing e validar se o endereço do cliente é válido
(dentro de BH).
Consultar DVDs Permite ao cliente consultar a lista dos DVDs da locadora disponíveis para
disponíveis locação. Caso de uso simples.
Alugar DVDs Permite ao cliente solicitar a locação de um DVD. Quando isso ocorre, um
entregador levará o DVD em 15 minutos na casa do cliente. Caso de uso
complexo.
Devolver DVDs Permite ao cliente solicitar a devolução de um DVD. Quando isso ocorre,
um entregador buscará o DVD em 15 minutos na casa do cliente e o valor da
locação será debitado no cartão de crédito do cliente. Caso de uso
complexo.
Sugerir DVDs para Permite ao cliente sugerir a integração de um DVD ao acervo da locadora.
compra Caso de uso simples.
Reservar DVDs Permite ao cliente entrar na fila de reseva de um DVD. Caso de uso de
complexidade intermediária (média).
Verificar Reserva Verifica se um DVD que foi devolvido possui reserva. Caso positivo, ele
avisa o primeiro da fila da reserva, que tem 24 horas para alugar o DVD ou
perder seu lugar na fila. Caso de uso de complexidade intermediária.
Verificar DVDs Verifica se um DVD alugado está com atraso, notificando, nesse caso, o
em atraso cliente. Caso de uso de complexidade simples.
Cadastrar DVDs Insere novos DVDs na base do sistema. Caso de uso de complexidade
intermediária.
Cadastrar Gênero Cadastra um novo gênero para os DVD. Caso de uso de complexidade
intermediária.
Cadastrar Preço de Cadastra o preço de locação para um ou mais DVDs. Caso de uso simples.
Locação
Login Autenticação do usuário no sistema. Caso de uso simples.
Logout Permite a um usuário autenticado encerrar suas atividades no sistema. Caso
de uso simples.

Classes persistentes: Usuário (simples), Cliente (média), Gerente (simples), DVD (média),
Reserva (simples), Locação (simples), Gênero (simples).

Página 2 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Cálculo do Tamanho do Sistema


A partir das informações fornecidas, utilizando a Análise de Pontos de Função (APF),
calcule o número de pontos de função não ajustados, considerando as seguintes contagens:

Tipo Descrição Complex. FP


(EE, SE, CE, ALI, AIE) (B/M/A)
ALI Usuário B 7
ALI Cliente M 10
ALI Gerente B 7
ALI DVD M 10
ALI Reserva B 7
ALI Locação B 7
ALI Gênero B 7
EE Cadastrar usuário A 6
CE Consultar DVDs disponíveis B 3
EE Alugar DVDs A 6
SE Devolver DVDs A 6
SE Sugerir DVDs para compra B 4
SE Reservar DVDs M 5
CE Verificar Reserva M 4
CE Verificar DVDs em atraso B 3
EE Cadastrar DVDs M 4
EE Cadastrar Gênero M 4
EE Cadastrar Preço de Locação B 3
EE Login B 3
SE Logout B 4

Total de FP não ajustados (UFP) = Soma o FP = 110

Adotando-se um fator de ajuste = 1,1 (definido arbitrariamente), o número de pontos de


função ajustados do sistema será:

Total de pontos de função ajustados (FP) = UFP X FA = 110 x 1,1 = 121

(somente avance para a próxima folha após este cálculo)

Página 3 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Cálculos de Esforço, Produtividade e Tempo do Sistema


Seja a seguinte base de dados históricos para esse contexto:

Tamanho do sistema (FP) Esforço de Desenvolvimento (HH)


123 1170
142 1290
184 1740
118 1094
99 881
150 4354
102 1041
108 1089
133 1415
128 1130
145 1247
132 1321
133 1294
137 1230
139 1389
142 1504

Com base na tabela acima calcule a:

• Produtividade média: ______________________________


• Produtividade mínima: _____________________________
• Produtividade máxima: _____________________________

OBS: Produtividade (FP/HH) = Trabalho produzido (FP)


Esforço necessário

Calcule, a partir das produtividades acima, o tempo mínimo, médio e máximo esperado
para a confecção do sistema em questão, para uma equipe entre 2 e 5 pessoas.

Equipe Tempo Tempo Tempo


(pessoas) Mínimo Médio Máximo
2
3
4
5

O que você notou entre a diferença dos valores médio, mínimo e máximo?
R: _______________________________________________________________________

(Após este cálculo, passe para a próxima folha.)

Página 4 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Análise dos Dados


O desvio padrão é uma medida tradicional da estatística, que determina a distância entre os
pontos encontrados e a média. Em uma distribuição normal, a probabilidade de um evento
ocorrer em um valor inferior à média, em uma série de desvios padrão, é o seguinte:

Fórmula do Desvio Padrão:

média 50,00%
1 desvio 84,13%
2 desvios 97,72%
3 desvios 99,87%

Os parâmetros da produtividade dos dados deste exercício são:

Média 0,1003 FP/HH


Desvio 0,0188 FP/HH

Aplicando o desvio positiva e negativamente, obtemos o seguinte:


-3 desvios 0,0438
-2 desvios 0,0626
-1 desvios 0,0815
média 0,1003
1 desvio 0,1191
2 desvios 0,1380
3 desvios 0,1568

Em outras palavras, produtividades abaixo de 0,0438 ou acima de 0,1568 tem por volta de
0,13% de chance de se concretizarem.

Existe algum ponto com essas características? ( ) S ( ) N Qual? ________

Caso exista, o que deve ser feito com ele?


___________________________________________________________________

(Só avance para a próxima página após responder a pergunta)

Página 5 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Refazendo os Cálculos
O produto de tamanho 150 FP e tempo de desenvolvimento de 4354h está produzindo um
desvio de produtividade (0,0345 FP/HH). Retire o ponto e recalcule a produtividade:

• Mínima:
• Média:
• Máxima.

Agora calcule o tempo esperado para desenvolvimento mínimo, médio e máximo, para uma
equipe formada por 2 a 5 pessoas.

Equipe Tempo Tempo Tempo


(pessoas) Mínimo Médio Máximo
2
3
4
5

(Só avance para a próxima página após completar esta parte.)

Página 6 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Distribuição de Esforço por Etapa e Custos


Baseado em dados históricos, acumulados e contextualizados, sabe-se que o esforço para a
implementação de cada caso de uso nesse contexto segue a divisão:

% Acumulado Etapa Descrição


10% Especificação Especificação de requisitos
15% Análise Classes de análise documentadas
30% Desenho Desenho do sistema
70% Implementação codificação e testes pelo desenvolvedor
85% Testes testes em ambiente de desenvolvimento
90% Integração Instalação no ambiente de produção
100% Aceite Testes e aprovação em ambiente de produção

Supondo que existe relação entre cada uma das etapas com profissionais de custos
diferentes, segundo a tabela:

Profissional Etapa de trabalho % $/h


Especificador documentação, análise, desenho 30% R$ 50,00
Codificador Implementação 40% R$ 40,00
Integrador Integração 5% R$ 40,00
Testador testes, aceite 25% R$ 30,00

Determine (assumindo o valor de horas dada a produtividade média):

a) O esforço (em homens-hora) de cada classe de profissional: ____________________

b) O custo total do projeto, em reais: _____________________________________

(Só prossiga para a próxima página após o término)

Página 7 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Valor Adquirido Planejado (Earned Value- EA)


Rastreamento por valor adquirido [1] é uma das formas de avaliar o progresso de um
projeto. Ele estabelece os valores relativos para cada tarefa e credita aquele valor apenas
quando a tarefa está completa.
O sistema de valor adquirido provê uma escala de valores comum para todas as tarefas,
independente do tipo de trabalho envolvido. O total de horas para implementar o projeto
como um todo é estimado e a cada tarefa é dado um valor adquirido baseado no percentual
estimado de sua tarefa.
É importante perceber que tarefas pela metade não recebem crédito parcial: somente
recebem seu valor quando são completas.
Inicialmente, podemos assumir que cada tarefa será um estado de um requisito e o peso
dessa tarefa será o percentual histórico de sua implementação X o peso de seu caso de uso
no total.

Estabeleça o seguinte cronograma (três iterações):

1. Completar os estados “especificado”, “analisado” e “desenhado” para todos os casos de


uso.

2. Realizar a implementação, testes, integração e aceitação dos seguintes casos de uso:


• Cadastrar usuário
• Consultar DVDs disponíveis
• Alugar DVDs
• Devolver DVDs
• Sugerir DVDs para compra
• Reservar DVDs

3. Realizar a implementação, testes, integração e aceitação dos demais casos de uso.

OBS: essa questão não significa que a aplicação deverá ser implementada. Pelo
contrário, deve ser feita uma simulação dessa situação, apenas para avaliar os
resultados utilizando a técnica (EA).

(Só prossiga para a próxima página após o término desta etapa.)

Página 8 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Valor Adquirido Planejado (cont.)


Uma outra alternativa é assumir que a tarefa só está completa quando o caso de uso é
totalmente implementado. Neste caso, valor adquirido só é contado após cada caso de uso
atingir o estado “aceito”.
Assim, estabeleça o seguinte cronograma:

Três iterações:

1. Completar os estados especificados, analisados e desenhados para todos os casos de


uso.

2. Realizar a implementação, testes, integração e aceitação dos seguintes casos de uso:


• Cadastrar usuário
• Consultar DVDs disponíveis
• Alugar DVDs
• Devolver DVDs
• Sugerir DVDs para compra
• Reservar DVDs

3. Realizar a implementação, testes, integração e aceitação dos demais casos de uso.

(Só prossiga para a próxima página após o término.)

Página 9 de 10
PONTIFÍCIA UNIVERSIDADE CATÓLICA DE MINAS GERAIS
CAMPUS SÃO GABRIEL
São Gabriel

Acompanhamento do Projeto
O planejamento baseado em Valor adquirido permite realizar o acompanhamento do
projeto.
Por exemplo, qual é o valor adquirido para cada uma das modalidades dado que os
requisitos se encontram nos seguintes estados após 700 HH de desenvolvimento:

Estado
Caso de Uso Completo Valor adquirido I Valor Adquirido II
Cadastrar usuário Aceitação 12,0% 12,0%
Consultar DVDs disponíveis Aceitação 4,0% 4,0%
Alugar DVDs Integração 10,8% 0%
Devolver DVDs Testes 10,2% 0%
Sugerir DVDs para compra Implementação 2,8% 0%
Reservar DVDs Desenho 2,4% 0%
Verificar Reserva Desenho 2,4% 0%
Verificar DVDs em atraso Desenho 1,2% 0%
Cadastrar DVDs Desenho 2,4% 0%
Cadastrar Gênero Desenho 2,4% 0%
Cadastrar Preço de Locação Desenho 1,2% 0%
Login Desenho 3,6% 0%
Logout Desenho 1,2% 0%
Total 56,6% 16,0%

• O projeto está atrasado ou adiantado em cada uma das duas abordagens?

Abordagem 1: _________________________________________________

Abordagem 2: _________________________________________________

• Existe alguma discrepância entre as duas abordagens? Explique!

_________________________________________________________________________

_________________________________________________________________________

_________________________________________________________________________

Referências bibliográficas
[ Humphrey, Watts S., A Discipline for Software Engineering.
Addison Wesley Publishing Company. 1995

Página 10 de 10

Potrebbero piacerti anche