1 A Produtividade dos Projetos de Desenvolvimento

Download 1 A Produtividade dos Projetos de Desenvolvimento

Post on 09-Jan-2017

213 views

Category:

Documents

1 download

TRANSCRIPT

  • 1

    Gerenciamento de Projetos

    A Produtividade dos Projetos de Desenvolvimentopor Mauricio Aguiar

    A produtividade um dos conceitos mais importantes nos projetos de desenvolvimento desistemas e, infelizmente, talvez um dos menos compreendidos. fundamental nadeterminao do custo de um projeto, servindo normalmente como base paracomparaes e estimativas. Muitas organizaes utilizam a produtividade como critrio nacontratao de servios de desenvolvimento e manuteno de sistemas, seja emlicitaes pblicas, ou em Solicitaes de Proposta (RFP Request for Proposal).

    O Que a Produtividade

    O conceito geral de produtividade normalmente envolve a diviso do resultado do trabalhopela unidade de tempo. Por exemplo, a produtividade de um pintor de paredes poderia sermedida como a quantidade de metros quadrados de parede pintados (o produto dotrabalho) por hora trabalhada (a unidade de tempo). Em um outro exemplo, aprodutividade de um programador de computador poderia ser medida como a quantidadede linhas de cdigo produzidas por ms. O conceito de produtividade no desenvolvimentode sistemas motivo de grandes discusses, havendo mais de uma definio possvelpara o termo "produtividade". Para comear, no h unanimidade quanto medida detamanho de software a ser utilizada. Embora os Pontos de Funo (PF) do InternationalFunction Point Users Group (IFPUG) sejam, na prtica, o padro para a medio dotamanho dos sistemas, outras medidas tm sido propostas e utilizadas, tais como aslinhas de cdigo (SLOC Source Lines of Code) e diversas variaes dos pontos defuno. Em termos de Brasil, podemos limitar nossa discusso aos PF, que tm sido amedida utilizada por praticamente todas as empresas brasileiras que efetuam algum tipode medio sistemtica de tamanho de software. Ainda assim, a produtividade poder serdefinida, pelo menos, de duas maneiras diferentes. Alguns praticantes definem aprodutividade como o resultado da diviso da quantidade de PF de um projeto pelonmero de pessoas-ms alocadas ao mesmo. Isso resulta em uma medida cuja unidade PF/Pessoa-Ms. O problema com esta medida que ser necessrio saber a quantidadede horas de trabalho correspondentes a um ms, para que possam ser feitascomparaes. Algumas empresas definem um ms como 130 horas trabalhadas, outrasutilizam 152 horas, 160 horas, etc. Alguns especialistas definem a produtividade como oresultado da diviso do total de horas gastas em um projeto pelo tamanho do mesmo emPF. Neste caso, o resultado apresentado em Horas por Ponto de Funo (H/PF). Estaforma tem sido a mais utilizada no mercado brasileiro. Ao definir a produtividade em H/PF, fundamental deixar clara a forma de medio das quantidades envolvidas no clculo. Nocaso do tamanho do software, o Manual de Prticas de Contagem (Counting PracticesManual) do IFPUG fornece regras que permitem padronizar os procedimentos demedio. Por outro lado, no existe um padro universalmente aceito para a medio dotempo gasto em um projeto, sendo recomendado utilizar a orientao produzida pelo SEI(Software Engineering Institute) ver referncia [2] adiante. Podemos ento definir aprodutividade de um projeto de desenvolvimento de sistemas como o resultado da divisodo tamanho do mesmo em PF, medido segundo as regras do IFPUG, pela quantidade dehoras despendidas no mesmo, medidas conforme a orientao do SEI.

  • 2

    Para Que Serve

    Nos projetos, a produtividade utilizada na determinao do custo e preo, na avaliaoda performance, na seleo de fornecedores e como base para estimativas em geral. Seuma organizao conhecer sua produtividade em um dado contexto, poder estimar, deforma simplificada, o custo de um projeto da seguinte forma: (1) Estimar a quantidade dehoras, multiplicando o tamanho estimado para o projeto em PF pela produtividade emH/PF. O resultado ser o esforo estimado para o projeto, medido em horas. (2)Multiplicar a quantidade de horas obtida no passo anterior pelo custo mdio da hora,considerando a equipe. O resultado ser a estimativa de custo do projeto. O preo poderser obtido acrescentando-se ao custo a margem de lucro pretendida pela organizao.Como a produtividade varia bastante, freqentemente a mesma calculadaseparadamente para cada plataforma computacional, ou conforme a principal linguagemde programao do projeto.

    Como Se Calcula

    O clculo da produtividade depende da determinao do tamanho do projeto e dorespectivo esforo (quantidade de horas gasta). Idealmente, a medio dessas variveisocorrer ao longo de todo o projeto, abrangendo todas as suas fases. Para a obteno dotamanho do projeto em PF indispensvel a participao de pelo menos um especialistacertificado pelo IFPUG (CFPS Certified Function Point Specialist). Isso garantir oconhecimento e a uniformidade na aplicao das regras de contagem. importantelembrar que o tamanho de um projeto em PF no coincidir, necessariamente, com otamanho do software entregue ao final do mesmo. Devero ser medidas e contabilizadas,ainda, todas as alteraes solicitadas e realizadas (mudanas no escopo) durante oprojeto. Algumas organizaes contabilizam, para efeito de pagamento, somentealteraes solicitadas aps o incio da fase de construo do software. Todavia, no hum padro universalmente aceito quanto a este ponto, que deve ser objeto de negociaoentre cliente e fornecedor. Tambm indispensvel ter instalada uma slida sistemticade gerenciamento do escopo, garantindo que todas as solicitaes de mudana sejamanalisadas, medidas, autorizadas, executadas, aceitas e contabilizadas. Para a obtenodo tempo gasto pela equipe do projeto, necessrio um sistema de contabilizao detempo (time tracking). conveniente contabilizar o tempo pelo menos ao nvel de fase doprojeto, se no for possvel maior grau de detalhe. Isso importante para que aorganizao possa conhecer a quantidade de horas por PF gasta a cada fase dametodologia de desenvolvimento, o que permitir determinar o percentual de esforo porfase. O percentual de esforo correspondente a cada fase do projeto indispensvelquando so terceirizadas apenas algumas atividades do ciclo de vida, como o caso nacontratao de Fbricas de Software. Por exemplo, uma organizao poder terceirizarapenas a fase de Construo de sua metodologia de desenvolvimento de sistemas.Nesse sentido, uma RFP ser colocada no mercado, resultando em diversas propostas,oferecidas pela Fbricas de Software interessadas. Se a organizao cliente conhecersua produtividade e tiver determinado o percentual do esforo correspondente fase deConstruo, poder comparar as propostas recebidas com o seu desempenho real eescolher a que melhor corresponda aos seus objetivos, em termos de custo/benefcio.

    Valores Tpicos

  • 3

    A produtividade dos projetos de desenvolvimento tem sido objeto de vrios estudos.Algumas organizaes mantm bancos de dados contendo milhares de projetos, incluindodados sobre produtividade. Uma dessas organizaes o ISBSG (International SoftwareBenchmarking Standards Group), organizao sem fins lucrativos sediada na Austrlia. OISBSG mantm um banco de dados com cerca de 1.200 projetos, que pode ser adquiridopor um valor relativamente baixo (US$600). Uma anlise dos dados do ISBSG ir revelarque os valores da produtividade sofrem grande variao, o que torna muito arriscada autilizao de valores mdios em oramentos e contratos. A ttulo de ilustrao,analisamos 30 projetos do banco de dados do ISBSG (Verso 7), cuja principal linguagemde programao foi VB (Visual Basic). A produtividade desses projetos variou desdemenos de 1 H/PF at aproximadamente 65 H/PF, situando-se a mediana um pouco acimade 9 H/PF. Diante desses dados, qual valor dever ser utilizado para estimar o custo deum projeto em uma organizao especfica? Como saber se a organizao est operandoem uma faixa prxima a 1, 10, 30 ou 50 H/PF? Para responder a esta pergunta, indispensvel que sejam utilizados dados histricos locais, obtidos do processo demedio existente. Caso a organizao no possua um processo de medio instalado,dever ser realizado um estudo especfico. O estudo ir determinar em que faixa deprodutividade a organizao est operando, para um dado contexto ou plataforma. Otrabalho de medio dever ser efetuado sobre projetos j concludos, realizados em umambiente semelhante quele que se deseja conhecer. Os projetos devero ser medidosem PF, com o apoio de pelo menos um especialista certificado e experiente. As horasgastas devero ser obtidas com base nos sistemas de controle existentes e ementrevistas com os participantes. O resultado ser uma linha de base (baseline) deprodutividade, que ir orientar os trabalhos de estimativa subseqentes.

    Concluso O Que Fazer Amanh

    No espere at que voc tenha que elaborar um oramento importante, avaliar umaproposta crtica, ou ser chamado a participar de uma licitao ou RFP. Comece amanhmesmo a sensibilizar a gerncia de sua organizao para a necessidade de elaborar umabaseline de produtividade. Um trabalho dessa natureza costuma levar algumas semanaspara ser realizado, ento no convm deixar para a ltima hora. Faa um levantamentodos projetos recentemente concludos. Identifique aqueles correspondentes s reas denegcio mais importantes e/ou crticas de sua organizao. para essas categorias quevoc provavelmente ir desejar obter dados primeiro. Verifique o estado dadocumentao desses projetos. Existe um modelo de dados documentado? As funesdo sistema esto devidamente identificadas? Ser fcil medir o tamanho em PF? Faa omesmo para as horas gastas. A equipe manteve timesheet durante o projeto? As horasregistradas correspondem ao que foi efetivamente gasto? Houve horas extras nocomputadas? Algum tirou "frias informais" e teve o timesheet preenchido como setivesse trabalhado? Algum outro desvio pode ter ocorrido? Com todas essas informaesvoc poder conduzir ou contratar o levantamento de uma baseline de produtividade,indispensvel para a obteno de estimativas e oramentos confiveis.

    Referncias

    [1] Garmus, D. & Herron, D. Function Point Analysis Measurement Practices forSuccessful Projects Addison-Wesley, 2001.

  • 4

    [2] Goethert, W. B. et al. - Software Effort & Schedule Measurement: A Framework forCounting Staff-hours and Reporting Schedule Information - CMU/SEI-92-TR-021 Software Engineering Institute, 1992.[3] IFPUG Counting Practices Manual, Version 4.1 International Function Point UsersGroup, 1999.

    URLs

    http://www.sei.cmu.edu/publications/documents/92.reports/92.tr.021.html Pgina do SEIde onde pode ser baixada a referncia [2] acima.

    http://www.davidconsultinggroup.com/indata.htm#productivity Pgina com dados deprodutividade do David Consulting Group.

    http://www.ifpug.org Site do IFPUG, onde pode ser adquirido o Manual de Prticas deContagem (CPM Counting Practices Manual).

    http://www.isbsg.org.au site do ISBSG.

    Mauricio Aguiar Diretor da ti MTRICAS e do IFPUG. Contato: mauricio@metricas.com.br.

    Esta coluna produzida especialmente para a Developers' Magazine pelo ISLIG-Rio - Iniciativa Localdo PMI-ISSIG, Grupo de Interesse em Sistemas de Informao do PMI.

Recommended

View more >