Anda di halaman 1dari 0

INSTITUTO BRASILEIRO DE TECNOLOGIA AVANADA

ESPECIALIZAO EM ENGENHARIA DE SOFTWARE







NELSON RODRIGO LOMBARDI BASSETTO






Uma abordagem para um programa de medio baseado
em anlise de pontos de funo














So Paulo SP
2008

NELSON RODRIGO LOMBARDI BASSETTO




Uma abordagem para um programa de medio baseado
em anlise de pontos de funo





Trabalho de concluso de curso
apresentado como requisito final
para obteno do ttulo de Especialista
em Engenharia de Software,
pelo Instituto Brasileiro de
Tecnologia Avanada IBTA, na rea de
concentrao de Tecnologia da Informao.

Orientador: Prof. Luiz David Szilagyi




Banca Examinadora - Avaliador(es):

Luiz David Szilagyi
Especialista, Instituto Mackenzie






30 de outubro de 2008






Bassetto, Nelson Rodrigo Lombardi
B319a Uma abordagem para um programa de medio
baseado em anlise de pontos de funo [manuscrito] Nelson
Rodrigo Lombardi Bassetto.
096f., enc.
Orientador: Luiz David Szilagyi
Monografia Faculdade de Tecnologia IBTA
Bibliografia: f. 113-117
1. Tecnologia da informao, Brasil I. TTULO II. Bassetto, Nelson
Rodrigo Lombardi

005.1068















iv










minha me e avs



v
AGRADECIMENTOS


A Deus pelas oportunidades concedidas e caminhos que me agregam e me fazem
evoluir a cada dia;

minha me e avs pelo incentivo e apoio nos estudos;

minha famlia, por ter provido bases slidas que me estruturam e servem-me de
guia todos os dias;

Aos familiares e amigos prximos, pela tolerncia nos momentos de ausncia;

Ao colega Renato Duran Vittoruzzo Martins pelo competente apoio tcnico e
pertinentes sugestes;

Lucy Rizzo, professora de ingls de extrema competncia, por sua valiosa reviso
e sugestes quanto ao abstract deste trabalho;

Ao IBTA, pela oportunidade e pelo curso de alto nvel ministrado, o qual agregou
significativamente em minha formao.




vi

RESUMO


Visando proporcionar um meio que apie no desenvolvimento de solues
sistmicas com alto nvel de qualidade, produzidas em menor tempo e custo
possveis, este estudo prope uma abordagem de programa de medio baseado
em anlise de pontos de funo. Tal abordagem objetiva a obteno sistemtica de
dados significativos sobre a organizao de software que o implementa,
possibilitando analises, identificao de pontos positivos e falhos da organizao e
tomadas de deciso fundamentadas por dados quantitativos e concretos. Com o
estudo realizado, verificou-se que programas de medio baseados em anlise de
pontos de funo podem ajudar organizaes a gerenciar e tomar decises
baseadas em fatos, a ter maior previsibilidade de entrega de produtos, a melhorar
seu processo de desenvolvimento e seus produtos e a utilizar recursos com maior
eficincia.


Palavras chave: Anlise de Pontos de Funo, Medio Funcional, Programa de
Medio, Mtricas e Medio de Software.













vii


ABSTRACT


Aiming to provide an environment that supports the development of high quality
systemic solutions, produced with less time and cost, this study proposes an
approach to a measurement program based on function points analysis. This
approach intends to systematically achieve significant data of the software
organization which implements it, allowing analysis, identifying the organizations
strengths and weaknesses and decision-making taking into account real and
quantitative data. In this study, it was verified that measurement programs which rely
on function points analysis can help organizations to manage and make decisions
based on facts, to have greater predictability of products delivery, to improve its
development process and its products and to use resources more efficiently.


Key Words: Function Point Analysis, Functional Measurement, Measurement
Program, Metrics and Software Measurement.
viii

LISTA DE ABREVIAES, SIGLAS E SMBOLOS


AIE Arquivo Interface Externa
ALI Arquivo Lgico Interno
APF Anlise de Pontos de Funo
BFPUG Brazilian Function Point Users Group [Grupo Brasileiro de Usurios de
Pontos de Funo]
CE Consulta Externa
CGS Caractersticas Gerais do Sistema
CMM Capability Maturity Model [Modelo de Capacidade e Maturidade]
CMMI Capability Maturity Model Integration [Modelo de Capacidade, Maturidade
e Integrao]
EE Entrada Externa
FPA Function Point Analysis [Verificar APF]
IFPUG International Function Point Users Group [Grupo Internacional de Usurios
de Pontos de Funo]
MSF Microsoft Solutions Framework [Framework de Solues Microsoft]
PCs Pessoal Computers [Computadores Pessoais]
PF Pontos de Funo
RUP Rational Unified Process [Processo Unificado Rational]
SE Sada externa
TI Tecnologia da informao
UML Unified Modeling Language [Linguagem de modelagem unificada]
XP Extreme Programming







ix
LISTA DE ILUSTRAES


FIGURA 1: PROCESSO DE CONTAGEM DE PONTOS DE FUNO, ADAPTADO DE (IFPUG,
2000), PGINA 31 ...................................................................................................................... 1
FIGURA 2 - PROCESSO CCLICO DE UM PROGRAMA DE MEDIO, ADAPTADO DE (DEKKERS,
2002), PGINA 163 ...................................................................................................................31
FIGURA 3 - EXEMPLO DE RELATRIO COMPARATIVO DE MEDIES, ADAPTADO DE
(RUSSAC, 2002), PGINA 155..................................................................................................38
FIGURA 4 - EXEMPLO DE RELATRIO DE MTRICAS ORGANIZACIONAL, ADAPTADO DE
(RUSSAC, 2002), PGINA 156..................................................................................................40
FIGURA 5 - DEFINIO PROGRAMA MEDIO - FORMATO RELATRIO DETALHADO POR
PROJETO..................................................................................................................................69
FIGURA 6 - DEFINIO PROGRAMA MEDIO - FORMATO RELATRIO COMPARATIVO POR
PROJETO..................................................................................................................................71
FIGURA 7 - DEFINIO PROGRAMA MEDIO - FORMATO RELATRIO EVOLUCIONAL DA
ORGANIZAO ........................................................................................................................73
FIGURA 8 - DEFINIO DO PROGRAMA DE MEDIO - INTEGRAO DO PROGRAMA EM UM
CONTEXTO................................................................................................................................ 1
FIGURA 9 - DEFINIO DO PROGRAMA DE MEDIO - FLUXO PARA GERAO BIMESTRAL
DO RELATRIO EVOLUCIONAL DA ORGANIZAO..............................................................77










x
LISTA DE TABELAS


TABELA 1: FASES DO CICLO DE VIDA DE DESENVOLVIMENTO EM QUE A APF PODE SER
APLICADA, ADAPTADO DE (VAZQUEZ, ET AL., 2003) ............................................................16
TABELA 2: MATRIZ COMPLEXIDADE ALI / AIE, ADAPTADO DE (IFPUG, 2000), PGINA 69.........21
TABELA 3: MATRIZ DE COMPLEXIDADE EE, ADAPTADO DE (IFPUG, 2000), PGINA 165..........23
TABELA 4: MATRIZ DE COMPLEXIDADE SE / CE, ADAPTADO DE (IFPUG, 2000), PGINA 166 ..23
TABELA 5: MATRIZ TIPO FUNO - CONTRIBUIO EM PF, ADAPTADO DE (IFPUG, 2000),
PGINAS 69 E 167....................................................................................................................24
TABELA 6: EXEMPLO DE CONTAGEM DE PONTOS DE FUNO NO AJUSTADOS..................25
TABELA 7 - RELAO OBJETIVOS X MEDIDAS, ADAPTADO DE (HOLMES, 2002), PGINA 100 33
TABELA 8 - APLICABILIDADE DE MEDIDAS PARA ENDEREAMENTO DE OBJETIVOS,
ADAPTADO DE (DEKKERS, 2002), PGINA 165......................................................................34
TABELA 9 - RELAO OBJETIVOS, MEDIES, DADOS E RESPONSABILIDADES, ADAPTADO
DE (HOLMES, 2002), PGINAS 103 E 104................................................................................36
TABELA 10 - EXEMPLOS DE TREINAMENTOS PARA DIFERENTES AUDINCIAS, ADAPTADO DE
(HOLMES, 2002), PGINA 109..................................................................................................44
TABELA 11 - RELAO DE MTRICAS X OBJETIVOS COM O PROGRAMA DE MEDIO..........55
TABELA 12 - APURAO DO ESFORO GASTO NO PROJETO EM HORAS - SUMARIZAO...57
TABELA 13 - APURAO DO CUSTO TOTAL DO PROJETO - SUMARIZAO.............................59
TABELA 14 TAMANHO DO PROJETO INICIAL EM PONTOS DE FUNO - SUMARIZAO.....60
TABELA 15 - TOTAL DE PONTOS DE FUNO DE ALTERAES DE ESCOPO - SUMARIZAO
..................................................................................................................................................62
TABELA 16 - TOTAL DE PONTOS DE FUNO AO TRMINO DO PROJETO - SUMARIZAO...63
TABELA 17 QUANTIDADE TOTAL DE DEFEITOS ENCONTRADOS - SUMARIZAO ...............65
xi
TABELA 18 DEFINIO DO PROGRAMA DE MEDIO - RELAO MEDIDAS, DADOS, MEIOS,
PONTOS E RESPONSABILIDADE PELA COLETA ...................................................................66
TABELA 19 DEFINIO DO PROGRAMA DE MEDIO RELAO OBJETIVOS, MTRICAS E
SUAS COMPOSIES .............................................................................................................66
TABELA 20 - SUMARIZAO RELATRIO DETALHADO POR PROJETO.....................................70
TABELA 21 - SUMARIZAO RELATRIO COMPARATIVO POR PROJETO.................................72
TABELA 22 - SUMARIZAO RELATRIO EVOLUCIONAL DA ORGANIZAO...........................74
TABELA 23 - DEFINIO PROGRAMA MEDIO - ANLISE E REPORTE DE RESULTADOS .....75

xii

SUMRIO


1. INTRODUO...................................................................................................1
1.1. CONTEXTUALIZAO......................................................................................... 1
1.2. PROBLEMATIZAO............................................................................................ 2
1.3. OBJETIVOS DA PESQUISA ................................................................................... 2
1.4. JUSTIFICATIVAS ................................................................................................... 3
1.5. ENUNCIADO DA HIPTESE ................................................................................. 4
1.6. MTODO DE PESQUISA........................................................................................ 4
1.7. DELIMITAO....................................................................................................... 4
1.8. ORGANIZAO..................................................................................................... 5
2. MEDIO DE SOFTWARE...............................................................................6
2.1. INTRODUO........................................................................................................ 6
2.2. MEDIDA, MEDIO, MTRICAS E INDICADORES............................................ 6
2.3. MEDIO DE SOFTWARE ..................................................................................... 7
2.4. MTRICAS PARA ESTIMATIVA DE TAMANHO DE SOFTWARE .................... 10
3. PROGRAMA DE MEDIO ............................................................................28
3.1. INTRODUO...................................................................................................... 28
3.2. OBJETIVOS DE UM PROGRAMA DE MEDIO............................................... 28
3.3. BENEFCIOS DA IMPLEMENTAO DE UM PROGRAMA DE MEDIO..... 29
3.4. COMPOSIO DE UM PROGRAMA DE MEDIO.......................................... 30
3.5. FATORES CRTICOS DE SUCESSO EM UM PROGRAMA DE MEDIO........ 42
3.6. RECURSOS HUMANOS: TREINAMENTO E MUDANA CULTURAL............. 44
4. ABORDAGEM PARA UM PROGRAMA DE MEDIO BASEADO EM
ANLISE DE PONTOS DE FUNO ......................................................................46
4.1. PREMISSAS PARA O PROGRAMA DE MEDIO ABORDADO ...................... 47
4.2. DEFINIO DE OBJETIVOS E METAS............................................................... 51
4.3. DEFINIO DE MEDIES E MTRICAS......................................................... 53
xiii
4.4. DADOS, MEIOS E PONTOS DE COLETA E RESPONSABILIDADES................ 55
4.5. ANLISE E REPORTE DE RESULTADOS .......................................................... 67
4.6. INTEGRAO DO PROGRAMA DE MEDIO EM UM CONTEXTO DE
DESENVOLVIMENTO DE SISTEMAS.......................................................................... 75
5. CONCLUSES E TRABALHOS FUTUROS...................................................78
5.1. CONCLUSO........................................................................................................ 78
5.2. RELAO COM OS OBJETIVOS INICIAIS......................................................... 78
5.3. VALIDADE DA HIPTESE .................................................................................. 78
5.4. TRABALHOS FUTUROS...................................................................................... 79
REFERNCIAS.........................................................................................................81


















1
1. INTRODUO

1.1. CONTEXTUALIZAO

Com a exponencial evoluo dos computadores pessoais e em seguida com
o surgimento da internet, a rea de tecnologia da informao passou cada vez mais
a dar suporte aos negcios de corporaes e no se limitando a isso, tornou-se
componente chave para se atingir diferencial competitivo. Em alguns ramos de
atuao tornou-se essencial at mesmo para garantir a sobrevivncia das empresas
no mercado. Neste mesmo sentido, Bill Gates (1999 p. 11) cita tal evoluo:
Pela primeira vez, todo tipo de informao nmeros, texto, som, vdeo
pode ser posto numa forma digital que qualquer computador pode
armazenar, processar e enviar. Pela primeira vez, um hardware padro
combinado a uma plataforma de software padro est criando economias de
escala que disponibilizam a empresas de todos os tamanhos, a custos
baixos, poderosas solues de informtica. O termo pessoal na expresso
computador pessoal significa que cada profissional do conhecimento
dispe de uma forte ferramenta para analisar e usar a informao fornecida
por essas solues. A revoluo do microprocessador no s est dando
aos PCs um aumento exponencial de poder, como est propiciando a
criao de toda uma nova gerao de dispositivos digitais inteligentes
handlehelds [micros de mo], Auto PCs, smart cards [cartes inteligentes] e
outros a caminho que iro disseminar o uso da informao digital. Uma
das chaves para essa disseminao o aperfeioamento das tecnologias
da internet, que nos permitem conectividade mundial.

Devido a esta evoluo constante e a necessidade crescente de softwares
para o apoio aos negcios, diversas tecnologias, metodologias e padres so
desenvolvidas e estudadas. Processos, linguagens de programao, conceitos,
modelos arquiteturais e metodologias, so aperfeioados constantemente a fim de
se conseguir atender a esta demanda com maior qualidade do resultado final e com
o menor tempo e custo possvel, a ponto de se manter o custo-benefcio da soluo
sistmica adquirida. As empresas que conseguem servios de tecnologia da
informao com estas caractersticas podem obter vantagens competitivas, que
podem inclusive definir sua permanncia ou no no mercado. Putnam, et al., (2002)
cita tal cenrio competitivo quando afirma que as organizaes precisam cada vez
mais conseguir produtos de boa qualidade em tempo, esforo e custo limitados, o
que significa, em sua opinio, ter um bom nvel de produtividade da equipe.


2
1.2. PROBLEMATIZAO

Produtividade, porm, por si s no garante produtos de qualidade em esforo e
custo limitados. Nem mesmo a utilizao das melhores tecnologias, processos,
metodologias, linguagens de programao, etc. garantem tal resultado. Diversos
fatores esto envolvidos e diversas questes devem ser respondidas, como por
exemplo, como saber o quo produtiva foi a equipe no desenvolvimento de um
sistema? Como saber se o produto desenvolvido tem nveis de qualidade
compatveis com o mercado do mesmo ramo, a ponto de se constatar se a
organizao est ou no gastando apenas o valor adequado com retrabalho? Como
saber se o processo de desenvolvimento de software implementado pela
organizao tem sido eficiente e tem trazido benefcios que valham o custo
investido?
Sem respostas assertivas para tais questes, nenhuma tecnologia ou
processo de desenvolvimento, por mais atual e evoludo que seja, garante que os
sistemas esto sendo desenvolvidos com qualidade e produtividade satisfatrios, a
ponto de apoiarem na gerao de diferencial competitivo para a organizao.
Faz-se necessrio ento que se tenha um mecanismo para responder a tais
questes de maneira assertiva, que permita no s saber a situao real da
organizao de software, como tambm a identificao de pontos fortes e fracos,
buscando com base em tal anlise a evoluo constante. Neste mesmo sentido
(Holmes, 2002) afirma que organizaes de software precisam de uma forma para
gerenciar a carga de trabalho, permitindo-se decidir o que fazer, como fazer e
quando fazer e define ainda que os dias de utilizao de sentimento como base
para tomada de tais decises e como base tambm para responder s questes
relacionadas sua posio, esto extintos.


1.3. OBJETIVOS DA PESQUISA

Dado tal contexto e problematizao, objetiva-se com esta pesquisa, estudar
mtricas, medies e, por fim, programas de medio, buscando entender se tais
mecanismos podem suprir a necessidade por informaes assertivas, se possibilitam
a identificao de pontos que devem ser aprimorados no processo de

