Buscar

Medidas de Esforço Desenv Software

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 77 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 77 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 77 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

O homem não pode controlar o que não pode medir. O desenvolvimento do software, sob o aspecto gerencial, 
precisa ser medido. Vamos apresentar os principais conceitos envolvidos na medição do software. 
Quando temos interesse em saber o crescimento, a idade ou melhorar na qualidade de alguma coisa devemos 
estabelecer “conceitos” que nos ajudem a verificar esta evolução. E sobre estes conceitos são feitas medidas que 
 permitem comparar situações. 
É comum na engenharia, dado um objetivo fazermos medidas. Assim, por exemplo, após se definir o que é corrente 
elétrica pode-se definir uma forma de medir e a partir daí pode-se comparar a intensidade de corrente elétrica em 
diversos circuitos. 
Mas, quando o que se quer medir não é bem definido é comum confundirmos este conceito com a própria medida. 
 
Por exemplo, pé direto: define-se que é a distância entre um plano inferior (piso) e um plano superior (Teto). E ao 
se pedir qual o pé direito de um cômodo, apresenta-se a medida entre os dois planos, por exemplo, 3 metros. Assim 
se pede “qual o pé direito do cômodo?" Resposta: 3 metros. Na prática assume-se a definição comum. 
Mas, se o objetivo entrar com um eletrodoméstico de 2,80 metros e no cômodo existe uma viga com 60 cm para 
baixo o real pé direito é de 2,40metros e o eletrodoméstico não poderá ser colocado no cômodo apesar dos 3 
metros entre planos. Assim, deve-se procurar identificar o que se deseja para a partir daí se definir claramente o 
que medir. O conceito que se deseja estabelecer é o que chamamos de uma métrica. 
Abordagens Iniciais 
Para poder comparar coisas o homem tem necessidade de medir. Para saber, por exemplo, se uma pessoa é mais 
alta que outra podemos colocá-las lado a lado e verificar quem é mais alto. Esta forma de comparar exige que 
tenhamos as pessoas presentes o que não é prático. Também é comum dizer que uma pessoa é alta, ou baixa. Mas 
não se sabe o quanto é alto ou baixa, e fica-se dependendo da noção de altura do observador. 
É comum, ao se perguntar por uma localidade, se receber como resposta que é perto ou longe. Dependendo de 
quem responde pode-se estar falando de uns poucos quarteirões ou de alguns quilômetros. Os exemplos acima 
 mostram que há necessidade de se estabelecer alguns conceitos que criem um referencial comum para podermos 
comparar “coisas” ou processos. 
 Quando temos interesse em saber o crescimento, a idade ou melhorar na qualidade de alguma coisa devemos 
estabelecer “conceitos” que nos ajudem a verificar esta evolução. 
 
 
 
 
 
 
 
 
 
 
 
Uma medida direta é feita no processo ou produto de forma direta. 
A indireta é feita por medidas que serão usadas em cálculos para se calcular a medida final. 
Exemplo de especificação de uma métrica para o software: 
 
 
 
 
 
 
 
 
Segundo a métrica: qual o grau de complexidade ciclomática do trecho de programa ao lado: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Medidas Indiretas e Medida da Funcionalidade 
Esta aula apresenta as regras de contagem de APF, baseadas no Function Point Counting Pratices Manual – Release 
4.1.1, publicado pelo IFPUG, em 1999. 
Para se fazer a contagem, o IFPUG definiu um processo que deve ser seguido. O processo de contagem é mostrado 
na imagem. 
O objetivo é contar as funcionalidades do software, ainda no inicio do projeto. Análise de Ponto Função (APF) 
determina um número real a partir de entradas, saídas, consultas, interfaces externas e arquivos lógico. A imagem 
exemplifica esses elementos. 
 
A contagem simples, associada ao peso, devido a complexidade do software dos elementos acima, produze um 
número que mede a funcionalidade sem nenhum ajuste. É o total de pontos, função não ajustado. Muitas empresas 
trabalham apenas com esse número, como vimos na aula 3. 
 
Medidas Indiretas e Medida da Funcionalidade 
Processo De Contagem 
 
