Você está na página 1de 45

Anlise de Pontos de Funo

Por Denize Terra Pimenta


dpimenta_aula@yahoo.com.br

No se consegue controlar o que


no se consegue medir.

Bibliografia

"Function
Point
Analysis:
Measurement
Practices for Successful Software Projects", de
David Garmus e David Herron
"Anlise de Pontos de Funo: Medio,
Estimativas e Gerenciamento de Projetos de
Software", de Carlos Vazquez, Gulherme Simes e
Renato Albert

Referncias On Line

http://www.ifpug.org
http://www.bfpug.com.br
http://www.isbsg.org.au

Contedo

O que APF ?
Objetivos da Tcnica
Como se Calcula Processo de Contagem
Definies
Tipo de Contagem
Funes de Dados
Funes de Transao
Clculo dos Pontos no Ajustados
Fator de Ajuste
Clculo dos Pontos Ajustados
Dvidas e Dicas
Prtica Exemplo e exerccios

O que APF ?

uma medida de dimensionamento


de software atravs da funcionalidade
implementada em um sistema, sob o
ponto de vista do usurio.

Objetivos da Tcnica

Medir o que foi requisitado e recebido pelo usurio


(viso do usurio);
Medir independentemente da tecnologia utilizada
para
implementao
(linguagem,
mtodo,
plataforma);
Prover uma mtrica de medio para apoiar a
anlise de produtividade e qualidade;
Prover uma forma de estimar o tamanho do
software; e
Prover um fator de normalizao para comparao
de software.

Benefcios da Tcnica

Determinar o tamanho de um produto adquirido


atravs da contagem de todas as funes includas
saber o que se est comprando.
Auxilia a anlise do tipo make or buy
Auxilia a anlise de produtividade e qualidade
Apoia o gerenciamento de escopo de projetos
(aumento ou diminuio do escopo).
Complementa o gerenciamento dos requisitos
(solidez e completeza).

Benefcios da Tcnica

Estimar custo e recursos para o desenvolvimento e manuteno de software.


Meio para fundamentar a negociao de
contratos.
Comparativo de softwares ou produtividade.

Definies

Escopo da contagem define quais


funcionalidades (de uma ou mais
aplicaes) sero includas em uma
determinada contagem.
Fronteira da aplicao a interface
conceitual que delimita o software que
ser medido e o mundo exterior.

10

Definies

Processo elementar menor unidade de


atividades significativa para o usurio. Deve
ser completo em si mesmo, independente, e
deixar o negcio da aplicao em estado
consistente.
Arquivo Lgico Interno (ALI) so os dados
ou informaes mantidas pela aplicao a
ser contada.
Arquivo de Interface Externa (AIE) so os
dados lidos de outra aplicao.

11

Definies

Entrada Externa (EE) a funo que faz a


manuteno dos dados da aplicao.
Sada Externa (SE) a funo que tem
processamento da informao a ser exibida.
Consulta Externa (CE) uma consulta
simples da informao armazenada na
aplicao.

12

Como se Calcula:
1.

2.

3.
4.

A definio do propsito da contagem deve ser feita


definindo-se o tipo de contagem e identificando-se
o escopo da contagem e a fronteira da aplicao.
O clculo dos pontos no ajustados feito em
seguida, identificando-se e classificando as Funes
de Dados e de Transao.
Deve ser determinado e calculado o fator de ajuste.
Finalmente calcula-se o valor dos pontos por funo
ajustados aplicando-se a frmula adequada.

13

Como se Calcula

Processo de Contagem

Contar
Funes do Tipo
Dados

Determinar
o Tipo de
Contagem

Definir a Fronteira
da Aplicao e
o Escopo da
Contagem

Contar
Funes do Tipo
Transao

2
Calcular
Contagem de
Pontos de
Funo no
Ajustados

Determinar/Calcular
Valor do
Fator de Ajuste

4
Calcular
Nmero de
Pontos de
Funo
Ajustados

14

1- Definir Propsito da Contagem