3
desenvolvimento de software da organizao e de aes e iniciativas que tem tido
bons resultados e que devem ser mantidas.
Para tal, objetiva-se levantar contedo bibliogrfico sobre medies e
mtricas que possibilitem a definio de um programa de medio alinhado a
objetivos de negcios, a fim de se conhecer suas caractersticas e suas
aplicabilidades no contexto de desenvolvimento de software atual.
Objetiva-se tambm estudar e levantar contedo bibliogrfico a respeito da
composio de um programa de medio, possibilitando entendimento das suas
aplicabilidades em um processo de desenvolvimento e sua relao com as mtricas
estudadas.
Por fim, com base nos estudos realizados, objetiva-se estabelecer uma
abordagem para um programa de medio passvel de implementao por
organizaes, independentemente do processo de desenvolvimento de sistemas
que utilizem.


1.4. JUSTIFICATIVAS

Programas de medio permitem chegar a respostas assertivas para as
questes mencionadas anteriormente, o que leva a melhoria no processo de
desenvolvimento de software e conseqentemente nos produtos deste processo.
(Minkiewicz, 2002) afirma que cada vez mais, organizaes esto se dando
conta do valor que a medio em organizaes de software agrega ao seu processo
de negcios, atravs de estratgia de negcios de longo prazo para medio de
performance e melhoria de processos de desenvolvimento de software. (Minkiewicz,
2002) afirma ainda que as companhias esto se dando conta tambm, de que o
investimento em entender e implementar um programa de medio bem sucedido
pago pela melhoria na produtividade do desenvolvimento de software e do processo
de desenvolvimento como um todo.
Tais melhorias vm a corroborar na busca por produtos com altos nveis de
qualidade, sendo produzidos em cada vez menos tempo e custo, ao mesmo tempo
sendo cada vez mais aderentes ao negcio da companhia, apoiando a organizao
a alcanar seus objetivos estratgicos.


4

1.5. ENUNCIADO DA HIPTESE

A hiptese desta pesquisa que um programa de medio permite a
organizaes gerenciarem a sua construo de software baseando-se em atributos
quantitativos medidos ao invs de informaes subjetivas ou sentimentos,
conseguindo-se com tal:
Gerenciamento e tomada de decises baseada em fatos;
Maior previsibilidade de entrega de produtos;
Melhorias no processo de desenvolvimento e seus produtos;
Melhoria na qualidade dos sistemas desenvolvidos;
Utilizao de recursos com maior eficincia;


1.6. MTODO DE PESQUISA

A metodologia de pesquisa utilizada neste trabalho a pesquisa descritiva,
onde conforme (Gill, 2007), dentre outras caractersticas, est busca pelo
estabelecimento de relao entre variveis. Neste trabalho, as variveis podem ser
consideradas como as diversas mtricas existentes e as diversas formas de
estabelecimento de um programa de medio.
A pesquisa bibliogrfica o principal instrumento deste trabalho, onde livros e
artigos cientficos so analisados (Gill, 2007), com o objetivo de se adquirir
embasamento terico, possibilitando o estabelecimento das relaes entre as
mtricas e o programa de medio.


1.7. DELIMITAO

Este trabalho est delimitado ao estudo de mtricas, programas de medio e
a relao entre eles. A customizao de processos de desenvolvimento de software
para a introduo do programa de medio abordado no ser discutido neste
trabalho, ficando esta como uma oportunidade de evoluo do estudo.

5
Possibilidades de continuidade deste estudo so discutidas em detalhes no ltimo
captulo deste estudo.


1.8. ORGANIZAO

Este estudo est organizado em cinco captulos. A seguir, o contedo de cada
capitulo sumarizado:

O primeiro captulo apresenta o contexto em que o trabalho est inserido,
problematizao, objetivos, justificativas, a hiptese de soluo do problema
apresentado, metodologia de pesquisa utilizada no trabalho, escopo e organizao
do trabalho como um todo. Seu objetivo prover informaes introdutrias sobre o
assunto, bem como a motivao que levou a sua realizao e a sua importncia.

O segundo captulo aborda uma pesquisa bibliogrfica sobre mtricas, tendo
como objetivo a contextualizao do assunto, delineando os principais tpicos e
conceitos que sero utilizados no desenvolvimento do trabalho.

O terceiro captulo traz uma pesquisa bibliogrfica sobre programas de
medio, tendo como objetivo a introduo, conceituao e contextualizao do
assunto, servindo como referncia para o estudo do captulo posterior.

O quarto captulo explora o estudo realizado sobre as mtricas e programas
de medio, estabelecendo-se, com base no levantamento bibliogrfico realizado,
uma abordagem para um programa de medio.

O quinto e ltimo captulo traz a concluso do trabalho, apontando a relao
entre os objetivos e o resultado atingido do estudo, a validade da hiptese inicial e
possibilidades de evoluo deste estudo.


6
2. MEDIO DE SOFTWARE

2.1. INTRODUO

Medio o ato de determinar uma indicao quantitativa da extenso,
quantidade, dimenso, capacidade ou tamanho de algum atributo de um produto ou
processo (Pressman, 2006). Medio de software compreende a medio de um
processo de desenvolvimento de software, cujo objetivo objetivo fornecer um
conjunto de indicadores de processo, que leva a aperfeioamentos no longo prazo
(Pressman, 2006) ou de um projeto, cujo objetivo fornecer mecanismos para o
controle do projeto.
Em busca da previsibilidade de entrega, da qualidade do produto de
desenvolvimento de software, da produtividade da equipe e da eficincia do
processo de desenvolvimento, a medio um item essencial. A medio de
software propicia a obteno de medidas quantitativas de um processo ou produto,
permitindo-se a anlise e avaliao dos valores obtidos, o que possibilita a tomada
de aes visando melhoria de qualidade como um todo. (Pressman, 2006)
confirma esta anlise quando afirma que a medio uma forma de apoio gesto,
que, quando conduzida adequadamente, apia na tomada de decises que
conduzem o projeto ao sucesso.
O objetivo deste captulo contextualizar a medio de software, apresentar
tpicos relacionados a mtricas para estimativa de tamanho de software e
apresentar a anlise de pontos por funo, mtrica utilizada como base do programa
de medio abordado por este trabalho. Dentro dos objetivos deste estudo, este
captulo vem a explorar a medio de software, no contexto da medio em um
projeto, visando prover base terica para o estabelecimento de uma abordagem de
medio para o estabelecimento de um programa de medio.


2.2. MEDIDA, MEDIO, MTRICAS e INDICADORES


7
Para que se defina medio de software, essencial que cada um dos termos
relacionados ao assunto estejam esclarecidos.
(Pressman, 2006) define que uma medida fornece uma indicao quantitativa
da extenso, quantidade, dimenso capacidade ou tamanho de algum atributo de
um produto ou processo. (Vazquez, et al., 2003 p. 31) refora tal definio, quando
afirma que medida a quantificao de uma caracterstica.
(IEEE, 1993) define mtrica como uma medida quantitativa do grau em que
um sistema, componente ou processo possui um determinado atributo.
(Pressman, 2006) define medio como o ato de determinar uma medida e
um indicador como uma mtrica, ou combinao de mtricas que fornece
profundidade na viso do processo de software, projeto de software ou produto em
si.
(Pressman, 2006 p. 352) exemplifica cada uma das definies apresentadas:
Quando um nico ponto de dados foi coletado (por exemplo, o nmero de
erros descoberto em um nico componente de software), uma medida foi
estabelecida. Medio ocorre como resultado da coleo de um ou mais
pontos de dados (por exemplo, um certo nmero de revises de
componentes e testes de unidade so investigados para coletar medidas do
nmero de erros em cada um). Uma mtrica de software relaciona as
medidas individuais de algum modo (por exemplo, o nmero mdio de erros
encontrados por reviso ou nmero mdio de erros encontrados por teste
de unidade).
[...] Um indicador fornece profundidade de viso que permite ao gerente do
projeto ou engenheiro de software ajustar o processo, projeto ou produto
para tornar as coisas melhores.


2.3. MEDIO DE SOFTWARE

Segundo (Pressman, 2006), a medio essencial em processos de
engenharia. Atravs da medio, possvel obter entendimento do processo e
projeto, tendo-se um mecanismo para avaliao objetiva. Tendncias (boas ou ms)
podem ser detectadas, melhores estimativas podem ser feitas e aperfeioamentos
reais podem ser obtidos ao longo do tempo. (Budag, 2007) confirma este raciocnio
quando diz que o objetivo da aplicao da medio de software fornecer aos
gerentes e engenheiros de software um conjunto de informaes tangveis para
planejar o projeto, realizar estimativas, gerenciar e controlar os projetos com maior
preciso.

8
Segundo (Pressman, 2006) as razes para o qual se mede um software so:
Caracterizar em um esforo a fim de obter entendimento de processos,
produtos, recursos e ambientes, e para estabelecer referncias, para
comparao com futuras avaliaes;
Para avaliar, a fim de determinar o estado em relao aos planos;
Para prever pela obteno de entendimento de relacionamento entre
processos e produtos e construo de modelos desses relacionamentos;
Para aperfeioar, pela identificao de bloqueios, causas fundamentais,
ineficincias e outras oportunidades para melhor a qualidade do produto e
desempenho do processo.

Complementando as razes citadas por Pressman, (Vazquez, et al., 2003),
entendem que as razes para se medir esto compreendidas em:
Ter mecanismos para manter sob controle um contexto de
desenvolvimento de software em que os requisitos tendem a expanso e
que os recursos tendem a escassez Atender ao mximo s expectativas
dos clientes com a utilizao do mnimo de recursos;
Apoiar no planejamento e controle da gerncia de projetos, apoiando na
definio de objetivos realistas e na adoo de medidas necessrias
preveno e correo dos desvios que causam impacto negativo ao
projeto;
Apoiar na tomada de decises do projeto, atravs de indicadores que
refletem uma tendncia de comportamento futuro;
Ter insumos para anlises Make-or-Buy [Construir ou Comprar], onde se
decide entre construir um software internamente ou em terceirizar sua
construo;
Ter mecanismos para a medio concisa de servios de desenvolvimento
de software prestados por terceiros.

Dados os motivos pelo qual medir, importante ressaltar que conforme pode
ser observado, a medio pode ser aplicada sobre alguns contextos distintos, porm
relacionados, como por exemplo, a medio em um processo de desenvolvimento
de software e a medio em um projeto. Na medio em um processo, o objetivo

9
obter mtricas e indicadores do processo, visando sua melhoria contnua. Na
medio ao longo de um projeto, tm-se mtricas para auxlio na estimativa, no
controle da qualidade, na avaliao da produtividade e no controle do projeto. Este
controle se d atravs de medies sistemticas e avaliao com base em regras
claramente definidas (Pressman, 2006). (Vazquez, et al., 2003 p. 22) enfatiza a
importncia das mtricas na medio de projetos:
A falta de mtricas de projeto prejudica de forma geral seu
acompanhamento, uma vez que, apesar de o problema estar l, ele no
percebido por aqueles que podem direcionar esforos na sua soluo. O
papel das mtricas permitir uma rpida identificao e correo de
problemas.

Para (Demarco, 1989), os aspectos quantitativos onde as mtricas podem ser
usadas so no escopo, tamanho, custo, risco e tempo empregado. Uma vez que se
sabe o tamanho do que deve ser construdo, possvel planejar e controlar o
projeto. Alm disso, tendo-se uma medida padro e comum de tamanho, possvel
fazer a relao com outras variveis, como por exemplo, o tempo gasto na
construo, a quantidade de erros encontrados por medida de tamanho,
conseguindo-se assim, apurar produtividade e indicadores de qualidade.
Segundo (Pressman, 2006), na maioria das vezes, em um projeto de
desenvolvimento de um sistema, as mtricas de projeto so aplicadas para a
apurao de estimativas. Para tal, so usadas mtricas para estimativa de tamanho
de software a partir das quais, estimativas de esforo e tempo so produzidas. Com
a evoluo do projeto, o gerente de projetos utiliza a estimativa de esforo e tempo
para controlar e monitorar o progresso da construo. Para tal, a taxa de produo,
representada em termos de modelos criados, os erros descobertos durante cada
tarefa de engenharia de software so medidos e registrados. Ao final, consegue-se
comparar se as estimativas iniciais esto aderentes ao realizado, e esta informao
retro-alimentada no processo de estimativa. Consegue-se tambm saber, o quanto
a equipe foi produtiva e o quanto foi efetiva com relao qualidade.
Uma vez que este processo de medio definido e utilizado, possvel
identificar reas falhas em projetos e, com o tempo, tomar aes visando sua
melhoria. medida que os pontos falhos so aperfeioados, (Pressman, 2006) os
defeitos so minimizados e, conforme a contagem de defeitos decresce, a

10
quantidade de retrabalho durante o projeto tambm reduzida, levando a diminuio
do custo total do projeto.
Contextualizada a medio de software, as medies ao longo de um projeto,
e estimativas de tamanho, a seguir so apresentadas mtricas para estimativa de
tamanho de software, as quais fazem parte das medies em projetos, apoiando na
apurao de estimativas de esforo, em indicadores para controle de qualidade,
produtividade e controle do andamento do projeto.


2.4. MTRICAS PARA ESTIMATIVA DE TAMANHO DE SOFTWARE

Segundo (Vazquez, et al., 2003), sempre que se tem uma necessidade de
implementao de um software para se atender demandas de uma organizao, as
principais questes que so feitas so quanto ao tempo necessrio para concluso
do projeto e o custo para a organizao. Para responder tais perguntas, diversos
fatores devem ser considerados, como as particularidades dos requisitos do projeto
de software, da equipe envolvida e da tecnologia empregada. (Vazquez, et al., 2003
p. 155) cita os principais fatores que, quando analisados, evidenciam as dificuldades
de obteno de respostas confiveis para as questes citadas:
Os requisitos traduzem com fidelidade as necessidades do negcio dos
usurios? J se encontram suficientemente estabilizados? Refletem
caractersticas de software transacionais de baixa complexidade ou
possuem atributos que exigem conhecimentos especficos, tais como alta
performance, matemtica complexa, processamentos distribudos, etc.?

A equipe de desenvolvimento possu conhecimento na rea de negcio que
ser atendida pelo projeto de software? Possu experincia na utilizao
das ferramentas necessrias concluso do projeto? Possu todos os perfis
necessrios impostos pelas caractersticas do projeto? Existem conflitos
internos equipe que precisam ser solucionados? possvel identificar uma
liderana entre os integrantes da equipe? Qual o grau de motivao da
equipe mediante o projeto?

A tecnologia j faz parte da cultura da organizao? Pode ser facilmente
absorvida por novos integrantes da equipe de projeto? Existe material de
apoio suficiente para o aprendizado da tecnologia? Sua aplicao exige
pessoal com algum tipo de especializao? Suporta a implementao de
todas as caractersticas do software? Atende inclusive aos requisitos no-
funcionais do projeto?


11
Dadas estas particularidades inerentes a cada projeto, apurar com exatido o
custo final e a data da concluso uma tarefa que s pode ser realizada quando o
projeto est concludo. Antes de tal fato, s possvel obter estimativas, o que no
deixa de se ser muito importante, uma vez que dados histricos sejam mantidos e
utilizados para o aperfeioamento das estimativas, chegando a um nvel de
confiana cada vez maior (Vazquez, et al., 2003).
Para a apurao de tais estimativas, mtricas podem ser utilizadas, dando
uma abordagem sistemtica ao processo, e, portanto aumentando a confiabilidade
no resultado. Segundo (Aguiar), as mtricas para estimativa de tamanho de
software surgiram com o objetivo de servir como mecanismo para se estimar o
esforo envolvido em projetos e o prazo associado ao desenvolvimento de sistemas.
Uma das primeiras tcnicas que surgiram com este intuito foi a SLOC (Source
Lines of Code), por volta de 1950/1960, a qual considerada como uma medio
fsica do tamanho do software, por medir o volume de cdigo-fonte contido no
mesmo. Para (Andrade, 2004), os principais benefcios desta tcnica esto no fato
de que ela pode ser aplicada automaticamente atravs da utilizao de ferramentas
que apurem a quantidade de linhas de cdigo do projeto e pelo fato de ter sido
usada por muito tempo, existindo grande quantidade de dados histricos de
estimativas realizadas. Por outro lado, o principal problema desta tcnica est no
fato de que a medio do cdigo fonte no representa propriamente o tamanho do
software ou do esforo envolvido, uma vez que este atributo est diretamente
condicionado tecnologia utilizada e ao mtodo de programao empregado.
(Andrade, 2004) reafirma esta concluso, quando diz que a contagem em LOC
depende do grau de reuso da linguagem de programao, o que pode levar uma
estimativa a ser cinco vezes superior a outra, devido s diferenas das linguagens
de programao quando as linhas em branco, linhas de comentrio, declarao de
dados e linhas de instrues. (Andrade, 2004) afirma ainda que esta tcnica
penaliza projetos pequenos e bem projetados, no se adapta s linguagens no
procedimentais e de difcil obteno na fase inicial do projeto.
Dadas as limitaes da medio fsica, tcnicas de medio baseadas em
funcionalidades foram propostas, as quais procuram medir a funcionalidade
disponibilizada pelo software, ao invs do tamanho fsico. Tais tcnicas so
denominadas mtricas funcionais de tamanho. Por medirem apenas o tamanho