O processo de contagem, definido pelo IPFUG, é feito em sete passos, conforme mostrado na imagem: 
 
Vamos estudar nesta aula, e na próxima os passos mostrados na imagem. 
 
O processo de contagem é feito em sete passos. Nesta aula, vamos aprender como desenvolver os passos 1, 2 e 3. 
 Observe que na aula passada você aprendeu como se determina o fator de ajuste que corresponde ao passo 6 da 
imagem e, na próxima aula, vamos desenvolver sobre o passo 4, 5 e 7. 
 
Medidas Indiretas e Medida da Funcionalidade 
Determinar o tipo de Contagem (passo 1) 
 
 
 
 
Medidas Indiretas e Medida da Funcionalidade 
Identificar O Escopo Da Contagem E A Fronteira Da Aplicação (Passo 2) 
 
A identificação do escopo visa definir a abrangência da contagem estipulando, se a contagem vai se referir a um ou 
mais sistemas, ou a apenas parte de um sistema. 
 
No escopo da contagem de uma aplicação podem-se considerar todas as funcionalidades disponíveis, ou algumas 
funcionalidades específicas. 
 
A fronteira da aplicação estabelece o limite do estar sendo contada, indicando o limite entre a aplicação e os demais 
usuários. A fronteira é definida, estabelecendo um limite lógico entre a aplicação que está sendo contada o usuário e 
as outras aplicações. 
 
 
 
 
 
 
Medidas Indiretas e Medida da Funcionalidade 
Contagem Das Funções De Dados (Passo3) 
As funções de dados são funcionalidades fornecidas ao usuário para as necessidades de dados. São chamados de 
Arquivos Lógicos Internos(ALI) e Interface Externa (AIE). Arquivo não significa um arquivo físico, no sentido 
tradicional , mas refere-se a um grupo de dados logicamente relacionado e reconhecido pelo usuário. 
O IFPUG complementou os procedimentos e regras do CPM 4.1.1 com um nova seção denominada "Práticas de 
Contagem", onde situações como dados de código, dados compartilhados e outros casos devem ser avaliados 
A imagem é do COM 4.1.1 e mostra como deve ser feita a contagem e o que deve ser considerado: 
 
Medidas Indiretas e Medida da Funcionalidade 
Prática De Contagem ALI E AIE 
As transações existentes devem ser para manutenção de dados e os dados de código não devem ser consideradas 
como processos elementares, nem os dados de código contados. 
 
Como exemplos de um ou mais ALIs , dependendo da visão do usuário , têm-se : (IFPUG,1999) 
dados da aplicação (arquivos mestres como cadastro de clientes ou funcionários); 
arquivos de dados de segurança da aplicação; 
arquivos de dados de auditoria; 
arquivos de mensagem de auxílio; 
arquivos de mensagens de erro; 
arquivo de cópia de segurança- considerado somente se for solicitado pelo usuário para atender requisitos da 
aplicação; 
arquivo que sofra manutenção por mais de uma aplicação. 
 
Não são considerados como ALI: 
 Arquivos temporários. 
Arquivos de trabalho. 
Arquivos de classificação. 
Arquivos de cópia de segurança requerido pelo CPD. 
Arquivos introduzidos somente por causa da tecnologia usada. 
 Ex.: Arquivos de parâmetro para um software WFL, JCL etc. 
Operações de junção e projeção. 
Arquivos de índices alternativos. 
 
São considerados AIE , conforme a visão do usuário (IFPUG,1999): 
Dados de referência (dados externos usados pela aplicação ,mas que não são usados para manutenção em ALI). 
Arquivos de mensagens de auxílio.Arquivos de mensagens de erro. 
 
 
 
Não são considerados AIE: 
 Dados recebidos de outra aplicação, usados para adicionar, alterar ou remover dados em um ALI. 