Para esta definio devemos:

Identificar o tipo de contagem;


Definir a fronteira da aplicao;
Definir o escopo da contagem.

15

1.1- Identificar o Tipo de


Contagem

Projeto de Desenvolvimento para a primeira


instalao do software, conta tambm se houver
atividade de converso de dados (do sistema antigo
para o novo que est sendo contado).
Projeto de Melhoria a contagem para
manuteno de um sistema, excluso, alterao ou
incluso de funcionalidades.
Aplicao tambm chamado de baseline a
contagem real de um software ou parte dele.

16

1.2- Definir a Fronteira Aplicao

Para determinao da fronteira:

Deve ter base no ponto de vista do


usurio. O foco deve estar no que ele
pode entender e descrever;
A fronteira entre aplicaes deve ser
baseada na separao das funes
conforme estabelecido pelo negcio e
no em consideraes tecnolgicas;

17

1.2- Definir a Fronteira Aplicao

Para determinao da fronteira (cont.):

Em projetos de melhoria, a fronteira


estabelecida no incio do projeto deve
estar de acordo com a fronteira
estabelecida para a aplicao.

18

1.3- Definir o Escopo Contagem

O escopo da contagem pode abranger:

Todas as funcionalidades disponveis;


Funcionalidades efetivamente utilizadas
pelo usurio;
Algumas
funcionalidades
especficas
(relatrios, mdulos, etc)

19

2- Clculo dos pontos no ajustados

Para o clculo dos


ajustados devemos:

pontos

no

Identificar as funes de dados e de


transao da aplicao;
Identificar a complexidade de cada um;
Atribuir
o
valor
dos
pontos
(contribuio);
Somar o total dos pontos encontrados.

20

2.1- Contar Funes de Dados

Arquivo Lgico Interno (ALI) um grupo de


dados
ou
informaes
de
controle;
identificvel pelo usurio; logicamente
relacionados; mantido dentro da fronteira da
aplicao.
A principal inteno de um ALI armazenar
dados mantidos por meio de um ou mais
processos elementares da aplicao.

21

2.1- Contar Funes de Dados

Exemplos de ALI:

Tabelas que armazenam dados mantidos pela aplicao;


Arquivos de configurao mantidos pela aplicao;
Arquivos de segurana de acesso aplicao (senhas),
mantidos por ela;
Arquivos de help, desde que mantidos pela aplicao;
Arquivos de mensagens de erro, desde que mantidos pela
aplicao;
Arquivos mantidos no s pela aplicao, mas tambm
por outra aplicao.

22

2.1- Contar Funes de Dados

No-Exemplos de ALI:

Arquivos temporrios, de trabalho ou de


classificao
Arquivos gerados para processamento em outra
aplicao.
Arquivos de backup;
Arquivos introduzidos exclusivamente em funo
da tecnologia utilizada;
Arquivos de ndices;
Operaes de juno e projeo, vises (views).

23

2.1- Contar Funes de Dados

Arquivo de Interface Externa (AIE) um


grupo de dados ou informaes de controle;
identificvel pelo usurio; logicamente
relacionados;
referenciado
(lido)
pela
aplicao.
A principal inteno de um AIE armazenar
dados referenciados por meio de um ou mais
processos elementares dentro da fronteira
da aplicao. Um AIE deve ser um ALI de
outra aplicao.

24

2.1- Contar Funes de Dados

Exemplos de AIE:

Dados de referncia externos utilizados pela


aplicao;
Arquivos de help, desde que mantidos por outra
aplicao;
Arquivos de mensagens de erro, desde que
mantidos por outra aplicao.

25

2.1- Contar Funes de Dados

No-Exemplos de AIE:

Arquivos de movimento recebidos de outra


aplicao para manter um ALI;
Dados mantidos pela aplicao e utilizados por
outra aplicao;
Dados formatados e processados para uso de
outras aplicaes.

26

Tabela de Complexidade ALI e AIE

1 registro
lgico
2 a 5 registros
lgicos