12
funcional do sistema, possvel serem utilizadas em fases iniciais do projeto,
quando normalmente ainda no se tem muitos detalhes tcnicos.
Uma das primeiras tcnicas criadas com este objetivo foi a Pontos de Funo,
criada por Allan Albrecht em 1979. Na tcnica de Pontos de Funo os dados e as
transaes envolvidas no sistema so classificadas quanto a sua complexidade e
pontuadas. Um fator de ajuste determinado com base em caractersticas
especficas do sistema medido e aplicado quantidade de pontos apurados. Ao
trmino, tem-se a quantidade de pontos por funo do sistema medido. Segundo
(Aguiar), tal tcnica ganhou grande popularidade com a criao do IFPUG
(International Function Point Users Group) e com sua normatizao internacional,
atravs da norma ISSO/IEC 20926. (Aguiar) ainda afirma que esta tcnica tem sido
utilizada por diversas organizaes com sucesso, pois o pr-requisito para sua
utilizao o conhecimento dos requisitos do sistema e o da tcnica propriamente
dita.
Posteriormente, outras mtricas funcionais de tamanho foram propostas,
como Bang, Mark II, Full Function Points e Cosmic-FFP. Em 1993, Gustav Karner
criou uma variao dos Pontos de Funo especfica para a medio de
funcionalidade contida em casos de uso, denominada Pontos por Caso de Uso
(Aguiar). Nesta tcnica, diagramas de caso de uso so a base para a medio. Os
atores e casos de uso so classificados e pontuados quanto a sua complexidade no
sistema. Fatores tcnicos e ambientais so apurados e aplicados aos pontos
obtidos. Como resultado, tem-se a quantidade de pontos de casos de uso do
sistema e a quantidade de esforo envolvido na construo de tais casos de uso.
(Aguiar) diz que o problema desta tcnica reside no fato de que como no se
tem padres universais para a construo de casos de uso, a obteno de
estimativas confiveis de esforo exigiria a padronizao dos estilos de casos de uso
e um extenso trabalho de calibrao de um modelo de estimativas baseado em
pontos por caso de uso. Alm disso, a tcnica s pode ser utilizada por empresas
que adotem casos de uso como forma de expresso dos requisitos, o que
inviabilizaria sua utilizao em muitos casos e dificultaria sua utilizao como mtrica
padro para definio de contratos de servios de desenvolvimento de software e
medio de produto entregue.
Dadas as diversas mtricas apresentadas, preciso avaliar seus pontos fortes e
fracos e sua aplicabilidade no contexto de desenvolvimento de sistemas atual, uma

13
vez que muitas delas foram desenvolvidas h mais de trinta anos, quando o contexto
era completamente diferente. Devem ser levadas em considerao suas
aplicabilidades durante as fases de projeto, sua difuso de utilizao entre as
organizaes, sua facilidade de aplicao, a existncia de institutos
regulamentadores ou normas que regulamentem a utilizao, dentre outros fatores.
(Schuster, 2006), relaciona alguns itens que devem ser levados em considerao na
escolha de uma mtrica:
Deve ter detalhamento dos passos a serem seguidos para a utilizao da
mtrica;
Deve prover resultados consistentes;
Deve ser de fcil entendimento;
Precisa ser objetiva, minimizando a influncia de julgamentos pessoais;
Deve ser efetiva no custo, ou seja, o resultado obtido deve compensar e
exceder o esforo da utilizao da mtrica;
Precisa fornecer informaes que evidenciem a situao atual e sejam
relevantes para a tomada de deciso;
Deve ser apropriada para cada etapa do ciclo de vida do software;
Deve servir para a realizao de estimativas;
Deve possibilitar a obteno de sries histricas;

A anlise de pontos de funo atende a todos os requisitos mencionados.
Segundo (Andrade, 2004) a tcnica a mais utilizada no mercado. (Aguiar) afirma
que nenhuma outra tcnica de medio funcional alcanou tal nvel de disseminao
ou investimento. Capers Jones afirma em (Jones, 2002) que a APF est
rapidamente se tornando uma mtrica dominante no mundo do software. (Aguiar)
ainda lista algumas razes pela qual utilizar Pontos de Funo:
A tcnica mantida por uma organizao internacional sem fins lucrativos
desde 1986, o International Function Point Users Group IFPUG;
Possui suporte no Brasil atravs do Brazilian Function Point Users Group
BFPUG;
Existe um programa de certificao mantido pelo IFPUG, com o objetivo de
certificar profissionais na tcnica, o que vem a aumentar sua credibilidade,
uma vez que profissionais possam aplic-la de forma normatizada;

14
padronizada internacionalmente pela ISO, atravs da norma ISO/TEC
20926, possibilitando uniformidade da aplicao;
Utiliza como base requisitos em alto nvel de abstrao, sendo independente
de artefatos, podendo ser utilizado por organizaes que utilizem qualquer
forma de representao de requisitos;
A existncia de grande acervo de dados sobre pontos de funo
armazenados por diversas organizaes possibilita a realizao de estudos e
comparaes;
A utilizao de pontos de funo em contratos e licitaes uma realidade no
Brasil, tendo surgido a partir de iniciativas de organizaes governamentais e
rapidamente alcanado o mercado em geral;

Dadas tais motivaes e o contexto do trabalho, o tpico seguinte detalha a
tcnica de Pontos de Funo, com o objetivo de explor-la, a fim de se obter
fundamentao terica para definio da sua aplicao em um programa de
medio.


2.4.1. Anlise de Pontos de Funo

2.4.1.1. A Anlise de Pontos de Funo
A Anlise de Pontos de Funo [APF], do ingls Function Point Analysis [FPA],
um mtodo padro para medio do desenvolvimento de software do ponto de vista
1

do usurio
2
(IFPUG, 2000). A APF mede o software quantificando a funcionalidade
que ele prov ao usurio, baseado em um design lgico inicial (IFPUG, 2000).


1
Viso do Usurio: qualquer descrio formal de suas necessidades de negcios em sua prpria
linguagem. A viso do usurio pode variar em sua forma fsica, podendo estar representada das
seguintes formas: Catalogo de transaes, documento de requisitos, especificaes externas,
especificaes detalhadas, manual do usurio, etc. (IFPUG, 2000).
2
Usurio para a APF: qualquer pessoa que especifique requisitos funcionais ou qualquer pessoa ou
coisa que interaja com o sistema. Exemplos: Ator em um caso de uso, uma aplicao, um gestor ou
um usurio final (Vazquez, et al., 2003).

15
Sendo assim, a tcnica tem como objetivo medir os produtos entregues, atravs da
medio do que ser construdo. Como a construo ser feita, quais processos,
metodologias, tecnologias, ferramentas, linguagens de programao, etc. no so
questes levadas em considerao na anlise de pontos de funo. Tal fato faz com
que a tcnica seja independente de tecnologia, possibilitando sua utilizao
consistente por diversas organizaes (Vazquez, et al., 2003). Em resumo, os
objetivos da anlise de pontos de funo so (IFPUG, 2000):
Medir a funcionalidade que o usurio solicita e recebe
Medir desenvolvimento e manuteno de software independentemente de
tecnologia de implementao
Ser uma medida consistente entre vrios projetos e organizaes
Ser simples o suficiente para eliminar o esforo adicional com a medio

Dentre os benefcios da anlise de pontos de funo o principal a possibilidade
da sua utilizao como um meio para se estimar custos e recursos necessrios para
o desenvolvimento e manuteno de software. Alm disso, a APF pode ser utilizada
como meio para medio do tamanho de pacotes, como fator de normalizao para
a comparao de software. A APF tambm pode apoiar na gerncia de escopo de
projetos de software, pois, uma vez que se tenha o tamanho do software medido,
possvel medi-lo novamente a cada alterao de escopo, conseguindo-se quantific-
las. A APF tambm pode ser utilizada na gerncia de contratos de software, servindo
como meio para quantificao de trabalho realizado, ou a realizar, permitindo a
precificao sobre uma medida comum e entendida por ambas as partes. A APF
tambm apia na mensurao de indicadores de qualidade e de produtividade, pois,
uma vez que se tenha estabelecido o tamanho do produto, que se saiba a
quantidade de tempo empregado para a construo deste produto e a quantidade de
defeitos encontrados neste produto, possvel apurar tais indicadores. Sem o
tamanho do produto estabelecido, tais indicadores no poderiam ser encontrados
com facilidade e preciso. O (IFPUG, 2000) confirma tais benefcios quando lista as
principais formas de utilizao da APF pelas organizaes:


16
Uma ferramenta para determinar o tamanho de um pacote de aplicao
adquirido, pois possibilita a contagem das funes contidas neste pacote;
Uma ferramenta para ajudar usurios a determinar os benefcios de uma
aplicao para sua organizao, pela contagem de funes que atendem
a seus requisitos;
Uma ferramenta para medir unidades de um produto de software,
suportando anlise quanto qualidade e produtividade;
Um meio para estimar custo e recursos requeridos para um
desenvolvimento de software ou manuteno;
Um fator de normalizao de software para comparaes.

Segundo (Vazquez, et al., 2003), a APF pode ser aplicada na maioria fases
do ciclo de vida de um software, entretanto, no aplicvel em todas, como por
exemplo, manutenes corretivas e manutenes perfectivas. Tal fato se d, pois
em tais fases no se tem a viso do usurio, uma vez que ele normalmente no
sabe o motivo da ocorrncia do erro corrigido na manuteno corretiva nem o que
melhorar tecnicamente na manuteno perfectiva. (Vazquez, et al., 2003) afirma
ainda que em algumas fases, dada a pouca quantidade de informaes, a APF pode
ser utilizada apenas no contexto de estimativa. A tabela 1 a seguir resume as fases,
quando a APF pode ser aplicada ou no, e, sendo aplicvel, se o resultado obtido
pode ser considerado como uma estimativa ou medio.

Tabela 1: Fases do ciclo de vida de desenvolvimento em que a APF pode ser aplicada,
adaptado de (Vazquez, et al., 2003)


17

Dado que a APF mede os requisitos do usurio em sua viso, importante
ressaltar quais tipos de requisitos que a APF se prope a medir. A norma ISSO/IEC
14.143-1 define que existem trs tipos de requisitos do usurio: Funcionais, de
Qualidade e Tcnicos. Os requisitos funcionais compreendem procedimentos que o
software deve executar para atender s necessidades do usurio. Os requisitos de
qualidade compreendem, conforme a norma ISO/IEC 9126, requisitos de
funcionalidade, confiabilidade, usabilidade, eficincia, manutenibilidade e
portabilidade. J os requisitos tcnicos compreendem a tecnologia para
desenvolvimento, manuteno e suporte a execuo do software, como por
exemplo: linguagens, ferramentas de teste, OS, BD e tecnologia de interface com o
usurio. Segundo (Vazquez, et al., 2003), dados tais tipos de requisitos, o nico que
a APF se prope a medir so os requisitos funcionais. (Vazquez, et al., 2003) afirma
ainda que para a APF, os requisitos funcionais so classificados em dois tipos:
Interao do usurio com o sistema (requisitos de transaes) e armazenamento
dos dados manipulados em transaes (requisitos de armazenamento).

2.4.1.2. Processo de contagem

O processo de contagem de pontos de funo pode ser representado pela Figura
1 a seguir. Cada caixa da figura representa um passo no processo de contagem,
que executado seqencialmente, de acordo com a ordem estabelecida. O
resultado do processo a aferio do nmero de pontos de funo ajustados. A
seguir, cada passo do processo ser explicado detalhadamente.


Figura 1: Processo de contagem de pontos de funo, adaptado de (IFPUG, 2000), pgina 31

18

Identificar o propsito da contagem
Como o prprio nome diz, neste passo, determina-se o propsito da
contagem. O propsito compreende o objetivo que se tem com a contagem, que
pode variar de acordo com o contexto em que a medio est inserida. O propsito
da contagem influncia na definio do tipo, escopo e fronteira da contagem
(IFPUG, 2000). Se a APF est sendo aplicada para se ter uma estimativa de esforo
com base em uma proposta de desenvolvimento de software, o objetivo da
contagem apurar o total de pontos de funo estimados. Se a APF est sendo
aplicada para contar uma aplicao instalada, visando verificar se o estimado est
de acordo com o realizado, o propsito da contagem apurar o tamanho do
software em pontos de funo. Uma vez que se tem o propsito identificado, sabe-se
o resultado esperado da aplicao da tcnica.

Determinar o tipo da contagem
A anlise de pontos de funo pode ser aplicada para medir trs tipos de
projetos: Projeto de desenvolvimento, Projeto de melhoria e Aplicao Base. No
projeto de desenvolvimento, medem-se as funes fornecidas na primeira instalao
do software, quando o projeto est completo [criao de um novo software]. No
projeto de melhoria, medem-se modificaes em aplicaes j existentes, entregues
quando o projeto est completo [manuteno evolutiva]. Na aplicao base, medem-
se as funes fornecidas ao usurio, da aplicao atualmente instalada [medio de
um projeto inteiro e funcional] (IFPUG, 2000).

Determinar a fronteira da aplicao
A fronteira da aplicao uma interface conceitual entre aplicao interna e o
mundo externo da aplicao, independente de consideraes tcnicas ou
implementao, de acordo com a viso externa de negcio do usurio da aplicao
(IFPUG, 2000). A definio da fronteira da aplicao muito importante no processo
de contagem, pois, uma vez tendo-a definida, pode-se saber o que deve ser contato
como sendo interno aplicao e o que deve ou no ser contado como sendo
externo aplicao. Para a APF, os itens que compem a parte interna de uma
aplicao tm pesos diferentes dos itens externos.

19
importante ressaltar, que para a delimitao da fronteira da aplicao, deve
ser levada em considerao a viso do usurio. Aspectos tcnicos no devem ser
levados em considerao na delimitao. Uma fronteira mal posicionada pode alterar
a perspectiva da contagem de uma viso lgica para uma viso fsica, o que pode
ter como conseqncia a duplicidade na identificao de funes, ou sua omisso
(Vazquez, et al., 2003).

Determinar o escopo da contagem
A determinao do escopo da contagem consiste na identificao da
funcionalidade que ser contada no processo de contagem (IFPUG, 2000). Define-
se quais as aplicaes envolvidas, quais funcionalidades e tipos de funcionalidades
sero contados. O escopo da contagem determinado pela identificao do
propsito da contagem. Uma vez que se tenha definido qual o propsito da
contagem, sabe-se o que est ou no no escopo. O escopo pode abranger a
contagem de uma aplicao inteira ou parte dela, pode abranger a contagem de
vrias aplicaes, ou, por exemplo, de um projeto que envolve a criao de uma
nova aplicao e a manuteno de outras que tero integrao com a nova
aplicao a ser construda.

Contar funes do tipo dados
O processo de contagem das funes do tipo dados consiste em identificar os
requisitos de armazenamento de dados sob a tica do usurio, de acordo com a sua
lgica, e classific-los quanto ao seu tipo e complexidade, determinando sua
contribuio individual em pontos de funo (IFPUG, 2000). Por exemplo: em um
sistema de emisso de notas fiscais, o usurio identifica que so entidades que
devem ser mantidas pelo sistema clientes e nota Fiscal. Uma vez identificadas tais
entidades, o passo seguinte a sua classificao.
importante ressaltar, que as funes do tipo dados devem ser identificveis
pelo usurio, ou seja, deve ser de seu conhecimento e reconhecimento. No so
consideradas funes do tipo dado, por serem meramente questes tcnicas de
implementao os seguintes itens: Vises de bancos de dados, armazenamento
visando maior performance, dados de domnio com inteno nica de manter
integridade referencial no banco de dados, dados de configurao da aplicao que
no estejam relacionadas ao negcio ou que no sejam reconhecidas pelo usurio

20
(IFPUG, 2000). Tal restrio dada para que no se tenha distores entre as
contagens em fases inicias, onde no se tem detalhamentos tcnicos e as fases
finais, onde toda a aplicao e soluo tcnica j foi definida.
As funes do tipo dado podem ser classificadas de duas formas (IFPUG,
2000):

ALI Arquivos lgicos internos: Armazenamento de dados, identificvel
pelo usurio, mantido dentro da fronteira da aplicao contada. Exemplos:
o Tabelas que armazenam dados da aplicao
o Entidades de negcio
o Entidades de referncia
o Arquivos mantidos no s pela aplicao, mas tambm por outra
aplicao
AIE Arquivo de interface externa: Armazenamento de dados, identificvel
pelo usurio, mantido fora da fronteira da aplicao contada, porm, utilizado
pela aplicao contada em algum momento. Exemplos:
o Dados externos utilizados pela aplicao

importante ressaltar que o termo arquivo utilizado na nomenclatura das
funes do tipo dado no se refere a um arquivo fsico de um sistema e sim a um
agrupamento lgico de dados (IFPUG, 2000). Uma vez classificados quanto ao tipo,
o prximo passo a determinao da complexidade. Para tal, para cada arquivo
lgico identificado, determina-se a quantidade de tipos de dados e tipos de registros
que o arquivo lgico compreende.
Um tipo de dado um campo nico, reconhecido pelo usurio e no repetido
(IFPUG, 2000). Um exemplo de tipo de dado do arquivo lgico nota fiscal seu valor
total. J um tipo de registro um subgrupo de dados dentro de um arquivo lgico,
reconhecido pelo usurio (IFPUG, 2000), como por exemplo, os itens da nota fiscal.
Uma vez apurado o arquivo lgico, a quantidade de tipos de dados e tipos de
registros compreendidos, o passo seguinte classific-lo quanto a sua
complexidade. Para tal, a tabela 2 a seguir deve ser considerada.