Dados cuja manutenção é feita pela aplicação que está sendo avaliada, mas que são acessados e utilizados por outra 
aplicação. 
Dados formatados e processados para uso por outra aplicação. 
 
 
Primeiro passo: Determinar o escopo da contagem. Foi dito pelo usuário que receberia a informação de alunos de 
outro sistema, portanto, estamos considerando o Usuário com arquivo de interface externa. 
Segundo passo: O sistema é novo e vamos fazer a contagem para desenvolvimento. Não existe migração de dados 
ou projetos auxiliares na implantação: 
Processos básicos do usuário são para a manutenção de arquivo de empréstimos, autores e livros 
Terceiro passo: Determinação das contribuições dos ALI. 
A Classe livro é de persistência e constitui um ALI = temos um registro lógico e quatro itens de dados: entrando na 
tabela, temos que é de complexidade: simples 
A classe autor é um ALI, com um registro lógico e dois itens de dados: na tabela de complexidade é simples. 
A classe autoria relaciona autor com livro, portanto tem um registro lógico e como já contamos os itens de 
relacionamento, vamos considerar um item de dados. 
A classe empréstimo associa um elemento externo com o livro. Nesse caso, só contamos o número de livro em livro. 
 Temos um registro lógico e dois itens de dados, portanto verificamos na tabela que é simples: 
Temos quatro ALI simples, consultando a tabela de contribuição temos 7 PF por ALI, portanto contribui com 4* 7 PF 
= 28 PF. 
Considerando os AIE, temos um registro com 4 itens, portanto simples, contribuindo com mais 5 PF; 
A contribuição dos ALI e AIE são de 28 + 5= 32 PF não ajustados 
 
 
 
 
 
 
 
 
 
 
Contagem das funções transacionais 
As funcionalidades do sistema, para o usuário, são apresentadas na forma de funções. São elas que manuseiam os 
dados. As funções são classificadas quanto a relação de uso em de Entrada externas, Saídas e Consultas externas. 
 
Existem muitas dúvidas e divergências quanto a forma de contar essa funções. Uma consulta é uma entrada? É uma 
saída? Para criar um parâmetro de referência, na classificação das funções, o IFPUG criou uma tabela que resume os 
objetivos primários de cada tipo de função transacional e a identificação é feita por este objetivo. 
 
Definição: 
 Um processo elementar é a menor unidade de atividade significativa para o usuário final e tem as características: 
- Deve ser completo em si mesmo. 
- Deve deixar a aplicação em um estado consistente. 
 
Entradas Externas 
 
 
 
 
 
 
Determinação da complexidade da Entrada externa 
 
Cada EE deve ser classificada conforme sua complexidade funcional relativa que é baseada no número de Arquivos 
Referenciados (ALI e AIE) e no número de itens de dados (ID). 
 
 
 
 
 
 
 
 
 
 
 
Consultas Externas 
 
 
Consultas Externas 
 
 
 
 
 
 
 
 
 
 
 
 
Princípios e conceitos da Governança Corporativa 
 
O cálculo dos pontos de função não ajustados: 
É feito da seguinte forma: para cada um dos cinco tipos de função (ALI, AIE , EE, SE e CE), verifica-se a complexidade 
e o peso multiplicado pelo número de elementos contados em uma mesma complexidade. O total é chamado de 
pontos de função (TPF). 
Cálculo de Pontos de Função para um projeto de desenvolvimento 
O projeto de desenvolvimento apresenta três componentes em termos de funções : 
Funcionalidades da aplicação, incluídas pelos usuários como requisitos – "Compreendem as funções usadas depois 
da instalação do sistema. Elas existem para satisfazer as necessidades de saída do negócio do usuário." (IFPUG,1999) 
Funcionalidades de conversão, incluídas pelos usuários como requisitos – "Compreendem funcionalidades providas 
somente na instalação do sistema. Elas existem para converter dados ou proporcionar outros requisitos 
estabelecidos pelo usuário e necessários à conversão." (IFPUG,1999) 
Valor do fator de ajuste da aplicação – "Compreende a determinação das 14 características gerais do sistema em 
desenvolvimento, para avaliar a complexidade funcional da aplicação". (IFPUG,1999) 
 
 
 
 
 
 
 
 
 
 
 
 
 
As estimativas de custos e prazos em software não são ciência exata, mas temos necessidades de diminuir, em nível 
de erro, das nossas estimativas. Existem muitos aspectos que podem influenciar nas estimativas. Um erro na 
estimativa pode comprometer o projeto e ser desastroso para os desenvolvedores. 
 
 
 
 
 
 
 
 
 
 
Os submodelos são: 
 