6 ou mais
registros
lgicos

1 a 19 itens de
dados
referenciados

20 a 50 itens
de dados
referenciados

51 ou mais
itens de dados
referenciados

SIMPLES

SIMPLES

MDIA

SIMPLES

MDIA

COMPLEXA

MDIA

COMPLEXA

COMPLEXA

27

2.2- Funes de Transao (EE)

Entrada Externa - um processo


elementar, que processa dados ou
informaes de controle recebidos de
fora da fronteira da aplicao, cuja
principal inteno manter um ou mais
ALIs e/ou modificar o comportamento
do sistema.

28

2.2- Funes de Transao (EE)

Exemplos de EE:

Telas de incluso, excluso ou


alterao
Entradas batch que mantm um ALI
Importar dados de outras aplicaes

de

29

2.2- Funes de Transao (EE)

Tabela de Complexidade (EE)

1 arquivo
refernciado
2 arquivos
refernciados

3 ou mais
arquivos
refernciados

1 a 4 itens de
dados
referenciados

5 a 15 itens de
dados
referenciados

16 ou mais
itens de dados
referenciados

SIMPLES

SIMPLES

MDIA

SIMPLES

MDIA

COMPLEXA

MDIA

COMPLEXA

COMPLEXA

30

2.2- Funes de Transao (SE)

Sada Externa - um processo elementar,


que envia dados ou informaes de controle
para fora da fronteira da aplicao, cuja
principal inteno apresentar informao
ao usurio por meio de lgica de
processamento (frmula, clculo criar dados
derivados) que no seja apenas a
recuperao de dados ou informaes de
controle. Pode manter um ou mais ALIs e/ou
alterar o comportamento do sistema.

31

2.2- Funes de Transao (CE)

Consulta Externa - um processo elementar,


que envia dados ou informaes de controle
para fora da fronteira da aplicao, cuja
principal inteno apresentar informao
ao usurio por meio de uma simples
recuperao de dados ou informaes de
controle de um ALI ou AIE. No contm
frmulas ou clculos, no mantm ALIs nem
altera o comportamento do sistema.

32

2.2- Funes de Transao (CE)

Tabela de Complexidade (SE ou CE)

1 arquivo
refernciado
2 ou 3 arquivos
refernciados

4 ou mais
arquivos
refernciados

1 a 5 itens de
dados
referenciados

6 a 19 itens de
dados
referenciados

20 ou mais
itens de dados
referenciados

SIMPLES

SIMPLES

MDIA

SIMPLES

MDIA

COMPLEXA

MDIA

COMPLEXA

COMPLEXA

33

Tabela de Contribuio

Funes de Dados e de Transaes


Nvel de Complexidade
Tipo de Funo

SIMPLES

MDIO

COMPLEXO

Arquivo Lgico Interno (ALI)


(Internal Logical Files - ILF)

10

15

Arquivo de Interface Externa (AIE)


(External Interface Files - EIF)

10

Entrada Externa (EE)


(External Inputs - EI)

Sada Externa (SE)


(External Outputs - EO)

Consulta Externa (CE)


(External Inquiries - EQ)

34

Sumrio da Lgica de Processamento


Usadas por Funes de Transao
Tipo de Lgica de Processamento

EE

SE

CE

Validaes

pode

pode

pode

Clculos e frmulas matemticas

pode

Deve*

no

Converso em valores equivalentes

pode

pode

pode

Filtros e seleo de dados com base em critrios especficos na comparao de vrios conjuntos dados

pode

pode

pode

Anlise de condies para que se determine quais se aplicam

pode

pode

pode

Deve*

Deve*

no

pode

pode

deve

Atualizao de pelo menos um ALI


Referencia pelo menos um ALI ou AIE
Recuperao de dados ou informaes de controle

pode

pode

deve

Criao de dados derivados

pode

Deve*

no

Deve*

Deve*

no

pode

deve

deve

Capacidade de aceitar dados ou informao de controle que entra pela fronteira

deve

pode

pode