21
Tabela 2: Matriz complexidade ALI / AIE, adaptado de (IFPUG, 2000), pgina 69

TR Tipo de Registro / TD Tipo de Dado

Contar funes do tipo transao
Para ter entendimento quanto ao processo de contagem das funes do tipo
transao, necessrio que se tenha esclarecido antes um conceito chave da APF,
que o processo elementar. O processo elementar a menor unidade de atividade
com significado para o usurio, completo em si mesmo, que deixa a aplicao em
estado consistente (IFPUG, 2000). Em outras palavras, um processo elementar pode
ser entendido como uma funcionalidade completa do sistema que o usurio enxerga,
por exemplo: Cadastrar clientes, emitir nota fiscal, etc.
O processo de contagem das funes do tipo transao consiste em
identificar os processos elementares da aplicao que est sendo contada,
identificar a principal inteno de cada processo elementar encontrado, classific-los
quanto ao tipo e quanto a complexidade, determinando sua contribuio individual
em pontos de funo (Vazquez, et al., 2003).
Uma vez identificados os processos elementares, o passo seguinte
identificar sua principal inteno, classificando-o. Os processos elementares podem
ser classificados em:

Entrada Externa: Processo elementar que processa dados ou informaes
de controle
3
vindos de fora da fronteira da aplicao, mantendo um ou mais
ALI (IFPUG, 2000). Exemplos (Vazquez, et al., 2003):
o Transaes que recebem dados externos utilizados na manuteno de
ALIs;


3
Informaes de Controle: Influencia processos elementares da aplicao. Especifica o que,
quando ou como os dados so processados (IFPUG, 2000).

22
o Operaes de incluso, excluso e alterao de registros em arquivos;
o Processamento em lotes de atualizao de bases cadastrais a partir de
arquivos de movimento;

Consulta Externa: Processo elementar que envia dados ou informaes de
controle para fora da fronteira da aplicao. Nas consultas externas no h
manuteno de ALIs nem apurao de frmulas, clculos ou dados
derivados
4
(IFPUG, 2000). Exemplos (Vazquez, et al., 2003):
o Gerao de arquivo de movimento para outra aplicao;
o Recuperao de dados com base em critrios informados;
o Consultas implcitas, embutidas em outras transaes;
o Telas de login com verificao de senhas;
o Controles tipo drop down [lista suspensa] ou semelhantes;

Sada Externa: Processo elementar que envia dados ou informaes de
controle para fora da fronteira da aplicao, mantendo um ou mais ALIs ou
contendo apurao de frmulas, clculos ou dados derivados (IFPUG, 2000).
Exemplos (Vazquez, et al., 2003):

o Relatrio com totalizao de dados;
o Relatrios que tambm atualizam arquivos;
o Consultas contendo clculos ou gerao de dados derivados;
o Informaes em formato grfico;
o Telas de login com informao de senha, em que a senha
criptografada;

Uma vez identificado e classificado o processo elementar, o prximo passo
a determinao da sua complexidade, o que permite determinar sua contribuio em
pontos de funo. Para tal, o processo semelhante determinao de
complexidade dos arquivos lgicos, porm, para as funes do tipo transao,


4
Dados Derivados: Dados que requerem processamento que no seja apenas ou que seja adicional
recuperao simples e validao de informaes de arquivos lgicos (IFPUG, 2000).

23
conta-se a quantidade de arquivos referenciados e tipos de dados envolvidos no
processo elementar (IFPUG, 2000).
Tipos de dados so campos, reconhecidos pelo usurio, no repetidos, que
entram ou saem da aplicao e que sejam relevantes a execuo do processo
elementar (Vazquez, et al., 2003). Podem ser considerados tipos de dados o nome
do cliente em um relatrio de clientes, a ao que dispara a emisso do relatrio,
como por exemplo o clique no boto emitir, a mensagem exibida informando que o
relatrio foi impresso com sucesso, etc., ou seja, todas as informaes relevantes,
envolvidas no processo elementar. J para a contagem dos arquivos referenciados
so considerados os arquivos lgicos envolvidos no processo de alguma forma, seja
sendo consultados ou mantidos (IFPUG, 2000). Por exemplo, o arquivo lgico de
clientes um arquivo referenciado na emisso de relatrio de clientes.
Contados os processos elementares, classificados quanto ao seu tipo e
definidas as quantidades de tipos de dados e arquivos referenciados para cada
processo elementar identificado, o prximo passo sua classificao quanto a sua
complexidade. Tal classificao dada pelas tabelas 3 e 4 a seguir.

Tabela 3: Matriz de complexidade EE, adaptado de (IFPUG, 2000), pgina 165


Tabela 4: Matriz de complexidade SE / CE, adaptado de (IFPUG, 2000), pgina 166


AR TIPO DE REGISTRO / TD TIPO DE DADO


24
Determinar contagem de pontos de funo no ajustados
A contagem dos pontos de funo no ajustados se d pela converso da
quantidade de funes do tipo dados e transao classificadas quanto
complexidade, para o nmero de pontos de funo correspondente de acordo com
cada tipo de funo e complexidade (IFPUG, 2000). Tal transformao feita de
acordo com a tabela 5 a seguir.

Tabela 5: Matriz Tipo Funo - Contribuio em PF, adaptado de (IFPUG, 2000), pginas 69 e
167


Uma vez que se tenha a quantidade de funes de cada tipo e complexidade,
e se saiba a contribuio em pontos de funo de cada tipo de funo e
complexidade, pode-se chegar ao nmero de pontos de funo no ajustados da
aplicao contada. A tabela 6 a seguir ilustra um exemplo de uma contagem de
pontos de funo no ajustados de uma aplicao.


25
Tabela 6: Exemplo de contagem de pontos de funo no ajustados


Determinar o fator de ajuste
O fator de ajuste indica a funcionalidade geral fornecida pela aplicao ao
usurio, ou seja, caractersticas gerais da aplicao que refletem funes que
afetam a aplicao de maneira geral, no consideradas na contagem de funes do
tipo dado e funes do tipo transao. O objetivo com a aplicao do fator de ajuste
ajustar o nmero de pontos de funo por conta de caractersticas da aplicao
que impactem no esforo empregado, no medido na contagem dos pontos de
funo no ajustados (Vazquez, et al., 2003).
O processo de determinao do fator de ajuste consiste na pontuao de zero
a cinco quanto ao nvel de influncia em relao aplicao medida, para quatorze
caractersticas gerais do sistema [CGS] (IFPUG, 2000). Tais caractersticas so
listadas a seguir:
1. Comunicao de Dados
2. Processamento Distribudo
3. Performance
4. Configurao Altamente Utilizada
5. Volume de Transaes
6. Entrada de Dados On-Line
7. Eficincia do Usurio Final

26
8. Atualizao On-Line
9. Complexidade de Processamento
10. Reusabilidade
11. Facilidade de Instalao
12. Facilidade de Operao
13. Mltiplos Locais
14. Facilidade de Mudanas

Uma vez apurado o nvel de influncia de cada caracterstica geral do sistema, a
sua somatria reflete o nvel total de influncia. Este nvel multiplicado por 0,01 e
somado a 0,65, chegando-se ao fator de ajuste da aplicao, podendo este variar de
0,65 a 1,35, produzindo um ajuste de -35% ou +35% (IFPUG, 2000). A frmula que
contempla tal operao apresentada a seguir.

Valor Fator Ajuste = (Total Nvel Influncia * 0,01) + 0,65

Determinar o nmero de pontos de funo ajustados
Uma vez apurado o nmero de pontos de funo da aplicao contada, e o
fator de ajuste, pode-se chegar ao nmero de pontos de funo ajustados. Tal
nmero indica o tamanho funcional da aplicao em pontos de funo.
A apurao do nmero de pontos de funo ajustados varia de acordo com o
tipo da contagem realizada, pois cada tipo de contagem envolve operaes
diferenciadas. Enquanto uma contagem de aplicao base mede a aplicao j
implantada para o usurio, um projeto de desenvolvimento mede um projeto de um
sistema novo, onde podem estar envolvidas criaes de funes de converso de
dados, caso dados pr-existentes sejam aproveitados. J em um projeto de
melhoria, funes podem ser alteradas, inclusas e excludas. Considerando-se tais
diferenas entre os tipos de contagem, a seguir so apresentadas as frmulas para
apurao do nmero de pontos de funo ajustados para cada tipo de contagem.

Contagem do Tipo Aplicao Base: Na contagem dos pontos de funo de
uma aplicao j instalada para o usurio, medem-se apenas as
funcionalidades j disponveis. Para tal, a frmula para apurao a seguinte
(IFPUG, 2000):

27

PFA = PFNA * VFA, onde:
PFA = Pontos de funo da aplicao
PFNA = Pontos de funo no ajustados
VFA = Valor do fator de ajuste

Contagem do Tipo Projeto de Desenvolvimento: J para os projetos de
desenvolvimento, como mencionado anteriormente, funes de converso
podem fazer parte do projeto. Para chegar-se ao nmero de pontos de funo
ajustados para este tipo de projeto, a frmula utilizada (IFPUG, 2000):

PFD = (PFNA + PFFC) * VFA, onde:
PFD = Pontos de funo projeto de desenvolvimento
PFNA = Pontos de funo no ajustados
PFFC = Pontos de funo de funes de converso
VFA = Valor do fator de ajuste

Contagem do Tipo Projeto de Melhoria: Nos projetos de melhoria, alm das
eventuais funes de converso, novas funes podem ser adicionadas,
funes existentes podem ser modificadas ou excludas. Considerando-se tal
cenrio, para se apurar o nmero de pontos de funo ajustados para este
tipo de projeto, a formula utilizada a seguinte (IFPUG, 2000):

PFM = [(PFAD + PFAL + PFFC) * VFAN] + (PFEX * VFAA), onde:
PFM = Pontos de funo projeto de melhoria
PFAD = Pontos de funo de funes adicionadas
PFAL = Pontos de funo de funes alteradas
PFEX = Pontos de funo de funes excludas
PFFC = Pontos de funo de funes de converso
VFAN = Valor do fator de ajuste da aplicao aps melhoria
VFAA = Valor do fator de ajuste anterior ao projeto de melhoria


28
3. PROGRAMA DE MEDIO

3.1. INTRODUO

Para que se melhore uma organizao de TI, necessrio que se use dados
para determinar boas prticas, melhorar o modelo de processos, estabelecer
benchmarks, analisar tendncias, melhorar estimativas, estabelecendo um
conhecimento sobre a organizao que vai de gerentes a desenvolvedores (Russac,
2002). (Holmes, 2002) afirma que o uso do sentimento como subsidio para tomada
de deciso no uma forma eficaz. (Dekkers, 2002) afirma ainda que no se pode
gerenciar o que no se pode medir. Organizaes de software precisam de uma
forma de gerenciar a carga de trabalho e decidir o que fazer, quando fazer e onde
fazer.
Tais formas de gerenciamento e meios de tomadas de deciso podem ser
providos por um programa de medio, o qual pode ser definido como a aplicao
continua de tcnicas baseadas em medio para o processo de desenvolvimento de
software e seus produtos, visando sua melhoria, promovendo gerenciamento de
informao rpida e significante (Dekkers, 2002).
Contextualizada a medio de software no captulo anterior, este captulo vem
a apresentar conceitos de um programa de medio, seus objetivos, benefcios e
composio. Dentro dos objetivos deste trabalho, este captulo vem a explorar os
conceitos de programas de medio, visando prover base terica para o
estabelecimento de uma abordagem de programa de medio baseado em anlise
de pontos de funo.


3.2. OBJETIVOS DE UM PROGRAMA DE MEDIO

Um programa de medio tem como objetivo medir um processo de
desenvolvimento de software ou um determinado projeto de desenvolvimento de
software em termos de atributos quantitativos, possibilitando anlises com base em
dados concretos, permitindo a identificao de pontos falhos e boas prticas,

29
possibilitando a melhoria contnua do processo de desenvolvimento de software da
organizao que o aplica.
Tais melhorias no processo de desenvolvimento de software trazem como
conseqncia a melhoria nos produtos de software desenvolvidos pela organizao,
o que vem a aumentar a satisfao dos clientes, melhorar o ambiente de trabalho da
equipe de TI e a reduzir custos da organizao de TI como um todo.


3.3. BENEFCIOS DA IMPLEMENTAO DE UM PROGRAMA DE MEDIO

Uma vez que se tenha estabelecido um programa de medio, mtricas
podem ser usadas para identificao de boas prticas, melhora no processo de
desenvolvimento, estabelecimento uma linha de base para se determinar
tendncias, apoio em estimativas e planejamento de projetos, apoio no
gerenciamento de oramento, identificao da quantidade e a qualidade de um
produto distribudo, comparao da efetividade e eficincia do processo atual e
ferramentas, prover base para comparaes de mercado e permitir melhor
comunicao entre clientes e desenvolvedores (Russac, 2002). Alm disso, as
mtricas ajudam ainda a clarear os detalhes quanto definio do produto correto, a
execuo efetiva do projeto e a distribuio do produto no tempo correto (Dekkers,
2002). Com alguns indicadores de projetos, como produtividade, qualidade e
previsibilidade de estimativas, lideres podem tomar suas decises baseadas em
informaes slidas, ao invs de apenas sentimentos ou experincias pessoais
(Silveira, 2002).
Alm das possibilidades de melhoria no processo e de qualidade, iniciativas
do mercado atual vm a confirmar que a medio de software formal leva a um
melhor gerenciamento e acompanhamento do processo de desenvolvimento de
software. Entre tais iniciativas, esto o ISSO 9000 e iniciativas de melhoria de
processo definidas pelo Software Engineering Institutes Capability Maturity Model
[SEI CMM for Software] e o Capability Maturity Model Integration [CMMI] (Dekkers,
2002).



30
3.4. COMPOSIO DE UM PROGRAMA DE MEDIO

Um programa de medio pode variar, dentre outros fatores, de acordo com a
necessidade, oramento, tempo e quantidade de pessoas disponveis de cada
organizao. Independentemente de tais caractersticas, a formalizao de um
programa de medio deve conter um conjunto de padres e procedimentos para
coleta, armazenamento, anlise e reporte de dados. Alm disso, papis e
responsabilidades devem ser definidas para suportar a execuo do programa
(Silveira, 2002).
Tais definies por si s no so suficientes. Para ser bem sucedido, o
programa de medio deve ser baseado em objetivos e metas da organizao, as
quais vem a definir o que se espera melhorar e em que nvel, com a implementao
do programa de medio (Silveira, 2002; Dekkers, 2002; Russac, 2002).
Definidos os objetivos e metas, medies que resultem em informaes que os
suportem devem ser definidas. O passo seguinte a definio de como tais
medies sero realizadas e posteriormente como sero analisadas e reportadas. O
ltimo passo ento, a definio de como tal programa de medio ser
implementado na organizao, o que contempla a definio da forma de
implementao, recursos envolvidos, documentao e educao necessrias.
(Holmes, 2002) e (Dekkers, 2002) definem ainda que o programa de medio
deve ser implementado e melhorado de forma contnua. Uma vez que o primeiro
conjunto de medies tenha sido implementado com sucesso, os objetivos podem
ser revisados para determinar o prximo conjunto de medies para definir e
implementar (Holmes, 2002).
(Dekkers, 2002) ilustra tal raciocnio com a Figura 2 a seguir. Tal figura
representa resumidamente tambm, todos os passos do programa de medio
descritos anteriormente. No planejamento, identifica-se os objetivos da corporao
antes que o programa seja desenhado e implementado. Na implementao,
selecionam-se e desenham-se as mtricas apropriadas que atendam o planejado,
em conjunto com treinamento, iniciao e coleta de medies piloto especificas. No
passo de medio, a coleta de dados atual, anlise, auditoria e reporte de dados so
feitos com as medies alvo, e informaes gerenciais so compiladas e
apresentadas. No passo final, ao, identifica-se e constroem-se melhorias de
processos apropriadas, baseadas nas informaes do passo anterior. Do passo da

31
ao, volta-se ento para o passo do planejamento, garantindo-se que o programa
de medio ainda est dentro do escopo definido e coletando as mtricas corretas
(Dekkers, 2002).


Figura 2 - Processo cclico de um programa de medio, adaptado de (Dekkers, 2002), pgina
163

A seguir, cada passo do programa de medio citado discutido em detalhes.


3.4.1. Planejamento - objetivos e metas da organizao