A– Um modelo de Composição de aplicação. 
B – Um modelo de projeto preliminar. 
C – Um modelo de Reuso. 
D – Um modelo de pós-arquitetura 
 
 
 
 
 
 
 
 
 
 
 
 
Conclusão 
 
 
 
Estimativas – Outros modelos e uso de PF 
Esse modelo é um modelo dinâmico de múltiplas variáveis que pressupõem a distribuição do esforço ao longo da 
existência de um projeto de desenvolvimento. Foi construído, analisando-se grandes projetos. 
O esforço em grandes projetos é caracterizado como mostrado na figura abaixo, reproduzida do professor 
Pressmam: 
 
Figura 3.10 Distribuição do esforço - grandes fases. (Fonte: Software Cost Estimating and Life Cycle Control, IEEE 
Computer Society Press, 1908, p. 15. Reproduzidocom autorização.) 
Essa figura mostra curvas clássicas que foram apresentadas por Lorde Rayleigh e forma compilados por Norden, por 
isto a curva é chamada de curva Rayleigh-Nortem. 
 
Estimativas de projetos orientado a objetos 
O software orientado a objetos deve ter outra abordagem: 
 
1- Desenvolver estimativas, usando decomposição de esforço, análise FP que seja aplicável a aplicações 
convencionais. 
 
2- Desenvolver casos, usos e determine uma contagem. Reconhecer que o número de casos e uso podem modificar 
à medida que se desenvolve o projeto. 
 
3- A partir do modelo de análise, determinar o número de classes-chave. 
 
4- Categorizar o tipo de interface para aplicação, para as classes de apoio. 
 -Multiplicar o número de classes chaves pelo multiplicador, para obter uma estimativa para o número de classes 
de apoio. 
 
5- Multiplicar o número total de classes (chave e apoio) pelo número médio de unidades de trabalho por classes. 
 Autores, como Lorenz, sugerem entre 15 a 29 pessoas dia por classe. 
 
6- Fazer a verificação cruzada em estimativas baseadas em classes, multiplicando o número médio de unidades por 
caso e uso. 
 
 
Estimativas com métodos ágeis 
Um projeto usando um processo de desenvolvimento ágil e feito como um conjunto de cenários de usuários. É 
possível desenvolver uma estimativa com razoável significado com os seguintes passos: 
 
1- Cada cenário de usuário é considerado separadamente para a estimativa. 
2- O cenário é composto de um conjunto de funções e tarefas de engenharia de software. 
3 a- Cada tarefa é estimada separadamente. 
3 b- O tamanho do cenário pode ser estimado em LOC, PF ou alguma outra medida orientada a volume 
4.a- As estimativas de cada tarefa são somadas para criar uma estimativa de cenário 
4.b- O volume de esforço é estimado para cenário é traduzido para esforço baseado em dados históricos 
5- As estimativas de esforço para todos os cenários que devem implementar um incremento de software são 
somadas para definir a estimativa para o incremento. 
Normalmente, a duração do desenvolvimento de um incremento é da ordem de 3-6 semanas;a estimativa serve 
para garantir que o número de cenários a ser incluído no incremento esteja de acordo com os recursos disponíveis. 
 
Estimativa usando Caso e USO 
PCU – Pontos por Caso de Uso – Foram criados por Gustav Karner, em 1993 como uma adaptação específica dos 
Pontos de Função para medir o tamanho de projetos de software orientados a objeto. Explora o modelo e descrição 
do caso de uso, substituindo algumas características técnicas proposta pelos Pontos de Função. É um método 
simples e de fácil utilização, mas ainda esta em fase de pesquisas e não existem regras de contagem padronizadas. 
Tem-se estudado a aplicação em conjunto da PCU e APF, tentando explorar a relação entre elas existente. 
(EDMÉIA,2004). 
 