Mudana da ordenao ou organizao de um conjunto de dados (no suficiente para garantir


unicidade do PE)

pode

pode

pode

Alterao do comportamento do sistema


Preparao e apresentao de informao para fora da fronteira

Deve a transao deve obrigatoriamente executar este tipo de lgica de processamento


Deve* - a transao deve executar pelo menos uma das lgicas de processamento
Pode a transao pode executar este tipo de lgica de processamento, mas no obrigatrio
No atransao no pode executar este tipo de lgica de processamento

35

5- Clculo dos Pontos no Ajustados

36

Fator de Ajuste
O valor do FATOR DE AJUSTE calculado a partir de 14
caractersticas gerais dos sistemas, que permitem uma
avaliao geral da funcionalidade da aplicao. Estas
caractersticas so:
1.
2.
3.
4.
5.
6.
7.

Comunicao de Dados
Processamento Distribudo
Performance
Utilizao do Equipamento
Volume de Transaes
Eficincia do Usurio Final
Entrada de dados on-line

37

Fator de Ajuste
8.
9.
10.
11.
12.
13.
14.

Atualizao on-line
Processamento Complexo
Reutilizao de Cdigo
Facilidade de Implantao
Facilidade Operacional
Mtiplos Locais
Facilidade de Mudanas

38

Fator de Ajuste

Frmula:
Fator de Ajuste = ( NI * 0,01 ) +
0,65

Para cada um dos 14 ndices


deve ser analisado o NI, somado
e ento aplicado frmula.

Nvel de Influncia (NI)


0
1
2
3
4
5

Nenhuma influncia
Influncia mnima
Influncia moderada
Influncia mdia
Influncia significativa
Grande influncia

39

Clculo dos Pontos Ajustados

40

Dvidas e Dicas

Tenho vrias consultas na tabela de clientes, uma


consulta detalhada retornando quase todos os itens
de dados da tabela e em outra tela tenho uma lista
de clientes mostrando apenas CPF e Nome Como
contar ?
Neste caso sero contadas duas Consultas Externas

Em uma funcionalidade de alterao altero um


campo mas consulto outros n itens. Quantos itens
de dados tenho, um ou n+1 ?
Os itens de dados devem ser somados (n+1)

Como pontuar a manuteno de um sistema que s


ter seu padro visual alterado ?
Neste caso a contagem de ponto de funo no ser til.

41

Dvidas e Dicas

Como classificar um arquivo texto que importado


pelo sistema ?
A importao uma Entrada Externa pois alimentam ALIs.

Mesmo se a aplicao atualizar a data da importao


no arquivo texto ?
No pode ser contado como ALI pois os itens de dados so
contados dentro das tabelas do banco; no pode ser AIE pois
tm manuteno nos dados, portanto deve ser contado como
EE e para esta funo contar tambm a data como item de
dados.

42

Dvidas e Dicas

Uma gravao em disquete com dados da


base, uma CE ou SE ?
Se a extrao tiver processamento (clculo de registros) SE
se for cpia da base CE.

Tenho um relatrio que somente extrao da


base, mas sendo que se ultrapassar o limite de 100
linhas o relatrio sai em arquivo. Como pontuar ?
Neste caso devemos contar como SE, pois h o clculo das
linhas e de conhecimento do usurio que o relatrio
ultrapassar o limite (h contagem de linhas) o relatrio ser
gravado em disco, seno ser impresso.

43

Dvidas e Dicas

O meu sistema tem uma tela para atualizar o


endereo do trabalhador e ir utilizar um
mtodo e uma tabela de outro sistema para
atualizar os registros, como deve ser
contado isso ?
De acordo com a descrio acima, o sistema a ser contado
tem um processo elementar (atualizar trabalhador) que
dever ser contado como uma EE e esta ter um arquivo
referenciado (o ALI trabalhador).

Se A Contagem Foi De Desenvolvimento No Se


Esquea De Contar A Migrao Dos Dados.

44

Prtica Exemplo e exerccios

45

Você também pode gostar