Um programa de medio s tem sentido quanto est alinhado com objetivos e
metas da organizao de TI. Caso contrrio, o programa poder no sobreviver por
muito tempo, pois alm de depender muito do apoio de nveis gerenciais, caso no
traga nenhum benefcio para a organizao, esforos gastos com o programa no
tero sentido.
Uma das principais caractersticas de um programa de medio, que atravs
dele, informaes para tomada de decises podem ser obtidas. Alm disso, um
programa de medio pode mostrar a situao atual da organizao, possibilitando o
estabelecimento de metas. Tais objetivos e metas podem e devem ser estabelecidos
no planejamento do programa. (Holmes, 2002) confirma tal raciocnio quando afirma
que importante que sejam estabelecidos objetivos e metas para que se tenha
como produto do programa de medio exatamente o que se precisa. Caso no
definidos, o produto da medio poder ser intil.

32
Os objetivos podem variar de departamento para departamento e de nvel para
nvel, por isso, devem ser realizadas entrevistas com grupos que abranjam todos os
departamentos e nveis envolvidos. (Holmes, 2002) afirma que importante que
empregados de todos os nveis sejam entrevistados, fazendo com que se sintam
parte do processo de definio, facilitando-o como um todo. (Holmes, 2002) afirma
ainda que importante que o escopo de tais objetivos e metas seja bem definido, de
forma a no sobrecarregar pessoas. Visando a definio apropriada de tal escopo,
(Silveira, 2002) acredita que a implementao pode ter uma abordagem baseada em
fases.
Para a efetiva definio de tais objetivos, (Dekkers, 2002) afirma que
importante que se leve em considerao algumas caractersticas. Para (Dekkers,
2002) os objetivos devem ser: estratgicos, mensurveis, atingveis, realsticos e
focados. Uma vez definidos os objetivos e metas, eles devem ser consolidados e
priorizados (Holmes, 2002). A seguir, (Holmes, 2002) relaciona alguns exemplos de
objetivos de um programa de medio:

Melhorar a produtividade dos projetos;
Melhorar a qualidade dos projetos;
Reduzir o custo dos projetos;
Implementar inspees formais.


3.4.2. Definio de medies

Definidos os objetivos e metas, o passo seguinte a definio das medies
que sero necessrias para endere-los. Devem ser definidas medidas que
mostrem o status ou progresso de cada objetivo ou iniciativa em particular (Holmes,
2002).
Se um objetivo da organizao melhorar a produtividade da manuteno em
50%, algumas questes de mtricas devem ser Quais so nossos nveis atuais de
suporte?, Quantas oportunidades de melhorias existem?, Como ns saberemos
quando atingirmos 50% de melhora?. As mtricas requeridas para responder a tais
perguntas incluem as taxas de suporte do passado e atuais (por exemplo, horas
trabalhadas em manuteno por tamanho do produto), combinadas com

33
caractersticas das aplicaes (como o tipo e linguagem de desenvolvimento) e
nveis de qualidade e suporte (defeitos por tamanho do produto suportado). A seguir,
(Holmes, 2002) ilustra um exemplo de objetivos e medidas que os endeream.

Tabela 7 - Relao Objetivos X Medidas, adaptado de (Holmes, 2002), pgina 100


Na tabela 7, pode ser observado que dependendo das questes que a
organizao pretende responder, diferentes mtricas devem se requeridas para
prover respostas (Dekkers, 2002). Uma medida pode suportar mais de um objetivo,
permitindo que mais objetivos sejam endereados (Holmes, 2002).
Pode ser observado tambm, que a medio em pontos de funo uma
medida presente em todas as mtricas que endeream objetivos. O tamanho de
aplicaes de software em pontos de funo, em conjunto com outras medies,
produzem mtricas normalizadas por tamanho em pontos de funo as quais podem
ser calculadas e usadas para anlises comparativas (Dekkers, 2002). Como
exemplo, (Dekkers, 2002) afirma que para calcular taxas de entrega, o tamanho de
cada produto de desenvolvimento em pontos de funo pode ser dividido pelo
esforo de trabalho empregado em horas. Tal taxa de entrega pode ser utilizada
para anlises comparativas entre organizaes, proporcionando oportunidades de
melhoria no processo.
(Dekkers, 2002) cita ainda outras aplicabilidades do tamanho em pontos de
funo no endereamento de objetivos. Mtricas de produtividade e entrega podem

34
ser calculadas pela utilizao de pontos de funo com outras medidas. Mtricas de
qualidade (densidade de defeitos) e proporcionalidade de suporte (tamanho da
aplicao suportada, por pessoas envolvidas no trabalho de manuteno) so
tambm possveis utilizando-se pontos de funo e outras medidas correlatas
coletadas.
O quanto as mtricas apiam no endereamento dos objetivos definidos e
quantos objetivos uma mtrica pode enderear, deve ser um fator levado em
considerao na definio das mtricas utilizadas pela organizao. A seguir,
(Dekkers, 2002) relaciona medidas que podem ser utilizados no endereamento de
objetivos e o quanto tais medidas podem ser reaproveitadas.

Tabela 8 - Aplicabilidade de medidas para endereamento de objetivos, adaptado de (Dekkers,
2002), pgina 165




35
3.4.3. Definio de coletas de dados

Uma vez que as medidas que endeream os objetivos definidos estejam
estabelecidas, o passo seguinte a definio das coletas de dados que sero
necessrias para que se chegue a tais medidas. (Holmes, 2002) organiza a coleta
de dados em quatro passos:

1. Definio de dados necessrios;
2. Definio de pontos de coletas de dados;
3. Definio de responsabilidades pela coleta dos dados;
4. Meios de coletas de dados.

A seguir, cada passo citado discutido.

3.4.3.1. Definio de dados
Definem-se quais dados so necessrios para suportar as mtricas definidas.
Cada pedao de dado necessrio para uma medida precisa ser identificado e
definido em termos que todos possam entender. Por exemplo, se medio da
produtividade atravs de pontos de funo por hora selecionado, pontos de funo
e esforo gasto em horas sero dados requeridos. O esforo gasto precisar ainda
ser definido baseado nas atividades que devem ser consideradas na sua
composio, como por exemplo, definio de requisitos, design, codificao, etc.
(Holmes, 2002).

3.4.3.2. Definio de pontos de coletas de dados
Definem-se os pontos do processo de desenvolvimento em que os dados
definidos sero coletados. Para (Holmes, 2002), as atividades de coleta de dados
devem ser integradas ao ciclo de vida do processo de desenvolvimento, fazendo
com que a medio torne-se parte do processo e no seja percebido como algo
extra. (Holmes, 2002) afirma ainda que a coleta de dados deve ser feita apenas em
pontos necessrios para suportar as medies selecionadas. Por exemplo, se o
objetivo melhorar a produtividade do projeto e a medio escolhida para o
acompanhamento da produtividade pontos de funo por hora, significa que ser

36
necessrio fazer a contagem em pontos de funo durante determinadas fases do
projeto.

3.4.3.3. Definio de responsabilidades pela coleta dos dados
Uma vez definidos os dados e os pontos de coleta, definem-se os papis
responsveis pela coleta e divulgao dos dados. Tal tarefa consiste na identificao
dos papis exercidos durante o processo de desenvolvimento de software executado
pela organizao, definindo-se quais, dentre os papis identificados, sero
responsveis pela coleta e divulgao de cada parte de informao, de acordo com
suas atribuies, habilidades e funes.

3.4.3.4. Meios de coletas de dados
A definio de meios de coletas de dados implica na definio dos mtodos e
formas empregadas em cada tarefa de coleta. (Holmes, 2002) afirma que para tal,
importante que os dados j existentes da organizao sejam aproveitados.
Uma vez definidos os dados, pontos de coletas, responsabilidades e meios,
(Holmes, 2002) ilustra um exemplo da relao entre tais informaes.

Tabela 9 - Relao Objetivos, Medies, Dados e Responsabilidades, adaptado de (Holmes,
2002), pginas 103 e 104


37
3.4.4. Anlise e reporte de resultados

Definidos os objetivos, mtricas, dados, responsabilidades e pontos de coleta, o
passo seguinte a definio de como tal conjunto de informaes ser reportado,
para quem ser reportado e com que freqncia (Holmes, 2002). Os relatrios de
um programa de medio so itens chave em qualquer programa de medio.
atravs deles e das anlises feitas sobre eles que o programa de medio se
justifica, uma vez que os relatrios provero informaes necessrias quanto ao
andamento na busca pelos objetivos da organizao e as anlises provero insumos
para melhoria no processo de desenvolvimento como todo.
(Silveira, 2002) considera que os relatrios de um programa de medio podem
ser produzidos para prover informaes quanto a tendncias de produtividade,
defeitos e tempo de resposta ao mercado. (Silveira, 2002) afirma ainda que resumo
dos projetos, detalhes e relatrios de anlises podem ser gerados para cada projeto
finalizado.
Para a definio de como os dados sero reportados, (Holmes, 2002) afirma
que importante considerar que as vrias audincias identificadas podem ter
diferentes necessidades ou foco, podendo ser necessrios relatrios
individualizados. As audincias dos relatrios podem incluir gerentes de projetos,
gerentes da rea de desenvolvimento, time de medio, times de projetos e outros.
(Holmes, 2002) afirma que o pblico alvo dos relatrios devem ser envolvidos para
validao dos resultados e verificao quanto ao atendimento de expectativas e
necessidades, sendo que especificamente o time de projeto deve receber anlises e
relatrios do projeto em que participaram, podendo utilizar os dados para identificar
possibilidades de melhorias em seus prximos projetos.
Compilar e reportar os dados coletados por si s no suficiente. (Holmes,
2002), (Silveira, 2002) e (Russac, 2002) afirmam que anlises sobre os resultados
devem ser feitas, permitindo a identificao de pontos positivos e falhos nos
projetos, objetivando a promoo dos pontos positivos e a extino dos pontos
falhos para nos prximos projetos. (Russac, 2002 p. 154) afirma que o ponto mais
critico de todo o processo de mtricas a anlise dos dados e ainda questiona:
Para que serve uma coleo de dados se no so analisados quanto aos aspectos
bons e ruins do projeto?.

38
Para (Silveira, 2002), o processo de anlise de resultados deve incluir a anlise
de indicadores de performance do projeto, comparando seus resultados contra
projetos passados, a performance geral da organizao, corporao e industria ou
benchmarks de mercado. (Russac, 2002) afirma ainda que a utilizao de um banco
de dados de mtricas torna possvel tal comparao. A figura 3 a seguir ilustra um
exemplo de relatrio comparativo entre resultados do projeto e os resultados da
organizao e do mercado.

Projeto XYZ

Os resultados apresentados so fictcios.
Figura 3 - Exemplo de relatrio comparativo de medies, adaptado de (Russac, 2002), pgina
155

(Silveira, 2002) afirma que baseado em tal anlise, reas de melhoria no
processo devem ser identificadas, recomendando aes para projetos futuros.
Complementando tal raciocnio, (Holmes, 2002) afirma que os dados no devem ser
reportados sem contextos ou explicaes. Para (Holmes, 2002) necessrio que
anlises sejam feitas sobre os dados e que seja assegurado que as informaes
sero interpretadas e usadas de maneira correta pela audincia. (Holmes, 2002) cita
ainda trs informaes que no podem faltar nos relatrios de um programa de
medio:

39
Observaes: O que foi identificado. Exemplo: Defeitos entregues por
pontos de funo diminuram no ltimo perodo para algumas reas;
Concluses: O que a anlise est dizendo. Exemplo: A diminuio nos
defeitos entregues nestas reas pode ser atribudo a implementao das
inspees formais durante o ciclo de vida;
Recomendaes: Como proceder diante de tais observaes e concluses.
Exemplo: Inspees formais devem ser consideradas para toda a
organizao.

Para que se chegue a concluses quanto ao projeto executado, (Russac, 2002)
afirma que importante que se faam reunies com o time do projeto, apresentando
resultados parciais, apontando reas falhas e questionando quanto aos fatores que
possam ter contribudo para o resultado. Se por exemplo a taxa de produtividade foi
muito abaixo de projetos similares, (Russac, 2002) afirma que importante que se
olhe as razes possveis, como por exemplo, a utilizao de uma nova ferramenta
ou tecnologia sem o devido preparo. Para (Russac, 2002) to importante quanto
identificao de reas falhas, a identificao das reas positivas, identificando-se
as razes do sucesso, possibilitando que o time continue com suas melhores
prticas.
Aps ter analisado os dados, ter se reunido com o time do projeto e ter
identificado pontos positivos e falhos, bem como seus motivos, (Russac, 2002)
define que um relatrio deve ser divulgado no s ao time do projeto, como tambm
a todos os times de projetos e gerentes, possibilitando que todos aprendam com as
lies aprendidas.
Alm dos relatrios de projetos, relatrios organizacionais tambm podem ser
elaborados, comparando-se diferentes mtricas da organizao atravs do tempo.
Grficos para cada mtrica, representando o perodo atual, podem demonstrar a
gerentes e executivos tendncias organizacionais, alertando-os para reas que
requerem melhorias futuras ou reconhecimento (Russac, 2002). A seguir
apresentado um exemplo de tal relatrio.

40

Figura 4 - Exemplo de relatrio de mtricas organizacional, adaptado de (Russac, 2002), pgina
156


3.4.5. Implementao do programa de medio
Definidos os objetivos e metas, dados, coletas, responsabilidades, formas de
anlise e reporte de resultados, preciso que se planeje a implementao do
programa. Tal implementao pode variar quanto forma, tamanho, quantidade de
recursos envolvidos, escopo, fases, tipo e tamanho da organizao, dentre outros
fatores. Para (Holmes, 2002), a implementao do programa de medio requer
planejamento e desenvolvimento, bem como tomada de decises, sendo que a
abordagem seguida pode depender do nvel de recursos e da estrutura da
organizao. Tais variantes so discutidas a seguir.

3.4.5.1. Forma de implementao
(Holmes, 2002) define que as possveis formas de implementao de um
programa de medio podem variar da seguinte forma:

Em toda a organizao de uma s vez;
Em projetos selecionados ou aplicaes em algumas reas ou departamentos;
Em reas ou departamentos selecionados em fases, enquanto o processo
incorporado na organizao.

41
Para (Dekkers, 2002), iniciar um programa de medio em toda a organizao
de uma s vez no a melhor escolha, pois, corre-se o risco de se chegar a
mtricas desalinhadas, alm do risco da introduo de um novo conceito de forma
abrupta. (Dekkers, 2002 p. 166) afirma ainda que a melhor forma de se iniciar um
programa de medio atravs de um projeto piloto e argumenta: Pequeno e tmido
sempre melhor do que audacioso e catico para a implementao de novos
conceitos.

3.4.5.2. Formas de utilizao de recursos
(Holmes, 2002) afirma que dado o esforo necessrio de recursos para a
realizao das atividades do programa de medio, preciso que se defina quais
recursos sero envolvidos, considerando-se o tempo disponvel de cada recurso e
seu expertise no assunto. Diante de tal necessidade, (Holmes, 2002) aponta trs
possibilidades quando da definio da forma de utilizao de recursos em um
programa de medio:
Utilizar um recurso de cada departamento;
Utilizar recursos externos;
Estabelecer um grupo centralizado de mtricas.

(Russac, 2002) afirma ainda que mais de uma possibilidade pode ser
combinada, principalmente em fases iniciais do programa, onde o conhecimento de
medio e expertise no assunto so necessrios. Para (Holmes, 2002), consultorias
ou especialistas no assunto podem ser contratados inicialmente para apoiar no
programa de medio, transferindo aos poucos seu conhecimento para a equipe
interna, at que se consiga estabelecer um time centralizado de medio.

3.4.5.3. Documentao do programa e mtodos
Definida a forma de implementao e os recursos envolvidos, (Holmes, 2002)
afirma que a documentao do processo de medio e seus mtodos deve ser feita.
Para tal, (Holmes, 2002) define que deve ser documentado como o programa de
medio ser integrado ao ciclo de desenvolvimento atual, as atividades especificas
de medio, quando e como tais atividades so executadas, formulrios,
ferramentas e formatos de relatrios, desta forma garantindo que o programa ser
implementado consistentemente, sendo claro para todos os envolvidos.

42

3.5. FATORES CRTICOS DE SUCESSO EM UM PROGRAMA DE MEDIO

Programas de medio podem falhar, podem no produzir o resultado esperado
ou mesmo podem gerar sentimentos indesejveis nas equipes de projetos, levando
a conseqncias incalculveis caso no sejam implementados adequadamente ou
caso detalhes importantes no sejam levados em considerao.
Ao definir um programa de medio muito importante que sejam levadas em
considerao boas prticas e experincias vividas por pessoas com experincia no
assunto. A seguir, uma lista de fatores considerados como crticos para os autores
considerados nesta pesquisa so listados.