Estimativas usando ponto função 
A estimativa de tamanho de um projeto de software é uma atividade crítica, pois, tem um impacto, tanto na solução 
técnica apresentada, como no gerenciamento do projeto de software, devendo ser efetuada não somente no início 
do projeto, mas durante o ciclo de vida do projeto. 
Uma pesquisa realizada pela Secretaria de Política de Informática – SEPIN , em 2001, indicou que a utilização da APF 
vem crescendo no Brasil, conforme mostra a tabela 2.1: 
Métricas primitivas utilizadas para medir a qualidade dos processos de software 
 
Fonte: SEPIN , 2005. 
 
Estimativas usando ponto função 
Considerando que a APF é uma das técnicas funcionais mais antigas que possui um dos grupos de usuários mais bem 
estruturados e atuantes e que a partir de 2002 passou a condição de padrão internacional, através da norma ISO/IEC 
20926. A técnica pode ser considerada como uma das melhores alternativas de medição de tamanho do projeto de 
software. 
APF serve como um instrumento para acompanhar estimativas de custo e recursos requeridos para o 
desenvolvimento e manutenção de software. 
 
Sistema de manutenção de clientes 
 
 
 
 
 
 
Determinar o tamanho funcional do sistema de manutenção 
 
Entidades e funções do processo de manutenção de clientes: 
 
A tecnologia usada no sistema para manutenção de cliente será de implementação em um site (processamento nas 
nuvens), usando a linguagem PHP (com suporte a objetos), envolvendo 3 camadas : camada de dados , camada de 
aplicação e camada de apresentação. 
 
 
Determinar o tamanho funcional do sistema de manutenção 
Para estimar o tamanho, será feita uma contagem estimativa, segundo o modelo que estudamos nas aulas 
anteriores - IFPUG. 
Vamos usar o processo de contagem, conforme preconiza o manual do IFPUG, para determinar o número de pontos 
por função de um projeto de software. 
 
Conclusão 
 
 
 
 
Introdução 
A APF (Análise de Ponto de Função) tem o seu uso aceito pela maioria das empresas, pois, estabelece um padrão e 
uniformidade de contagem, quando se usa o manual de contagem. Isso favorece o uso pelas empresas. Além disso, 
não tem os inconvenientes que as contagens de LOC apresentam. Trabalhar com a funcionalidade, liberta o 
profissional que faz orçamentos, de aspectos que só serão definidos na fase de desenho do software e esta é uma 
vantagem importante. Imagine você ter que decidir, usando a contagem de número de linhas de código se ainda 
nem decidiu que linguagem irá utilizar. Outro aspecto importante é que o de processo de desenvolvimento seja 
qualquer um. As empresas, hoje, buscam padronizar o seu processo de desenvolvimento ou mais de um, 
dependendo do tipo de produto que pretendem utilizar. No nível três do CMM, que é uma referência mínima para 
as empresas que desejam trabalhar com qualidade, o processo é estabelecido e os profissionais treinados no 
processo. 
Custo de um PF para a empresa 
Em empreendedorismo, você deve aprender que as empresas têm dois tipos de custo, o fixo e o variado. O custo 
total da empresa, em um determinado período ou para uma determinada produção, é a soma dos dois custos. Na 
empresa que trabalha com ponto função, deve-se determinar o valor em termos monetários para o total de PF 
produzido em um determinado período. 
Vamos supor, para efeitos didáticos, que uma empresa entregou no prazo de um mês 180,2 PF. E essa mesma 
empresa tem um custo total de R$ 27580,00. 
Assim o custo dessa empresa, por ponto função é de: R$ 27580,00/ 180,2 PF 
O Valor, para fins de controle e orçamentos, é de um custo de: 1515,38 
O valor calculado acima, pode ter sido determinado, em determinadas condições, com um valor de aluguel, um 
nível de salário e outros aspectos que podem ser alterados, portanto, deve ser revisto periodicamente como, por 
exemplo, mensalmente e informado para os gestores. Nesse mês (ou período), segundo o cálculo acima, o nosso 
custo será de 1515,38/PF. 
 
Também, se pode determinar o “BREAK EVENT POINT”, ou ponto de equilíbrio, em termos de PF, determinar o 
número de PF que se deve produzir para a empresa iniciar a dar lucro. Veja o gráfico abaixo: 
 
Pode-se determinar o número de PF que a empresa deve produzir para iniciar a sua fase de lucro. 
 
A importância de uma base estatística de projetos 
É preciso que se mantenha uma base estatística de projetos realizados e que a tomada de registros para esta base 
estatística esteja adequada aos processos de desenvolvimento da empresa e a metodologia usada em cada etapa, ou 
template estabelecido. 
 
Nesse caso, vamos supor que nossa empresa tem registrado por projeto, dividido por caso e uso, as fases e 
registrando os respectivos custos por etapa podemos identificar % de utilização valor total para cada fase. 
 
A importância de uma base estatística de projetos 
Veja ao lado o registro para um caso e uso: 
 
Dessa forma registrando – se, para cada caso e uso, esses dados, podemos estabelecer um % de utilização médio 
para a empresa. Você poderia ficar preocupado com aspectos como complexidade ou característica do software, 
mas isto já esta resolvido. Esses aspectos foram considerados, quando se fez a análise de ponto função. 
Também, determina-se a média de implementar um ponto função, no caso estamos considerando a unidade como 
dias, do caso e uso, registrado acima, obtém o número de horas pelo total de PF temos: 
 
234 horas/ 180,2 PF = 1,30 horas /PF 
 
O mesmo para o custo por PF: 
 
R$ 6834/180,2 = R$ 37,93 /PF 
 
Tabela de distribuição dos pontos funções 
Depois de um determinado período de observação, pode-se determinar uma tabela de distribuição dos pontos 
funções como abaixo: 
 
Atenção 
Essas tabelas devem ser periodicamente ajustadas para refletirem a realidade da empresa, de modo que a base 
estatística deve ser ampliada. 
 
Conclusão 
A organização de parâmetros de decisão, ao longo do processo, é fundamental para se gerar um sistema confiável 
de estimativas e de controle gerencial, para o acompanhamento de projetos, em termos de custo e prazo. 
 
 
Introdução 
Definir um conjunto de dados que permita se ter gerencia do processo e do produto é importante, mas precisamos 
aprender a trabalhar com estes dados. Suponha que estamos falando de uma empresa com um tempo de vida curto 
e que entre outros dados registrou-se os apresentados na tabela abaixo: 
 
Podemos colocar estas informações em um gráfico para determinarmos novos esforços para uma determinada 
quantidade de PF. 
 
Assim o gráfico não é continuo e apresenta os seguintes pontos. 
 
 
Pode-se também tirar da tabela q gráfico que mostra o grau de erro da estimativa em relação ao realizado, em ponto 
função. Verificou-se uma tendência linear de45 graus o que mostra que a estimativa está muito próxima da 
realizada, com pequenas diferenças. Os projetos da nossa empresa são relativamente pequenos e estasdistorções 
são absorvidas na margem de segurança que a empresa dá em seus orçamentos. 
 
Estes dados, entretanto podem nos levar a sérios prejuízos se não forem tratados tecnicamente. 
 
Os pontos (ou falta deles) podem nos levar a uma serie de suposições. Se assumimos que o comportamento é 
próximo de linear, devemos saber que esta simplificação poderá nos custar caro, pois dificilmente temos este tipo de 
comportamento. 
 
 
 
Na nossa tabela temos ainda poucos dados para definirmos o grau de incerteza e definir por uma das curvas. 
 
Quando estimados utilizando estas curvas introduzimos riscos nas nossas estimativas, para valores que ainda não 
constam na tabela, ou estão fora do intervalo existente até o momento. 
 
Observe que para um número menor de PF usar a tendência linear nos leva a estimar valores de forma mais alta que 
da forma exponencial, invertendo-se a tendência a partir do momento que os projetos se tornam significativos. 
 
Interpolação 
Considere que temos um levantamento de um produto com 230 PFA e devemos usar a tabela para definir o esforço 
necessário. Se analisarmos a tabela não temos como obter a informação diretamente, pois nenhum projeto até o 
momento tem 230PFA. Para isto precisamos deduzir um valor a partir dos dados da tabela, chama-se de 
interpolação. 
 
 
Dados pontuais 
 
 
Através da interpolação, pode-se construir uma função que se ajuste nestes dados pontuais, representando a 
continuidade desejada. 
 