Preciso e consistncia de dados: Dados so suscetveis a forma como so
alimentados. Caso os dados no sejam precisos na alimentao, os resultados
tambm no sero precisos. muito importante que as informaes utilizadas
pelo programa de medio sejam consistentes. O lanamento de horas
trabalhadas em projetos um dos principais pontos de ateno. Horas extras,
horas gastas em manuteno de aplicativos diversos, horas gastas em reunies
fora do projeto, etc. devem ser computadas apropriadamente, para no
influenciar no resultado do projeto (Silveira, 2002; Dekkers, 2002; Russac, 2002);
Integrao ao dia-a-dia: Programas de medio bem sucedidos so aqueles
que se tornam parte do processo dirio. Para ser bem sucedida, a medio no
pode ser vista como um trabalho adicional, ou como tarefas sem valor agregado
no ciclo de desenvolvimento (Dekkers, 2002). Lderes seniores e gerentes de
projetos precisam acreditar no programa de mtricas, fazendo todos os esforos
possveis para garantir que o processo de mtricas est sendo seguido e as
pessoas esto tendo tempo suficiente para coletar dados das mtricas (Silveira,
2002);
Compromisso com a implementao: Organizaes que implementam
medio como algo a ser feito no tero sucesso. preciso que se tenha
compromisso com a mudana. O sucesso do programa ser determinado pela
fundio da gerncia continua (Dekkers, 2002);
Alinhamento com os objetivos da organizao: O programa de mtricas deve
apoiar na melhoria do processo e deve estar alinhado com os objetivos da

43
organizao. importante que sejam analisados cenrios antes e depois do
programa de medio, estabelecendo uma correlao entre as iniciativas de
melhorias do processo e dos resultados atuais, verificando como os resultados
da melhoria do processo esto impactando os objetivos da organizao (Silveira,
2002). Alm disso, quando o programa de medio est alinhado com os
objetivos e iniciativas da organizao, o processo torna-se parte de algo que j
acontece no dia-a-dia, sendo significante para todos os colaboradores (Holmes,
2002);
Pensar grande, porm, comear pequeno: importante que sejam
selecionadas poucas mtricas para implementao inicial. Um planejamento
adequado, usando uma abordagem baseada em fases, evitando implementaes
big bang, evitar que o escopo seja to vasto que no possa mostrar resultado
em tempo hbil ou que seja impossvel de ser atingido (Silveira, 2002; Russac,
2002);
Utilizao de padres de mercado: Mtricas padres de mercado (como a
anlise de pontos de funo) facilitam comparaes de resultados com outras
organizaes, uma vez que so difundidas e utilizadas por diversas organizaes
(Russac, 2002);
Considerar o tempo como maturidade: Um programa de mtricas precisa de
tempo, projetos e observaes para que seja considerado maduro. No uma
boa prtica tirar concluses baseadas em nmeros limitados de observaes
(Silveira, 2002);
Utilizao de resultados de forma adequada: Os resultados devem ser
utilizados nica e exclusivamente para a melhoria do processo de
desenvolvimento de sistemas como um todo, tomada de decises e definio de
objetivos. Colaboradores no devem ser julgados (Silveira, 2002; Russac, 2002);
Consultoria e treinamento externo: importante que se tenha profissionais
certificados pelo IFPUG (certified function point specialist CFPS) na equipe de
medio ou que se obtenha consultoria de tais profissionais. Transferncia de
conhecimento uma chave, podendo ajudar a evitar imprevistos (Dekkers, 2002).
Neste mesmo sentido (Russac, 2002) afirma ainda que importante que todos os
envolvidos no programa de medio tenham treinamento adequado.


44

3.6. RECURSOS HUMANOS: TREINAMENTO E MUDANA CULTURAL

Como na maioria dos processos de mudana ou implantao de novos conceitos,
os recursos humanos tm papel fundamental e devem ser considerados a todo
momento. No que diz respeito implantao de um programa de medio, algumas
questes relacionadas ao papel dos recursos humanos devem ser levadas em
considerao.
Primeiramente, como discutido anteriormente, recursos humanos devem ser
definidos para a execuo de atividades de medio. Dada tal definio,
necessidades de treinamento para tais recursos podem surgir. Uma vez definidos os
recursos e o programa de medio, mudanas culturais devero surgir e preciso
que se esteja preparado para enfrentar as conseqncias que as mudanas
culturais podem trazer. A seguir, tais questes so discutidas em detalhes.

3.6.1. Necessidade de treinamento

(Holmes, 2002) afirma que educao apropriada necessria para todos os
envolvidos no programa de medio, dependendo das suas atividades dentro do
processo estabelecido. (Holmes, 2002) exemplifica tipos de treinamento apropriados
para os vrios tipos de funes dentro de um programa de medio atravs da
tabela 10 apresentada a seguir.

Tabela 10 - Exemplos de treinamentos para diferentes audincias, adaptado de (Holmes, 2002),
pgina 109



45

3.6.2. Mudana cultural

A implantao de um programa de medio em uma organizao pode trazer
diversos benefcios, como visto at aqui. Porm, preciso que se esteja atento a
questes que muitas vezes passam desapercebidas, e que podem causar danos
incalculveis. o caso da mudana cultural, a qual dependendo da forma como for
tratada, pode levar ao descontentamento da equipe e em ltima instncia a perda de
profissionais.
(Dekkers, 2002) define que a medio, como qualquer outra iniciativa corporativa,
envolve mudana cultural, transformando uma organizao que gerencia por
sentimento em outra que gerencia baseada em fatos. As pessoas passam a ver seu
trabalho, sua carreira e at mesmo a si prprios de forma diferente quando passam
a conviver em um contexto onde se pratica a medio. Dado tal cenrio, (Dekkers,
2002) afirma ainda que no h dvidas que quando a medio de software
introduzida, a resistncia a mudanas das pessoas aflorada. Sendo algo inevitvel
e muito comum, necessrio que a gerncia esteja consciente e preparada para tais
resistncias. (Dekkers, 2002) relaciona os principais tipos de manifestao de
resistncia implantao do programa de medio:

Questionamento quanto consistncia das informaes;
Testes do comprometimento e apoio gerencial ao programa de medio;
Compartilhamento de percepes, rumores e mitos sobre a iniciativa.

Para reduzir o impacto da mudana cultural, (Dekkers, 2002) recomenda que
sistemas de recompensa e punio sejam realinhados para promover e
recompensar a coleta de dados precisa, ao invs de punir resultados insatisfatrios.
(Dekkers, 2002) alerta ainda que a medio s ser bem sucedida, se as pessoas
no forem punidas com os dados que elas prprias reportam.




46

4. ABORDAGEM PARA UM PROGRAMA DE MEDIO
BASEADO EM ANLISE DE PONTOS DE FUNO

Os captulos anteriores introduziram e contextualizaram mtricas, medies e
programas de medies e apresentaram referncias e embasamentos tericos. O
objetivo deste captulo e apresentar uma abordagem simplificada para um programa
de medio, usando-se como mtrica base, a medio em pontos de funo.
A anlise de pontos de funo foi selecionada como medio base, pois, como
visto anteriormente, tal medio amplamente utilizada pelo mercado, o que permite
a realizao de comparaes entre as medies realizadas pela organizao e as
realizadas por outras organizaes. Alm disso, tal medio proporciona uma
medida padro de sistemas, podendo esta ser relacionada a diversas outras
medidas / mtricas, chegando-se a fatores e taxas. Tais fatores e taxas so
amplamente utilizados em programas de medio.
Como foi descrito no decorrer deste estudo, existem diversas formas de
implementao de um programa de medio, podendo tal implementao variar de
acordo com cada organizao, do processo de desenvolvimento de software
utilizado (ou pela no utilizao), pela quantidade de recursos disponveis, pela
forma adotada para implantao, de acordo com os objetivos e metas da
organizao, dentre outras variantes (para mais detalhes quanto s formas de
variao, referenciar-se ao tpico 3.4 deste trabalho). Dada tamanha variao, a
abordagem apresentada por este estudo no se prende a caractersticas
especficas, ficando a customizao para cada tipo de ambiente a cargo de estudos
posteriores.
Este captulo apresenta as premissas para implementao do programa de
medio definido, e em seguida o programa de medio em si. A abordagem
apresentada totalmente embasada pelo estudo realizado e apresentado no
decorrer deste trabalho. A estrutura da definio para o programa utilizado neste
estudo segue os passos definidos por (Holmes, 2002) (discutido no captulo 3).



47
4.1. PREMISSAS PARA O PROGRAMA DE MEDIO ABORDADO

Para que se implemente o programa de medio abordado por este estudo,
algumas premissas so assumidas. Tais premissas so listadas a seguir.

4.1.1. Processo de desenvolvimento de software
A abordagem de programa de medio apresentada no est associada a
nenhum processo de desenvolvimento de software especfico, desta forma sendo
passvel de aplicao em organizaes que no implementem nenhum processo at
organizaes que implementem processos rigorosos e formais.
Entretanto, conforme visto no decorrer deste estudo, um programa de medio,
quando implementado por uma organizao, passa a fazer parte do seu contexto de
desenvolvimento de software, sendo que novas atividades so atribudas a
profissionais e mtricas so apuradas com base em produtos especficos gerados
por este contexto de desenvolvimento. Por conta de tal integrao, este estudo
assume que determinados itens estejam presentes no contexto de desenvolvimento
de software da organizao. Tais itens so especificados nos tpicos seguintes.

4.1.2. Atividades / Disciplinas consideradas
Este trabalho pressupe que o contexto de desenvolvimento de sistemas esteja
dividido em disciplinas
5
onde atividades especficas sejam realizadas por papis
6



5
Disciplinas: (Kroll, et al., 2003) definem que disciplinas so containers utilizados para organizar
atividades de um processo. Em outras palavras, disciplinas so agrupamentos de determinados
papis e atividades em reas de conhecimento ou especialidade. Por exemplo, a disciplina de
Requisitos compreende o papel do analista de sistemas para a realizao da atividade de anlise de
requisitos.
6
Papel: Um papel define o comportamento e as responsabilidades de um individuo ou um grupo de
indivduos que trabalham em um time. O comportamento expresso em termos de atividades que o
papel executa e cada papel associado a um conjunto de atividades. Papeis no representam
indivduos nem ttulos de funes. Um individuo hora pode trabalhar desempenhando atividades de
um papel, hora desempenhando atividades de outro. So exemplos de papis: Analista de Sistemas,
Arquiteto, Analista de Testes, Desenvolvedor, etc. (Kroll, et al., 2003).

48
especficos. Tal suposio se d, pois, para que se defina um programa de medio,
necessrio que se saiba quais atividades so realizadas pela organizao, uma

vez que tais atividades sero levadas em considerao em diversas medies.
Tais atividades ou mesmo a presena ou no das disciplinas podem variar de
organizao para organizao e principalmente pelo processo de desenvolvimento
de software utilizado ou pela sua no utilizao. As disciplinas tambm podem variar
entre organizaes quanto nomenclatura e quanto s atividades que
compreendem. Dada tamanha variao, a abordagem deste trabalho no impe a
realizao de atividades especificas, nem a produo de artefatos
7
especficos,
entretanto, considera apenas que as disciplinas estejam presentes no processo de
desenvolvimento da organizao.
A seguir so listadas e descritas as disciplinas e as atividades que
compreendem, limitando-se as que so consideradas por esta abordagem de
programa de medio:

Gerncia de Projetos: Gerenciamento, planejamento e acompanhamento de
projetos.

Requisitos: Definio do que o sistema deve prover, definio das fronteiras /
delimitaes do sistema, definio do escopo do projeto.

Analise e Design: Definio arquitetural, traduo dos requisitos em projeto
tcnico.

Implementao: Transformao do projeto tcnico em codificao, gerando-
se como resultado um produto de software executvel.



7
Artefatos: So pedaos de informaes produzidos, modificados ou usados por um processo. So
produtos tangveis de um projeto. Exemplos: Modelo de casos de uso, diagramas de classes,
documentos de definio arquitetural, etc. (Kroll, et al., 2003).

49
Testes: Averiguao e avaliao da qualidade do produto desenvolvido,
atravs da busca e documentao de falhas e da verificao se produto est
de acordo com os requisitos estabelecidos.

4.1.3. Recursos humanos e papis considerados
Este estudo pressupe que a organizao disponha de recursos humanos
capacitados para execuo de determinados papis dentro de um contexto de
desenvolvimento de sistemas. No h restrio quanto quantidade de recursos
para a execuo de tais papeis, ficando a cargo da organizao sua definio.
Caso a organizao no disponha de recursos capacitados para a execuo de
todos os papeis definidos, pode ser considerada a opo de contratao de
consultorias especializadas, de novos recursos capacitados, ou de capacitao dos
recursos disponveis. Tais opes so discutidas em detalhes neste trabalho no
captulo 3.
A seguir, os papeis necessrios para a implementao desta abordagem de
programa de medio so listados e detalhados. Cada papel pode variar quanto s
atribuies de organizao para organizao, por isto, esta relao considera
apenas as atribuies necessrias para a implementao do programa de medio.

Gerente de Projetos / Lder de Projetos: Profissional responsvel pelo
acompanhamento dos projetos, e por garantir que as horas despedidas nos
projetos sejam contabilizadas adequadamente, bem como os custos.

Analista de Sistemas / Analista de Requisitos: Profissional responsvel
pela definio dos requisitos sistmicos e por sua medio em pontos de
funo.

Desenvolvedor: Profissional responsvel pelo desenvolvimento dos sistemas
definidos.

Analista de Testes: Profissional responsvel pela elaborao e execuo de
planos de testes e pela contabilizao de defeitos encontrados em projetos.


50

4.1.4. Ferramentas mandatrias e desejveis
A abordagem deste trabalho no impe a utilizao de ferramentas especficas
ou especialistas, porm, dada a necessidade de determinados controles, de
aplicao de tcnicas especficas e de manipulao de grandes volumes de dados
conforme o programa de medio executado, algumas ferramentas podem ajudar
na produtividade dos trabalhos executados e outras se fazem necessrias. A seguir,
tais ferramentas so listadas e detalhadas.

4.1.4.1. Mandatrias
Repositrio de mtricas: Ferramenta responsvel pelo armazenamento das
diversas mtricas coletadas e analisadas no programa de medio.
Recomendvel a utilizao de ferramentas especialistas ou ferramentas
customizadas pela organizao, porm, planilhas eletrnicas podem ser
consideradas quando da impossibilidade das opes anteriores.

Repositrio de horas trabalhadas (tambm conhecido como time-
tracking): Ferramenta responsvel por prover mecanismo para lanamento
e armazenamento de horas trabalhadas de profissionais em projetos.
Recomendvel a utilizao de ferramentas especialistas ou ferramentas
customizadas pela organizao, porm, planilhas eletrnicas podem ser
consideradas quando da impossibilidade das opes anteriores.

Ferramentas para medies: Ferramentas responsveis pelo apoio nas
tarefas de medies e de aplicaes de mtricas e tcnicas especficas
Planilhas eletrnicas ou ferramentas especialistas podem ser consideradas.

4.1.4.2. Desejveis
Gerador de grficos: Ferramenta responsvel por anlises sobre dados,
medies e mtricas e gerao de grficos customizados sobre tais dados.
Podem ser consideradas a utilizao de planilhas eletrnicas, ferramentas
customizadas pela organizao ou ferramentas especialistas.


51
Ferramentas estatsticas: Ferramentas que faam anlises comparativas
sobre bases histricas de mtricas e produzam relatrios estatsticos.
aconselhvel a utilizao de ferramentas customizadas pela organizao ou
ferramentas especialistas.

Ferramentas de medio integradas: Ferramenta que integre lanamento
de horas, cronograma e repositrio de mtricas. aconselhvel a utilizao
de ferramentas customizadas pela organizao ou ferramentas especialistas.

Estabelecidas as premissas, a seguir o programa de medio apresentado.


4.2. DEFINIO DE OBJETIVOS E METAS

Conforme visto nos captulos anteriores, os objetivos e metas de um programa
de medio variam de organizao para organizao, sendo que estas devem ser
estabelecidas principalmente pelo nvel executivo da organizao e deve ter
colaborao de todos os indivduos atingidos pelo programa de medio.
Para a abordagem definida por este estudo, so definidos quatro objetivos e
metas, os quais foram selecionados por serem objetivos comuns dentre diversas
organizaes de software. Tais objetivos so listados e detalhados a seguir.

4.2.1. Melhorar a produtividade dos projetos
Objetiva-se que o programa de medio mostre a produtividade empregada em
cada projeto, e que com tal, seja parte do programa de medio a realizao de
anlises para identificao dos fatores que levam a melhores ou piores
produtividades, tendo como resultado, a relao e aplicao de aes que levem a
melhoria da produtividade em todos os projetos da organizao.
Tal objetivo atendido tem como benefcio a entrega de produtos em tempo
menor, reduzindo-se por conseqncia custos e permitindo que a organizao
atenda a um nmero maior de demandas de software.


52
4.2.2. Melhorar a qualidade dos projetos
Objetiva-se que o programa de medio mostre a qualidade dos produtos de
software, e que com tal, seja parte do programa de medio a realizao de anlises
para identificao dos fatores que levam a melhores ou piores qualidades, tendo
como resultado a relao e aplicao de aes que levem a melhora na qualidade
de todos os produtos desenvolvidos pela organizao.
Tal objetivo atendido tem como benefcio a entrega de produtos com menor
nmero de defeitos e mais aderentes s necessidades do cliente, diminuindo o
nmero de retrabalhos e aumentando a satisfao do cliente.

4.2.3. Reduzir o nmero de alteraes de escopo
Alteraes de escopo so geradas pela identificao de novos requisitos no
contemplados na definio anterior, ou alterao de requisitos / regras de negcio
definidas. Ambos os casos exigem trabalho adicional ou mesmo retrabalho por parte
da equipe de desenvolvimento de sistemas, o que pode significar aumento no custo,
diminuio da qualidade ou alterao de prazos.
Objetiva-se com o programa de medio que alteraes de escopo sejam
monitoradas e que, atravs de analises, identifiquem-se as principais causas,
visando sua reduo ou extino.

4.2.4. Reduzir custos dos projetos
Objetiva-se que o programa de medio mostre o custo despedido pela
organizao para produzir unidades de software. Tal medio dever ser comparada
com medies realizadas em projetos semelhantes, procurando-se identificar o quo
custoso est ou no o processo de desenvolvimento de software implementado pela
organizao.
Uma vez identificado que o custo est acima do padro, dever ser parte do
programa de medio a realizao de anlises para identificao das principais
causas, visando sua reduo ou extino. Tal objetivo atendido, traz como benefcio
a utilizao eficiente de recursos da organizao, permitindo-se que custos
excedentes sejam revertidos para investimentos na rea como um todo.



53
4.3. DEFINIO DE MEDIES E MTRICAS

Definidos os objetivos do programa de medio, devem ser definidas as
medies e mtricas necessrias que permitam saber o andamento atual de cada
objetivo. Uma vez que se saiba o quo cada projeto est dentro ou no dos objetivos
definidos, anlises podem ser realizadas a fim de se reverter situaes ou de se
manter melhores prticas.
A seguir, as medies e mtricas necessrias para cada objetivo definido no
item anterior so relacionadas.

4.3.1. Medies e mtricas necessrias para o objetivo Melhorar a
produtividade dos projetos
Para que se melhore a produtividade dos projetos, o primeiro passo saber o
esforo empregado sobre determinada unidade de medida de software padro. Para
tal, a mtrica dada pela seguinte formula:

Taxa de produtividade = Esforo gasto no projeto em horas / Total de pontos
de funo ao trmino do projeto

4.3.2. Medies e mtricas necessrias para o objetivo Melhorar a qualidade
dos projetos
Par que se melhore a qualidade, o mesmo raciocnio empregado na melhora de
produtividade vlido. Deve-se saber a qualidade atual. Esta, pode ser dada pela
quantidade total de defeitos encontrados dividido pelo tamanho do software em
pontos de funo ao trmino do projeto. A seguinte frmula representa esta mtrica:

Taxa de defeitos = Quantidade total de defeitos encontrados / Total de pontos
de funo ao trmino do projeto

4.3.3. Medies e mtricas necessrias para o objetivo Reduzir o nmero de
alteraes de escopo
Para que se reduza o nmero de alteraes de escopo, preciso saber a taxa
de crescimento funcional do software ao longo da sua construo. Para tal, a
quantidade de pontos de funo provenientes de alteraes de escopo deve ser

54
obtida e considerada sobre a quantidade de pontos de funo iniciais. Entende-se
como pontos de funo provenientes de alterao de escopo, apenas os pontos de
funo includos, alterados ou excludos por conta de alteraes de escopo.
Funcionalidades no afetadas pela alterao de escopo no so considerados nesta
conta. Tal mtrica ento dada pela seguinte frmula:

Taxa de mudana de escopo = Total de pontos de funo de alteraes de
escopo / Total de pontos de funo iniciais

4.3.4. Medies necessrias para o objetivo Reduzir custos dos projetos
Para que se saiba o quanto se tem gasto efetivamente com a construo de um
software, necessrio que se saiba o custo por unidade de medida de software
produzido. Tal mtrica dada pela seguinte frmula:

Eficincia do Custo = Custo total do projeto / Total de pontos de funo ao
trmino do projeto

4.3.5. Medies necessrias para o programa de medio
Definidas as mtricas para o endereamento cada objetivo, medies devero
ser realizadas a fim de se obter os dados necessrios para compor cada mtrica. A
seguir tais medies so listadas. Determinadas medies podem ser utilizadas para
enderear mais de uma mtrica ou objetivo.
Esforo gasto no projeto em horas
Quantidade total de defeitos encontrados
Custo total do projeto
Total de pontos de funo iniciais
Total de pontos de funo de alteraes de escopo
Total de pontos de funo ao trmino do projeto

A tabela 11 a seguir resume as mtricas necessrias para cada objetivo definido.


55
Tabela 11 - Relao de mtricas X objetivos com o programa de medio

Definidas as mtricas e medies necessrias, o passo seguinte a definio
dos momentos em que tais medies sero realizadas e quais papis sero
responsveis por sua realizao.


4.4. DADOS, MEIOS E PONTOS DE COLETA E RESPONSABILIDADES

Conforme visto no decorrer deste estudo, a definio de coleta de dados
compreende a definio de pontos chave do programa de medio, onde se definem
quais so os dados necessrios para compor as mtricas definidas e como, quando
e por quem tais dados so coletados.
No tpico anterior foram definidas as mtricas necessrias para enderear os
objetivos esperados com o programa de medio, onde foi visto que tais mtricas
exigem que dados especficos sejam combinados. Tais dados devem ser definidos
individualmente, a fim de se saber do que so compostos, como e em que pontos
sero apurados e posteriormente por quem.
A seguir, cada mtrica definida para o programa de medio descrita em
detalhes e definida quanto aos dados envolvidos, meios e pontos de coleta e
responsabilidades pela coleta. Como produto final definida uma tabela de relao
objetivo, medio, dados e responsveis de todo o programa de medio.

4.4.1. Esforo gasto no projeto em horas
Compreende a quantidade de horas gastas no projeto pela equipe participante,
em determinadas atividades. Como este dado ser relacionado posteriormente com
a quantidade de pontos de funo do projeto para se apurar a produtividade, deve-

56
se ser definido um escopo quanto ao que se deseja saber se foi ou no produtivo em
comparao a outros projetos. Um escopo muito extenso na definio de esforo em
horas, como por exemplo, abrangendo todo o projeto, tende a deixar a taxa de
produtividade pouco objetiva, uma vez que compreende muitas atividades realizadas
por diversos papis, tornando assim pouco assertiva a identificao das possveis
causas de eventuais discrepncias.

4.4.1.1. Dados
Dadas tais definies, estabelecida a apurao do esforo gasto no projeto em
horas como:

Esforo gasto no projeto em horas =
Quantidade de horas gastas em atividades de anlise de requisitos +
Quantidade de horas gastas em atividades de anlise e projeto +
Quantidade de horas gastas em atividades de implementao

Horas gastas nas demais atividades do projeto como gerncia de projetos,
testes, analise de negcios, distribuio, etc., no devem ser contabilizadas neste
item.

4.4.1.2. Meio de coleta
Para a coleta dos dados identificados para esta medio, necessrio que cada
profissional que desempenhe os papis que compe a medio, lance as horas em
que trabalhou no projeto desempenhando tal papel no repositrio de horas
trabalhadas definido pela organizao (time-tracking). Tal ferramenta considerada
como mandatria para esta abordagem de programa de medio e discutida no
item 4.1.3 deste captulo.

4.4.1.3. Pontos de coleta
As horas devero ser lanadas ao trmino das atividades ou caso a atividade
ultrapasse uma semana de durao, as horas trabalhadas devero ser lanadas no
trmino da semana.


57
4.4.1.4. Responsabilidade de coleta
Analistas de sistemas e desenvolvedores so responsveis pelo lanamento de
horas semanal. O gerente de projetos responsvel por garantir o correto
lanamento das horas de tais profissionais.

4.4.1.5. Relao sumarizada
A seguir a relao sumarizada das definies para apurao do esforo gasto no
projeto em horas apresentada.
Tabela 12 - Apurao do esforo gasto no projeto em horas - sumarizao


4.4.2. Custo total do projeto
Compreende o custo total despedindo com profissionais durante a sua atuao
no projeto. Ao contrrio do esforo para a apurao da produtividade, onde
limitado o escopo da medio, no custo total do projeto deve ser considerado o
custo do projeto inteiro.

4.4.2.1. Dados
Dadas tais definies, estabelecida a apurao do custo total do projeto como:

Custo total do projeto =
Somatria (Horas gastas por profissional X Valor/hora profissional)

58

4.4.2.2. Meio de coleta
Todos os profissionais envolvidos no projeto devero ter as horas em que
trabalharam no projeto devidamente contabilizadas no repositrio de horas
trabalhadas definido pela organizao (time-tracking). Tal ferramenta considerada
como mandatria para esta abordagem de programa de medio e discutida no
item 4.1.3 deste captulo.
O valor/hora por profissional tambm dever estar disponvel no repositrio de
horas trabalhadas, para posterior apurao da relao entre horas trabalhadas e
valor/hora do profissional.

4.4.2.3. Pontos de coleta
Os pontos de coleta das horas trabalhadas segue a mesma regra definida pelo
item 4.4.1.3, ou seja, ao trmino de cada atividade ou caso a atividade ultrapasse
uma semana, ao trmino da semana. O valor/hora de todos os profissionais
envolvidos no projeto devero ser lanados / atualizados antes do inicio de cada
projeto.

4.4.2.4. Responsabilidade de coleta
Todos os envolvidos no projeto so responsveis pelo lanamento das suas
horas trabalhadas, sendo o Gerente de Projetos o responsvel pela exatido das
informaes e por garantir que todos os envolvidos tiveram suas horas
contabilizadas. Gerentes de projetos tambm so responsveis por manter
atualizado o valor/hora dos profissionais.

4.4.2.5. Relao sumarizada
A seguir a relao sumarizada das definies para apurao do custo total do
projeto apresentada.


59
Tabela 13 - Apurao do custo total do projeto - sumarizao


4.4.3. Total de pontos de funo iniciais
Compreende a medio do tamanho do projeto em pontos de funo, logo aps
o fechamento do escopo de requisitos do projeto. Para tal, todos os requisitos do
projeto devem ser considerados e sobre eles dever ser aplicada a tcnica de
anlise de pontos de funo, conforme descrito no capitulo 2 deste estudo.

4.4.3.1. Dados
Dadas tais definies, estabelecida a apurao do total de pontos de funo
iniciais como:

Total de pontos de funo inicias =
Medio de todo o projeto em pontos de funo aps o primeiro fechamento do
escopo

4.4.3.2. Meio de coleta
Com base nos requisitos definidos para a aplicao, a tcnica de anlise de
pontos de funo deve ser aplicada, atravs do uso de uma planilha de clculo ou
ferramenta especialista, conforme discutido no item 4.1.3 deste captulo. O valor
apurado deve ser lanado na ferramenta repositrio de mtricas, tambm discutida
no item 4.1.3 deste captulo.


60
4.4.3.3. Pontos de coleta
A medio inicial em pontos de funo deve ser realizada logo aps o
fechamento do escopo inicial do projeto, sendo este devidamente oficializado e
entendido pelas partes envolvidas no projeto.

4.4.3.4. Responsabilidade de coleta
Uma vez oficializado o fechamento do escopo, uma demanda para medio em
pontos de funo deve ser gerada pelo Gerente de Projetos. O Analista de Sistemas
ento o responsvel pela atendimento de tal demanda.

4.4.3.5. Relao sumarizada
A seguir a relao sumarizada das definies para apurao do total de pontos
de funo iniciais apresentada.
Tabela 14 Tamanho do projeto inicial em pontos de funo - sumarizao


4.4.4. Total de pontos de funo de alteraes de escopo
Compreende a medio dos requisitos alterados, includos e excludos a cada
eventual mudana de escopo que ocorra no projeto. Para tal, apenas tais requisitos
do projeto devem ser considerados aps a mudana do escopo, e sobre eles
aplicada a tcnica de anlise de pontos de funo, conforme descrito no captulo 2
deste estudo.

4.4.4.1. Dados
Dadas tais definies, estabelecida a apurao do total de pontos de funo de
alterao de escopo como:


61
Total de pontos de funo de alteraes de escopo =
Total de pontos de funo de requisitos includos + Total de pontos de funo de
requisitos alterados + total de pontos de funo de requisitos excludos

4.4.4.2. Meio de coleta
Com base nos requisitos alterados, includos ou excludos com a alterao de
escopo, a tcnica de anlise de pontos de funo deve ser aplicada, atravs do uso
de uma planilha de clculo ou ferramenta especialista, conforme discutido no item
4.1.3 deste captulo. O valor apurado deve ser lanado na ferramenta repositrio de
mtricas, tambm discutida no item 4.1.3 deste captulo.

4.4.4.3. Pontos de coleta
A medio em pontos de funo deve ser realizada logo aps o fechamento do
escopo do projeto, aps mudana de escopo, sendo esta devidamente oficializada e
entendida pelas partes envolvidas no projeto.

4.4.4.4. Responsabilidade de coleta
Uma vez oficializado o fechamento do escopo, aps mudana de escopo, uma
nova demanda para medio em pontos de funo deve ser gerada pelo Gerente de
Projetos. O Analista de Sistemas ento o responsvel pelo atendimento de tal
demanda.

4.4.4.5. Relao sumarizada
A seguir a relao sumarizada das definies para apurao do total de pontos
de funo de alterao de escopo apresentada.


62
Tabela 15 - Total de pontos de funo de alteraes de escopo - sumarizao


4.4.5. Total de pontos de funo ao trmino do projeto
Compreende a medio de todo o projeto em pontos de funo, aps a sua
concluso. Para tal, todo o projeto entregue deve ser considerado, e sobre ele
aplicada a tcnica de anlise de pontos de funo, conforme descrito no captulo 2
deste estudo.

4.4.5.1. Dados
Dadas tais definies, estabelecida a apurao do total de pontos de funo ao
trmino do projeto como:

Total de pontos de funo ao trmino do projeto =
Medio de todo o projeto em pontos de funo aps sua concluso

4.4.5.2. Meio de coleta
Com base no projeto entregue a tcnica de anlise de pontos de funo deve ser
aplicada, atravs do uso de uma planilha de clculo ou ferramenta especialista,
conforme discutido no item 4.1.3 deste captulo. O valor apurado deve ser lanado
na ferramenta repositrio de mtricas, tambm discutida no item 4.1.3 deste
captulo.


63
4.4.5.3. Pontos de coleta
A medio em pontos de funo deve ser realizada logo aps a disponibilizao
final do projeto para rea cliente, sendo esta devidamente oficializada e entendida
pelas partes envolvidas no projeto.

4.4.5.4. Responsabilidade de coleta
Uma vez oficializada a entrega do projeto para a rea cliente, uma nova
demanda para medio em pontos de funo deve ser gerada pelo Gerente de
Projetos. O Analista de Sistemas ento o responsvel pelo atendimento de tal
demanda.

4.4.5.5. Relao sumarizada
A seguir a relao sumarizada das definies para apurao to total de pontos de
funo ao trmino do projeto apresentada.

Tabela 16 - Total de pontos de funo ao trmino do projeto - sumarizao


4.4.6. Quantidade total de defeitos encontrados
Compreende a contabilizao da quantidade de defeitos encontrados durante a
realizao de testes de validao sobre os produtos de software gerados. Defeitos
encontrados em testes de verificao, caso realizados pela organizao, no so
contabilizados nesta medio. A quantidade de defeitos encontrados deve ser
contabilizada a cada iterao de testes realizada, caso acontea mais do que uma,
chegando-se ao total de defeitos encontrados em toda a realizao dos testes.


64
4.4.6.1. Dados
Dadas tais definies, estabelecida a apurao da quantidade de defeitos
encontrados como:

Quantidade total de defeitos encontrados =
Quantidade total de defeitos de validao encontrados no produto de software.

4.4.6.2. Meio de coleta
A quantidade de defeitos encontrados no produto de software testado dever ser
lanada na ferramenta repositrio de mtricas, discutida no item 4.1.3 deste captulo.

4.4.6.3. Pontos de coleta
Logo aps a concluso de cada iterao de realizao de testes. Entende-se
como iterao de testes a concluso de uma etapa inteira de testes, sendo o motivo
da concluso a impossibilidade de continuar com os testes por algum defeito crtico
ou a realizao efetiva de todos os testes planejados. Iteraes de testes em
produtos de software podem ocorrer por diversas vezes at que o produto esteja
estvel. Sempre que concluda uma iterao, a quantidade de defeitos dever ser
contabilizada.

4.4.6.4. Responsabilidade de coleta
O analista de testes responsvel pela realizao dos testes o responsvel pela
contabilizao da quantidade de defeitos encontrados em seus testes.

4.4.6.5. Relao sumarizada
A seguir a relao sumarizada das definies para apurao do custo total do
projeto apresentada.


65
Tabela 17 Quantidade total de defeitos encontrados - sumarizao


4.4.7. Relao objetivo, medio, dados e responsveis
Definidos os objetivos no tpico 4.2, as medies para enderear tais objetivos
no tpico 4.3, os dados necessrios para apurar tais medies e os meios de coleta
e responsabilidades pelas coletas de tais dados no tpico 4.4, este tpico traz a
relao sumarizada de todas as definies. A matriz a seguir apresenta a relao
medida, dado, meio, ponto e responsabilidade pela coleta.


66
Tabela 18 Definio do Programa de Medio - Relao Medidas, Dados, Meios, Pontos e
Responsabilidade pela coleta


A seguir, apresentada a matriz de relao objetivos / metas, com as
mtricas que as endeream e suas composies, definidas pela relao entre
medies apresentadas na matriz anterior.

Tabela 19 Definio do Programa de Medio Relao Objetivos, Mtricas e suas
Composies