Outra aplicação da interpolação é a aproximação de funções complexas por funções mais simples. Suponha que 
tenhamos uma função, mas que seja complicada demais para que seja possível avaliá-la de forma eficiente. 
Podemos, então, escolher alguns dados pontuais da função complicada e tentar interpolá-los com uma função mais 
simples. Obviamente, quando utilizamos a função mais simples para calcular novos dados, normalmente não se 
obtém o mesmo resultado da função original, mas dependendo do domínio do problema e do método de 
interpolação utilizado, o ganho de simplicidade pode compensar o erro. 
 
Funções 
O desenho mostra que ao se conhecer poucos pontos temos uma série de funções que podem se ajustar. 
 
O problema da interpolação consiste em substituir funções intricadas por um conjunto de funções mais simples, de 
tal forma que muitas operações comuns como a diferenciação e a integração, possam ser realizadas mais facilmente. 
A interpolação consiste basicamente em encontrar uma função que seja a expressão lógica de determinados pontos 
de uma função desconhecida, ou seja, conhecendo-se (x1 , y1), (x2 , y2).....(xn , yn) de uma função desconhecida 
poderemos calcular o valor numérico intermediário da função num ponto não tabelado com certo grau de erro. 
 
 
 
 
Pontos de amarração 
Os pontos de amarração são os pontos em que a função substituta conterá da função tabela, no qual será construída 
uma função para um respectivo intervalo. Para se fazer escolha de uma infinidade de funções que venham assumir 
determinados pontos faz-se na verdade a escolha de uma função onde se possa trabalhar com simplicidade, deste 
modo a função mais simples um polinômio. 
Antes de prosseguir leia o texto “A Interpolação polinomial”. 
 
Erros das estimativas interpoladas 
Uma vez que entendemos que a partir de uma tabela, em geral, não vamos conseguir obter uma função que modele 
o fenômeno de maneira exata mas somente uma de uma forma aproximada, surge outro problema: como escolher o 
tipo de função que aproxima o fenômeno? Em outras palavras: que tipo de interpolação devemos fazer? Veja que o 
fato da aproximação ser razoável (boa) ou não para modelar o fenômeno estudado dependerá da resposta a esta 
pergunta. Por outro lado, a pista para esta resposta deve estar contida na tabela. Os pontos listados na tabela 
podem mostrar uma tendência que devemos respeitar se desejamos que a função de interpolação represente de 
forma razoável o fenômeno estudado. 
 
A interpolação consiste basicamente em encontrar uma função que seja a expressão lógica de determinados pontos 
de uma função desconhecida, ou seja, conhecendo-se (x1 , y1), (x2 , y2).....(xn , yn) de uma função desconhecida 
poderemos calcular o valor numérico intermediário da função num ponto não tabelado com certo grau de erro. 
 
Assim o erro em um ponto qualquer é o módulo de f(x) – G(x). Existem vários processos matemáticos para tratar a 
interpolação e o seu erro. De uma maneira simplista podemos definir uma curva, no nosso gráfico, que seja limite 
para considerarmos o erro. A medida que aumentamos nossa base estatística podemos ir aproximando as duas 
curvas limites (mínimo e Máximo) pra perto da estimativa diminuindo a faixa de erro. 
 
 
Conclusão 
As interpolações de dados devem ser feitos com muita técnica, ao se estimar uma valor, estamos assumindo um 
risco. Pode-se aprofundar a teoria matemática. Existe teoria, com métodos bem estabelecidos para se trabalhar com 
segurança. O nível de erro não deve ser desprezado, pois pode levar a altos prejuízos, quando se tem uma base de 
dados com pouca informação. 
 
 
 
 
 
O trabalho para produzir , atualizar, testar e gerar a documentação pode ser feita na empresa interessada ou 
contratada de uma outra empresa. Em qualquer das duas situações o controle da produtividade, prazos e qualidade 
precisam ser estabelecidos. Assim, as características de acompanhamento que vamos desenvolver para uma 
empresa externa, devem ser usada na empresa que não contrata com o mesmo ou um pouco menos de rigor. 
O trabalho de software, quando se trata de empresa externa deve levar em consideração o risco que a empresa 
contratante deseja correr. Em termos de risco o contratante visa minimizá-lo. Se uma empresa contratante não se 
importa com o risco como principio do contrato, pode fazer a contratação por homem hora ou transferir o risco 
para o fornecedor com outro tipo de contratação. 
 No relacionamento são muitos os fatores que introduzem riscos no estabelecimento do relacionamento de 
contratante e contratado, alias estes riscos já existem quando se atua com profissionais dentro da própria empresa. 
 
 
Concorrências públicas e contratação usando PF 
 
São fatores de risco para a determinação do trabalho os seguintes fatos, entre outros: 
 
Assim as divergências entre fornecedor e cliente tendem a se agravar. O estabelecimento de um fator de medida 
comum aceito por fornecedor e cliente já é o inicio do estabelecimento de uma forma de contratação que minimize 
estes conflitos. Neste caso PF é uma medida que vem se tornado padrão de negociação. 
 
 
 
Esta modalidade o risco é totalmente transferido para o fornecedor. O contratante negocia com o contratado um 
preço e as formas de pagamento. O contratante estabelece os pontos de avaliação e pagamento do projeto. Neste 
caso precisa-se de uma unidade que permita medir o quanto já foi feito do trabalho. O contratado procura 
estabelecer controles para evitar os riscos, principalmente os introduzidos por mudança de requisitos. A mudança 
de um requisito implica em uma nova negociação. Muitas vezes se estabelece aditivos contratuais para estas 
modificações ( ou preços diferenciados). Assim PF se aplica para medir o tamanho do projeto, e principalmente para 
acompanhar o projeto e liberar o pagamento por fase do projeto. É comum trabalhar-se com distribuições 
percentuais do total de PF estimado para o projeto estabelecidos entre o contratante e contratado para se controlar 
o projeto (pagamento, avaliação...). 
As tabelas abaixo mostram estas formas de distribuição: 
 
Nesse caso, para um projeto de R$ 200 000,00 ao se terminar a análisede requisitos deverá ser pago o valor de 20 
%, portanto, R$ 40 000,00. 
 
Em outra situação que detalha um outro ciclo de vida para um projeto de R$ 100000,00. 
Esta estipulado que se pagará R$ 10 000,00 no final do levantamento de Dados., conforme mostrado na tabela 
abaixo: 
 
 
Na aula anterior vimos que podemos estabelecer um valor de custo da empresa por PF. Mas o preço de venda da 
empresa poderá ter valores diferenciados dependendo do tipo de profissional envolvido ou mesmo do grau de risco 
que o fornecedor esta assumindo. A determinação do preço por ponto função é certamente um dos mais 
importantes aspectos para o fornecedor. Pode-se criar uma tabela de valores, para fases do ciclo de vida do projeto, 
 estes valores podem facilmente serem obtidos por engenharia reversa. 
 
 
Neste modelo o fornecedor paga por elementos do projeto. Um elemento é uma tela, um relatório, tabela, caso e 
uso, linhas de código alteradas, store procedure ou um ponto função. 
 
Este modelo é intermediário entre a contratação por homem hora e o preço fixo. 
 
Neste modelo a produtividade é um risco do fornecedor, se o contrato é feito por ponto função, o prazo, e o recurso 
dependem do fornecedor. Por outro lado a modificação de requisitos e os pedidos do contratante são 
transformados em PF, portanto o risco de aumento é do contratante. 
 
Como a Análise de Ponto Função é um método padrão de contagem, as empresas e profissionais de todo o mundo 
acompanham a padronização de contagem proposta pelo IFPUG faz com que se estabeleça uma referencia para criar 
uma unidade de contratação - O PF. Assim busca-se consistência e uniformidade na aplicação deste padrão que tem 
sido a base de contratação das empresas públicas e privadas. 
 
 
 
A lei 8666 determina que se estabeleça a análise de serviço e se contrate o menor preço. Neste caso as 
concorrências de contratação de software tem estabelecido condições de participação baseada em Ponto Função, 
 Tomamos como exemplo a concorrência do Banco central. 
 
Aconselhamos que leia o edital, onde estabelece-se o total do contrato para os serviços (item 4) conforme você pode 
ver clicando aqui.

Outros materiais