67
4.5. ANLISE E REPORTE DE RESULTADOS

Definidas as medies necessrias e seus responsveis, este tpico aborda a
definio de como tais dados, aps coletados, sero analisados e reportados.
Conforme visto nos captulos anteriores, esta definio abrange a especificao do
formato, audincia, freqncia de entrega dos relatrios, bem como os responsveis
por anlises sobre os resultados.
Esta abordagem de programa de medio define a apurao de trs relatrios,
os quais so os meios definidos para reporte dos resultados quanto s medies
definidas, fornecendo desde dados detalhados de cada projeto at sumarizados de
toda a organizao de software, provendo assim dados necessrios para anlises
quanto ao resultado de projetos individualizados e dados necessrios para anlises
quanto ao resultado da organizao como um todo.
Tais relatrios so detalhados a seguir e em seguida apresentada uma
sumarizao geral das definies quanto ao reporte e analise de resultados.

4.5.1. Relatrio detalhado por projeto

4.5.1.1. Objetivo
Prover informaes detalhadas de cada projeto, permitindo anlises minuciosas
sobre cada resultado. Apresenta o resumo de todo o ciclo de vida do projeto, em
termos de medies, mtricas e apuraes.
Permite que o time envolvido no projeto, gerncia da organizao, gerentes de
projetos e demais times da organizao visualizem resultados gerais do projeto,
possibilitando o reconhecimento de bons resultados e anlise e tomada de aes
quando de resultados ruins.

4.5.1.2. Audincia
Todo o time envolvido no projeto, todos os gerentes de projetos, gerncia da
organizao e demais times de desenvolvimento de sistemas da organizao.

4.5.1.3. Formato
O relatrio detalhado por projeto composto pela identificao do projeto, onde
constam dados de identificao e classificao do projeto, pelos dados do ciclo de

68
vida do projeto, onde constam as medies realizadas, dados relacionados ao custo
do projeto, envolvidos nas atividades contabilizadas para apurao da taxa de
produtividade e suas respectivas contabilizaes de horas trabalhadas no projeto,
histrico de iteraes de testes e quantidade de defeitos encontrados. O relatrio
tambm composto pelos resultados do projeto, onde constam apuraes de
mtrica definida para o programa de medio e a comparao com mdias de
resultados da organizao em formato grfico. Por fim, o relatrio apresenta a
anlise dos resultados. A Figura 5 a seguir ilustra o formato descrito. Os dados
apresentados na ilustrao so meramente ilustrativos.



69

Figura 5 - Definio Programa Medio - Formato Relatrio Detalhado por Projeto

70
4.5.1.4. Responsvel pela apurao, anlise e divulgao
O Analista de Sistemas o responsvel pela apurao e divulgao. Analista de
Sistemas em conjunto com Gerente de Projetos e time envolvido so responsveis
pela anlise de resultados, sendo o Analista de Sistemas o responsvel pela anlise
final embasada pela anlise conjunta.

4.5.1.5. Freqncia de entrega
Aps a publicao em produo de cada projeto.

4.5.1.6. Sumarizao
A seguir, apresentada a sumarizao das definies para o relatrio detalhado
por projeto.

Tabela 20 - Sumarizao Relatrio Detalhado por Projeto


4.5.2. Relatrio comparativo por projeto

4.5.2.1. Objetivo
Prover resultados sumarizados do projeto, em comparao com mdias de
projetos semelhantes. Permite que seja avaliado se os resultados do projeto esto
melhores do que a mdia, se esto dentro dos padres da organizao ou se esto
abaixo da mdia da organizao.
Alm de apontar os resultados do projeto, este relatrio mostra o quanto o
projeto colaborou ou no com os objetivos e metas da organizao, mostrando
resultados do projeto em associao com os objetivos definidos com o programa de
medio.

71
4.5.2.2. Audincia
Todo o time envolvido no projeto, todos os gerentes de projetos, gerncia da
organizao e demais times de desenvolvimento de sistemas da organizao.

4.5.2.3. Formato
O relatrio comparativo por projeto composto pela identificao do projeto,
onde constam dados de identificao e classificao do projeto, pelos resultados do
projeto, onde constam os resultados em relao aos objetivos definidos para o
programa de medio e a mdia dos resultados de projetos semelhantes, e por fim,
pela anlise dos resultados. A Figura 6 a seguir ilustra o formato descrito. Os dados
apresentados na ilustrao so meramente ilustrativos.


Figura 6 - Definio Programa Medio - Formato Relatrio Comparativo por Projeto

72
4.5.2.4. Responsvel pela apurao, anlise e divulgao
O Analista de Sistemas o responsvel pela apurao e divulgao. Analista de
Sistemas em conjunto com Gerente de Projetos e time envolvido so responsveis
pela anlise de resultados, sendo o Analista de Sistemas o responsvel pela anlise
final embasada pela anlise conjunta.

4.5.2.5. Freqncia de entrega
Aps a publicao em produo de cada projeto.

4.5.2.6. Sumarizao
A seguir, apresentada a sumarizao das definies para o relatrio
comparativo por projeto.

Tabela 21 - Sumarizao Relatrio Comparativo por Projeto


4.5.3. Relatrio evolucional da organizao

4.5.3.1. Objetivo
Prover informaes histricas da organizao quanto ao seu desempenho.
Mostra tendncias (onde a organizao estava e para onde est indo), resultado de
tomada de aes (melhorias, aplicao de prticas de sucesso identificadas em
anlises sobre resultados ao longo da utilizao do programa de medio, utilizao
de novas ferramentas, aplicao de treinamento, etc.) ao longo do tempo e posio
da organizao em relao aos objetivos e metas definidas inicialmente.
Permite a tomada de aes, uma vez identificadas tendncias negativas, a fim
de revert-las. Possibilita a anlise quanto a boa ou m sucesso de aes tomadas
e a tomada de aes corretivas tempo. Permite que se identifique se a

73
organizao est ou no no caminho certo rumo a atingir objetivos e metas
definidas.

4.5.3.2. Audincia
Toda a organizao de software.

4.5.3.3. Formato
O relatrio evolucional da organizao composto pelo perodo de anlise
considerado no relatrio, pelos resultados de cada indicador considerado no
programa de medio ao longo dos meses analisados e, por fim, pela anlise dos
resultados. A figura 7 a seguir ilustra o formato descrito. Os dados apresentados na
ilustrao so meramente ilustrativos.


Figura 7 - Definio Programa Medio - Formato Relatrio Evolucional da Organizao

74
4.5.3.4. Responsvel pela apurao, anlise e divulgao
O Analista de Sistemas o responsvel pela apurao e divulgao. Analista de
Sistemas em conjunto com Gerentes de Projetos e Gerente da Organizao so
responsveis pela anlise dos resultados.

4.5.3.5. Freqncia de entrega
Bimestral, porm, podendo ser apurado a qualquer momento quando da
necessidade.

4.5.3.6. Sumarizao
A seguir, apresentada a sumarizao das definies para o relatrio detalhado
por projeto.

Tabela 22 - Sumarizao Relatrio Evolucional da Organizao



4.5.4. Sumarizao das Definies quanto a Anlise e Reporte de Resultados
Detalhados todos os relatrios quanto a sua audincia, responsveis e
freqncia de entrega, a seguir a sumarizao geral apresentada.


75
Tabela 23 - Definio Programa Medio - Anlise e Reporte de Resultados



4.6. INTEGRAO DO PROGRAMA DE MEDIO EM UM CONTEXTO DE
DESENVOLVIMENTO DE SISTEMAS

Nos tpicos anteriores deste captulo foram definidos os objetivos, dados,
mtricas, relatrios e responsabilidades do programa de medio, concluindo assim
a sua definio. Uma vez definido o programa, este tpico aborda a sua integrao
em um contexto de desenvolvimento de sistemas, resumindo e ilustrando (atravs
de diagramas de atividades da UML 2.0) o programa de medio definido.
Como descrito anteriormente neste estudo, a abordagem de programa de
medio apresentada no restrita para implementao em um processo de
desenvolvimento de sistemas em especfico, sendo passvel de aplicao a qualquer
organizao de software que se encaixe nas premissas definidas por esta
abordagem. Tais premissas consideram que determinados papis, atividades e
ferramentas estejam presentes na organizao de software, o que define um
contexto de desenvolvimento de sistemas.
Para ilustrar a integrao do programa de medio proposto em um contexto de
desenvolvimento de sistemas, a Figura 8 a seguir apresenta todas as macro-

76
atividades provenientes do programa de medio definidas ao longo da sua
especificao feita nos tpicos anteriores, em conjunto com as demais macro-
atividades realizadas pela organizao ao longo de um fluxo de construo de
software. O objetivo apresentar, em linhas gerais, como o programa de medio
abordado se integra em tal fluxo j realizado pela organizao.



Por no fazer parte do fluxo de desenvolvimento de sistemas da organizao, a
apurao bimestral do relatrio evolucional da organizao, o qual definido no
tpico 4.5.3, ilustrado separadamente do fluxo principal, atravs da figura 9 a
seguir. A ilustrao apresenta o fluxo das macro-atividades envolvidas no processo
de gerao do relatrio e as responsabilidades por cada atividade.

Figura 8 - Definio do Programa de Medio - Integrao do programa em um contexto
de desenvolvimento de sistemas

77

Figura 9 - Definio do Programa de Medio - Fluxo para gerao bimestral do relatrio
evolucional da organizao

78
5. CONCLUSES E TRABALHOS FUTUROS

5.1. CONCLUSO

Este estudo abordou o cenrio da crescente necessidade por solues
sistmicas com cada vez mais qualidade e em menor tempo e custo possvel,
fatores estes atualmente decisivos para o apoio estratgico de organizaes ou
mesmo sua sobrevivncia. Visando suprir tal necessidade, objetivou-se com este
trabalho, o estudo de medies, mtricas e programas de medio, a fim de se
verificar se poderiam apoiar no fornecimento de informaes quantitativas e
consistentes sobre a organizao de software e seus produtos, a fim de possibilitar a
avaliao de resultados e tomada de decises baseada em fatos, visando o
aperfeioamento continuo do processo de desenvolvimento de sistemas e seus
produtos, possibilitando assim, suprir as necessidades descritas.


5.2. RELAO COM OS OBJETIVOS INICIAIS

Visando o estabelecimento de um programa de medio baseado em anlise de
pontos de funo, o estudo dividiu-se em trs etapas. A primeira etapa consistiu no
estudo de mtricas e medies e dentre elas a anlise de pontos de funo. A
segunda etapa consistiu no estudo de programas de medio e a terceira na
proposio de um programa de medio, atingindo assim os objetivos iniciais
enunciados deste trabalho.


5.3. VALIDADE DA HIPTESE

Pde-se concluir com este estudo que a anlise de pontos de funo uma
medio extremamente adequada para composio em programas de medio,
pois, independente de tecnologia, processo ou metodologia, o que possibilitou que
fosse amplamente utilizada pelo mercado. Tal fato permite que anlises
comparativas de resultados entre organizaes sejam feitas, sendo este um fator

79
muito relevante para um programa de medio, uma vez que possibilita saber a
posio da organizao em relao a organizaes semelhantes. Alm disso,
verificou-se que a anlise de pontos de funo normatizada por um rgo
internacional, o IFPUG, o qual responsvel por garantir a continuidade e evoluo
da tcnica.
Verificou-se tambm com este estudo, que programas de medio podem ajudar
organizaes a coletar e analisar dados sobre si prprias, permitindo saber o quo
efetivo o seu desenvolvimento de sistemas. Tais analises no s permitem que um
gerenciamento e tomada de decises baseada em fatos seja implantado na
organizao, como tambm permitem que pontos falhos sejam identificados e
corrigidos e que pontos positivos sejam mantidos e promovidos para toda a
organizao. Conclu-se que tais atividades possibilitam a organizao melhorar
seus processos e produtos, desenvolvendo-os cada vez com mais qualidade e
produtividade, o que por conseqncia permite a utilizao de recursos com maior
eficincia. Tais caractersticas vm a confirmar a hiptese enunciada deste estudo.


5.4. TRABALHOS FUTUROS

A seguir, so listadas possveis evolues deste trabalho.

5.4.1. Estudo de caso da implementao do programa de medio proposto
Este trabalho limitou-se a propor um programa de medio. Uma possvel
evoluo a implementao efetiva do programa proposto, a anlise e
documentao de resultados obtidos e, se necessrio, a sua adequao.

5.4.2. Estudo de ferramentas disponveis para apoio no programa de medio
proposto
O trabalho tambm limitou-se a descrever os tipos de ferramentas necessrias,
no apresentando ferramentas especficas, ou mesmo realizando estudos sobre
elas. Outra possvel evoluo a anlise de ferramentas de medies, mtricas e
repositrios de mtricas existentes no mercado ou mesmo a proposio de uma
ferramenta customizada para apoio em programas de medio.


80
5.4.3. Customizao de um processo de desenvolvimento de sistemas com o
programa de medio proposto
O estudo no se restringiu a um processo de desenvolvimento de sistemas
especfico. Uma possvel evoluo a customizao de um determinado processo
de desenvolvimento de sistemas, como o RUP, MSF, XP, Scrum, etc., ou mesmo um
processo j customizado para uma organizao, integrando o programa de medio
proposto.



81
REFERNCIAS

Aguiar, Mauricio. BFPUG. [Online] [Citado em: 2008 de 04 de 21.]
www.bfpug.com.br/artigos/UCP/Aguiar-Pontos de Funcao ou Pontos por Caso de
Uso.pdf.
Andrade, Edimia Leonor Pereira de. 2004. Pontos de Caso de Uso e Pontos de
Funo na gesto de estimativa de tamanho de projetos de software orientados a
objetos. Universidade Catlica de Brasilia. Braslia : s.n., 2004. Master Thesis.
Budag, Mnica. 2007. Desenvolvimento de um Processo Baseado em Mtrica para
Estimar Esforo em um Projeto de Implantao de Software. Centro de Cincias
Exatas e Naturais, Universidade Regional de Blumenau. Blumenau : s.n., 2007.
Dekkers, Carol A. 2002. How and When Can Functional Size Fit with a
Measurement Program? [A. do livro] International Function Point Users Group. IT
measurement: pratical advice from the experts. Indianapolis : Pearson Education,
Inc., 2002, pp. 161-169.
Demarco, Tom. 1989. Controle de Projetos de Software. Rio de Janeiro : Campus,
1989.
Gates, Bill. 1999. A empresa na velocidade do pensamento: com um sistema
nervoso digital. So Paulo : Companhia de letras, 1999. p. 11.
Gill, Antonio Carlos. 2007. Como elaborar projetos de pesquisa. 4. So Paulo :
Atlas, 2007.
Holmes, Lori. 2002. Measurement Program Implementation Approaches. [A. do
livro] International Function Point Users Group. IT measurement: pratical advice from
the experts. Indianapolis : Pearson Education, Inc., 2002, pp. 97-110.
IEEE. 1993. Standard Glossary of Software Engineering Terminology. s.l. : IEEE,
1993.

82
IFPUG. 2000. Function Point Counting Practices Manual. Princeton Junction :
International Function Point Users Group, 2000.
Jones, Capers. 2002. The Expanding Roles of Function Point Metrics. [A. do livro]
International Function Point Users Group. IT measurement: pratical advice from the
experts. Indianapolis : Pearson Education, Inc., 2002, pp. 3-30.
Kroll, Per e Kruchten, Philippe. 2003. The Rational Unified Process Made Easy: a
practioner's guide to the RUP. Boston : Pearson Education, 2003.
Minkiewicz, Arlene F. 2002. Benchmarking. [A. do livro] International Function Point
Users Group. IT Measurement: pratical advice from the experts. Indianapolis :
Pearson Education Inc., 2002, pp. 113-124.
Pressman, Roger S. 2006. Engenharia de Software. 6. So Paulo : Mc Graw-Hill,
2006.
Putnam, Lawrence H. e Ware, Myers. 2002. The Core of Sofware Planning. [A. do
livro] International Function Point Users Group. IT Measurement: pratical advice from
the experts. Indianapolis : Pearson Education Inc, 2002, pp. 53-66.
Russac, Janet. 2002. Cheaper, Better, Faster: A Measurement Programa That
Works. [A. do livro] International Function Point Users Group. IT measurement:
pratical advice from the experts. Indianapolis : Pearson Education, Inc., 2002, pp.
147-157.
Schuster, Carlos. 2006. Mtricas de sofware com nfase em anlise de pontos de
funo apresentando estudo de caso na empresa Data Sul S.A. Sociedade
Educacional de Santa Catarina, Instituto Superior Tupy. Joinville : s.n., 2006.
Silveira, Mrio Luiz Barroso da. 2002. EDS Brazil Metrics Program: Measuring for
Improvement. [A. do livro] International Function Point Users Group. IT
measurement: pratical advice from the experts. Indianapolis : Pearson Education,
Inc., 2002, pp. 85-96.

83
Vazquez, Carlos Eduardo, Simes, Siqueira Guilherme e Albert, Machado
Renato. 2003. Anlise de Pontos de funo: medio, estimativas e gerenciamento
de projetos de software. 6. So Paulo : rica, 2003.

Anda mungkin juga menyukai