Sunteți pe pagina 1din 47

Uso de Mtricas em Contratos de Fbrica de Software Roteiro de Mtricas do SISP 2.

Claudia Hazan
claudia.hazan@serpro.gov.br
claudia.hazan@serpro.gov.br

Objetivos

Definir a Mtrica Pontos de Funo Apresentar as Recomendaes para Contratos de Software com Pontos de Funo do Governo Brasileiro Discutir o uso da mtrica Pontos de Funo em contratos de Desenvolvimento e de Manuteno de Sistemas - Roteiro de Mtricas do SISP 2.0

claudia.hazan@serpro.gov.br

Anlise de Pontos de Funo

Anlise de Pontos de Funo (APF)

Pontos de Funo (PF): uma medida de dimensionamento de software atravs da funcionalidade implementada em um sistema, sob o ponto de vista do usurio.

Publicado como Padro Internacional - norma ISO/IEC 14.143:2007


3

claudia.hazan@serpro.gov.br

Anlise de Pontos de Funo

Anlise de Pontos de Funo


APF - Criada em 1979 por Allan Albrecht - IBM Grupo de Usurios - Internacional: www.ifpug.org IFPUG - International Function Point Users Group Regras de Contagem descritas no manual: CPM - Counting Practices Manual - Verso 4.3 - Janeiro/2010 Certificao de Especialistas: CFPS - Certified Function Point Specialist

claudia.hazan@serpro.gov.br

Anlise de Pontos de Funo

Anlise de Pontos de Funo

Medir a funcionalidade requisitada e recebida pelo usurio Medir Projetos de Desenvolvimento e de Manuteno Evolutiva independentemente da tecnologia utilizada

claudia.hazan@serpro.gov.br

Cenrio Contratos de Software


A Instruo Normativa 04 (IN04) publicada pelo MPOG/SLTI recomenda o uso de mtricas em contratos de software. A contratao de servios de fbrica de software deve utilizar mtricas no planejamento da aquisio e no gerenciamento do contrato, com restries ao uso da mtrica de esforo homem-hora. O TCU tem recomendado em Acrdos o uso da mtrica Pontos de Funo (PF) em contratos de prestao de servios de desenvolvimento e manuteno de software. A Mtrica (PF) tem sido usada como base para contratos de software em muitas organizaes.

claudia.hazan@serpro.gov.br

Cenrio Contratos de Software

PF mede o tamanho funcional do projeto de software, independentemente da tecnologia e metodologia utilizadas. PF torna possvel a estimativa de tamanho de projetos de software nas fases iniciais do ciclo de vida. O Manual de Prticas de Contagem (CPM) possui regras objetivas para contagem de Pontos de Funo. PF considera a viso do usurio. PF independente da forma da modelagem dos requisitos.

claudia.hazan@serpro.gov.br

Recomendaes TCU
Acrdo 1.782/2007 - Plenrio Determinao
9.3.6. realize o adequado planejamento das necessidades de servios de TI de modo a contemplar nele o levantamento da estimativa prvia de quantitativos de servios demandados (pontos de funo) por tecnologia a ser empregada tanto na manuteno quanto no desenvolvimento de sistemas, observando, assim, o disposto nos arts. 6, inciso IX, e 7, incisos I e 2, incisos I e II, da Lei 8.666/1993 quanto ao adequado nvel de preciso dos servios a serem licitados, bem como necessria fundamentao do oramento, que dever ser detalhado em quantitativos de servios propriamente avaliados e detalhados, nos termos da lei;

claudia.hazan@serpro.gov.br

Recomendaes TCU
Acrdo n 1.910/2007-Plenrio Recomendao
9.3.2.2. diferenciar, em sua frmula de clculo, os custos dos pontos de funo para desenvolver novas funcionalidades daqueles relativos a supresses ou alteraes de funcionalidades existentes, utilizando, por exemplo, as seguintes alternativas que seguem: 9.3.2.2.1. definio de preo diferenciado para o desenvolvimento e a manuteno de software, considerando tambm o tipo de operao a ser realizada (incluso, excluso ou alterao de funcionalidade);

claudia.hazan@serpro.gov.br

Recomendaes TCU
Acrdo n 1.910/2007-Plenrio Recomendao
9.3.2.2.2. adoo da forma de contagem dos pontos de funo em atividades de manuteno de software preconizada pela publicao Function Point Analysis for Software Enhancement da Nesma - Netherlands Software Metrics Users Association, entidade que aprofunda o tema e apresenta alternativas tcnicas proposta original do IFPUG, com respaldo no manual de contagem de ponto de funo CPM 4.2.1;

claudia.hazan@serpro.gov.br

10

Recomendaes TCU
Acrdo 2.024/2007 Plenrio
9.2.2.2. prever metodologias de mensurao de servios prestados que privilegiem a remunerao da contratada mediante a mensurao de resultados, a exemplo da anlise por Pontos de Funo (mtodo padronizado largamente utilizado no mercado nos dias de hoje para a mensurao de servios de desenvolvimento e manuteno de sistemas, considerando as funcionalidades implementadas, sob o ponto de vista do usurio), buscando eliminar a possibilidade de remunerar a contratada com base na quantidade de horas trabalhadas ou nos postos de trabalho disponibilizados ou, caso tal caminho no se mostre comprovadamente vivel, restando como nica opo a remunerao de servios por horas trabalhadas, cuidar para que sejam previamente definidos e especificados os servios a serem executados e estabelecidos, tambm de antemo, os valores mximos de horas aceitveis para cada um desses servios, assim como explicitada a metodologia a ser utilizada para a identificao desse quantitativo de horas;
claudia.hazan@serpro.gov.br

11

Recomendaes TCU
Acrdo 1.274/2010 Plenrio Determinao
9.1.4. nos prximos editais e contratos de Tecnologia da Informao, ao utilizar mensurao de servios, a exemplo da Anlise de Pontos de Funo: 9.1.4.1. abstenha-se de possibilitar a remunerao tanto por ponto de funo quanto por homem-hora para os mesmos tipos de servio; 9.1.4.2. abstenha-se de vincular a mtrica de tamanho (ponto de funo) mtrica de esforo (homem-hora);

claudia.hazan@serpro.gov.br

12

Recomendaes TCU
Acrdo 1.647/2010 Recomendao
9.2.1. ao contratar desenvolvimento de software utilizando a mtrica de Anlise de Pontos de Funo, evite adotar, como nico guia de referncia para contagens, o Manual de Prticas de Contagem do IFPUG, adicionando ao contrato clusulas complementares que elucidem pontos em aberto, abordando, por exemplo, tpicos como: 9.2.1.1. diferenciao, em sua frmula de clculo, dos custos dos pontos de funo para desenvolvimento de novas funcionalidades daqueles relativos a supresses ou alteraes de funcionalidades existentes;

claudia.hazan@serpro.gov.br

13

Recomendaes TCU
Acrdo 1.647/2010 Recomendao
9.2.1.2. diferenciao, em sua frmula de clculo, dos custos de pontos de funo para o desenvolvimento completo de uma funcionalidade (todas as fases do ciclo de desenvolvimento) daqueles necessrios execuo de apenas uma fase do ciclo; 9.2.1.3. adoo de uma tabela de itens no mensurveis; 9.2.1.4. definio das fronteiras a serem utilizadas nas contagens; 9.2.1.5. polticas para definio de: novas fronteiras, contagem de recursos reutilizveis, remunerao de requisitos no funcionais e resoluo de impasses acerca das contagens;

claudia.hazan@serpro.gov.br

14

Roteiros de Contagem

Como Evitar Armadilhas na Gesto de Contratos de Software baseados em Pontos de Funo?

claudia.hazan@serpro.gov.br

15

Roteiros de Contagem

Problemas da Utilizao de PF em Contratos


Empresas no possuem Maturidade em Gesto de Projetos. Falta de Capacitao em Engenharia de Requisitos. Falta de Conhecimento Adequado em Anlise de Pontos de Funo.

SOLUO
Implantao de um Escritrio de Mtricas Corporativo com profissionais especialistas em Anlise de Pontos de Funo e suas aplicaes em Contratos e Estimativas.
claudia.hazan@serpro.gov.br

16

Roteiros de Contagem Como Evitar Armadilhas?


1 Obter um Documento de Requisitos com Qualidade O Documento de Requisitos constitui: um acordo comum entre o cliente e o fornecedor; a base para a estimativa de PF; a base para a construo do projeto de software. fundamental garantir a Qualidade do Documento de Requisitos.
claudia.hazan@serpro.gov.br

Documentos de Requisitos com m qualidade ou um Pesadelo? 17

Roteiros de Contagem Como Evitar Armadilhas?


1 Obter um Documento de Requisitos com Qualidade
Sugesto: Realizar inspeo de requisitos durante a Estimativa de Pontos de Funo. Hazan tem o aplicado o mtodo CEPF para estimar o tamanho dos projetos em PF. Como um efeito colateral desta estimativa, ela encontra defeitos nos documentos de requisitos, ex: requisitos omissos, requisitos inconsistentes, requisitos incompletos, e requisitos ambguos.
HAZAN, C. et. al. possvel substituir processos de Engenharia de Requisitos por Contagem de Pontos de Funo? 8th International Workshop on Requirements Engineering (WER2005), Porto, Portugal, June 2005.
claudia.hazan@serpro.gov.br

18

Roteiros de Contagem Como Evitar Armadilhas?


2 Estabelecer Regras para Evoluo de Requisitos Requisitos de Software no permanecem congelados. Sugesto:
Estabelecer um percentual para cada atividade do processo de software, ex: Requisitos: 20%, design: 10%, implementao: 50%, teste: 15%, implantao: 5%. Quando um requisito alterado, identificar as atividades executadas. Exemplo: Relatrio de Clientes SE mdia 5 PF foi alterado logo aps o final da fase de requisitos. Assim, a quantidade de PF para o pagamento : Novo requisito (alterado) : SE mdia 5 PF + 20% do requisito original (1 PF) x 0,75 (redutor retrabalho)

Total: 5,75 PFs


claudia.hazan@serpro.gov.br

19

Roteiros de Contagem Como Evitar Armadilhas?


3 Estabelecer Clausulas de Garantia da Qualidade
O CPM no estabelece regras para garantir a qualidade do projeto de software recebido. Contudo, a contagem de PF considera a funcionalidade requisitada e recebida (sem defeitos). Algumas vezes, o tempo de espera para correo de defeitos enorme. Assim, importante estabelecer clusulas contratuais para garantir a qualidade do produto. Sugesto:
Definir um indicador de defeitos/ PF e uma clusula de multa. Por exemplo, uma multa se o resultado do indicador de defeitos maior que 0,3 defeitos/PF. importante definir os tipos de defeitos no contrato.
claudia.hazan@serpro.gov.br

20

Roteiros de Contagem Como Evitar Armadilhas?


4 Estabelecer clusulas contratuais considerando cronograma e taxa de entrega Problema: a contratada no entrega nenhum projeto de software
Sugesto: Estabelecer uma taxa de entrega mensal, ex.: 500 PF/ms Definir o modelo de estimativa a ser usado para definir o prazo de entrega, por exemplo Formula de Capers Jones Td (em meses) = V**t
JONES,C. Estimating Software Costs Bringing Realism to Estimating. 2nd Edition, Mc Graw Hill, New York, 2007. New York. claudia.hazan@serpro.gov.br

21

Roteiros de Contagem Como Evitar Armadilhas?


5 Estabelecer o CPM como base para as contagens de PF ao invs de converses

Situao Comum: Algumas organizaes estabelecem o uso do CPM no contrato, contudo elas no contam PF de acordo com o CPM. Algumas vezes, a Contagem de PF baseada em uma frmula de converso, ex: Pontos por Casos de Uso (PCU) para PF. No existe uma frmula para converter PCU para PF com acurcia. As vezes, o contrato baseado em PF, no entanto este gerenciado como um contrato de alocao de horas. A empresa contratada comunica as horas alocadas sem a gesto da contratante. Estas horas so convertidas em PF, considerando uma taxa de produtividade definida com base no preo por PF.

Conte PF de acordo com as regras do CPM


claudia.hazan@serpro.gov.br

22

Roteiros de Contagem Como Evitar Armadilhas?


6 Estabelecer regras de dimensionamento de projetos de manuteno
Contagem de PF aplicada apenas em projetos de desenvolvimento e de manuteno de acordo com CPM. Como considerar projetos de manuteno em Contratos baseados em Contagem de PF? Sugesto: Defina os tipos de projetos de manuteno comuns em sua organizao. Defina formulas baseadas na frmula de melhoria do CPM no contrato de software no Roteiro de Mtricas.
claudia.hazan@serpro.gov.br

23

Roteiros de Contagem
A Instruo Normativa 04, publicada pela SLTI/ MPOG, preconiza a utilizao de mtricas em contratos de software. Os Acrdos do Tribunal de Contas da Unio (TCU) recomendam a utilizao da mtrica Pontos de Funo No Ajustados. A verso 4.3 do CPM tambm reconhece o PF No Ajustado como mtodo padro do IFPUG. O CPM no trata de processos de estimativas de prazo de projetos. O CPM no define regras para o dimensionamento de requisitos no funcionais. Em se tratando de manuteno de sistemas, o CPM trata somente Projetos de Melhoria (Manuteno Evolutiva).
claudia.hazan@serpro.gov.br
Roteiro de Contagem de PF

24

Roteiros de Contagem

Premissas
Medir e Estimar a funcionalidade requisitada e recebida pelo usurio. Definir mtricas para tratar requisitos no funcionais. Medir Projetos de Desenvolvimento e todos tipos de projetos de Manuteno independentemente da tecnologia utilizada Consistncia: Prover uma medida consistente entre vrios projetos e organizaes. Simplicidade: Ser simples o suficiente para minimizar o trabalho adicional envolvido no processo de medio.
claudia.hazan@serpro.gov.br

25

Roteiros de Contagem

Sugestes Projetos Desenvolvimento


Contagem de PF de Projetos de Desenvolvimento: Projeto para desenvolver e entregar a primeira verso de uma aplicao de software. Seu tamanho funcional a medida das funcionalidades entregues ao usurio no final do projeto. Tambm considera-se as funcionalidades de converso de dados. Considerar a frmula do CPM.

claudia.hazan@serpro.gov.br

26

Roteiros de Contagem

Projetos de Melhoria
Um projeto de melhoria consiste em: demandas de criao de novas funcionalidades (grupos de dados ou processos elementares), demandas de excluso de funcionalidades (grupos de dados ou processos elementares), e demandas de alterao de funcionalidades (grupos de dados ou processos elementares) em aplicaes implantadas em produo.
- Clculo de PF de um Projeto de Melhoria (CPM)

PF_MELHORIA = PF_INCLUDO + PF_ALTERADO + PF_EXCLUDO + PF_CONVERSO 27

claudia.hazan@serpro.gov.br

Roteiros de Contagem

Projetos de Melhoria
PF_MELHORIA = PF_INCLUDO + (FI x PF_ALTERADO ) + (PF_EXCLUDO x 0,40) + PF_CONVERSO
FI : Fator de Impacto pode variar de 50% a 90% FI = 50%: Funcionalidade desenvolvida pela contratada FI = 75%: Funcionalidade de Sistema no desenvolvida pela contratada. FI = 90%: Funcionalidade de Sistema sem documentao atualizada. A contratada deve redocumentar a funcionalidade mantida, gerando a documentao completa da mesma, aderente ao processo de software da contratante.
claudia.hazan@serpro.gov.br

28

Roteiros de Contagem

Projetos de Manuteno - Corretiva


PF_CORRETIVA = PF_ALTERADO x FI

FI : Fator de Impacto pode variar de 50% a 90% FI = 50%: Funcionalidade desenvolvida pela contratada FI = 75%: Funcionalidade de Sistema no desenvolvida pela contratada. FI = 90%: Funcionalidade de Sistema sem documentao atualizada. A contratada deve redocumentar a funcionalidade mantida, gerando a documentao completa da mesma, aderente ao processo de software da contratante.
claudia.hazan@serpro.gov.br

29

Roteiros de Contagem

Projetos de Manuteno Manuteno em Interface


So consideradas manutenes cosmticas ou Adaptativas Mudana de Interface, as demandas associadas alteraes de interface, por exemplo, fonte de letra, cores de telas, logotipos, mudana de botes na tela, mudana de posio de campos ou texto na tela. Tambm se enquadram nessa categoria as mudanas de texto em mensagens de erro, validao, aviso, alerta ou concluso de processamento.

PF_INTERFACE = 0,6 x QTD de Processos Impactados

claudia.hazan@serpro.gov.br

30

Roteiros de Contagem

Projetos de Mudana de Plataforma Linguagem de Programao


So considerados nesta categoria, projetos que precisam ser migrados para outra plataforma. Por exemplo, um sistema legado em COBOL precisa ser re-desenvolvido em JAVA. So considerados como novos projetos de desenvolvimento.

claudia.hazan@serpro.gov.br

31

Roteiros de Contagem

Projetos de Mudana de Plataforma Banco de Dados


Nesta categoria encontram-se as demandas de redesenvolvimento de sistemas para executar em um outro Sistema Gerenciador de Banco de Dados. Observe que caso no exista mudana nas funes de dados, ou seja, o banco de dados da aplicao seja mantido, ento as funes de dados no devem ser contadas.

claudia.hazan@serpro.gov.br

32

Roteiros de Contagem

Projetos de Manuteno Atualizao de Verso


Atualizao de verso - Linguagem de Programao

Atualizao de verso - Browser

Atualizao de verso Banco de Dados

claudia.hazan@serpro.gov.br

33

Roteiros de Contagem Projetos de Manuteno Adaptao em Funcionalidades sem Alterao de Requisitos Funcionais
So consideradas nesta categoria as demandas de manuteno adaptativa associadas a solicitaes que envolvem aspectos no funcionais, sem alterao em requisitos funcionais. PF_ADAPTATIVA = PF_ALTERADO x FI FI : Fator de Impacto pode variar de 50% a 90% FI = 50%: Funcionalidade desenvolvida pela contratada FI = 75%: Funcionalidade de Sistema no desenvolvida pela contratada. FI = 90%: Funcionalidade de Sistema sem documentao atualizada. A contratada deve redocumentar a funcionalidade mantida. 34 claudia.hazan@serpro.gov.br

Roteiros de Contagem

Exemplos: - Aumentar a quantidade de linhas por pgina em um relatrio; Colocar paginao em um relatrio; Permitir excluses mltiplas em uma funcionalidade que antes s possibilitava a excluso de um item; Adaptao de uma funcionalidade para possibilitar a chamada por um Webservice ou para outro tipo de integrao com outros sistemas;

claudia.hazan@serpro.gov.br

35

Roteiros de Contagem

Apurao Especial Base de Dados


PF_AESP_BD = PF_INCLUDO

Apurao Especial Consulta Prvia


PF_AESP_Consulta_Prvia = PF_INCLUDO

Apurao Especial BD Ps Consulta Prvia


PF_AESP_BD_Ps_Prvia = PF_INCLUDO x 0,60

claudia.hazan@serpro.gov.br

36

Roteiros de Contagem

Apurao Especial Gerao de Relatrio


PF_AESP_Relatrio = PF_INCLUDO

Apurao Especial Reexecuo


PF_Reexecuo_AESP = PF_INCLUDO x 0,10

Atualizao de Dados
PF_Atualizao_de_Dados = PF_INCLUDO x 0,10
37

claudia.hazan@serpro.gov.br

Roteiros de Contagem

Manuteno em Pginas Estticas de Intranet, Internet ou Portal


A demanda consiste na publicao de pginas html Portais, Intranets ou Websites. Estas demandas so consideradas como desenvolvimento de consultas com a utilizao de ferramentas para apoiar a publicao. Considerase 20% dos Pontos de Funo das consultas desenvolvidas. Cada pgina contada como uma consulta. As consultas so consideradas Consultas Externas Simples (3 PF).

claudia.hazan@serpro.gov.br

38

Roteiros de Contagem
Manuteno de Documentao de Sistemas Legados
Caso a demanda seja apenas a documentao de requisitos, devem ser considerados 25% dos Pontos de Funo da aplicao em questo

PF = PF_NO_AJUSTADO x 0,25

claudia.hazan@serpro.gov.br

39

Roteiros de Contagem

Projetos de Manuteno Verificao de Erros


So consideradas verificaes de erro ou anlise e soluo de problemas as demandas referentes a todo comportamento anormal ou indevido apontado pelo cliente nos sistemas. Caso o problema seja relatado em funcionalidades especficas da aplicao e uma vez no constatado o problema apontado pelo cliente ou o mesmo for decorrente de regras de negcio implementadas ou utilizao incorreta das funcionalidades, ser realizada a aferio do tamanho em Pontos de Funo das funcionalidades verificadas, e ser considerado 20% do tamanho funcional das funcionalidades analisadas

PF = PF_NO_AJUSTADO x 0,20
OBS:Caso o sistema no esteja funcionando por problemas de infra-estrutura (rede, banco de dados...). A demanda ser tratada como Servio em homem_hora.
claudia.hazan@serpro.gov.br

40

Roteiros de Contagem

Manuteno de Componente Interno Reusvel


Em alguns casos so demandadas manutenes em componentes especficos de uma aplicao e estes so reusados por vrias funcionalidades da aplicao. Proposta: Considerar componente um processo elementar independente e contar como uma funcionalidade. O componente dever ser testado. Alm disso, as funcionalidades da aplicao que necessitem de teste devem ser requisitadas pela contratante e dimensionadas por meio da mtrica Pontos de Funo de Testes.

PF_Componentes = PF_NO_AJUSTADO

claudia.hazan@serpro.gov.br

41

Roteiros de Contagem

Pontos de Funo de Testes


Muitas vezes, em projetos de manuteno o conjunto de funes de dados e funes transacionais a serem testadas maior do que a quantidade de funes a serem implementadas, i.e., alm das funcionalidades que so afetadas diretamente pelo projeto de manuteno, outras precisam ser testadas [NESMA, 2009]. O tamanho das funes a serem testadas deve ser aferido em Pontos de Funo de Teste (PFT). No considerar as funcionalidades includas, alteradas ou excludas do projeto de manuteno na contagem de Pontos de Funo de Teste.

claudia.hazan@serpro.gov.br

42

Roteiros de Contagem

Pontos de Funo de Testes


A contagem de PFT deve considerar o seguinte: Determinar o tamanho em Pontos de Funo de cada funo de dados ou transacional envolvida no teste. Calcular o tamanho em Pontos de Funo de todas as funes de dados ou transacionais envolvidas no teste. A converso do PFT em Ponto de Funo deve ser feita de acordo com a frmula abaixo:

PF = PFT x 0,15
importante ressaltar que as funes testadas consideradas no PFT devem ser requisitadas pelo cliente e documentadas. Observe que estas funes faro parte do escopo do projeto de manuteno
claudia.hazan@serpro.gov.br

43

Roteiros de Contagem

Mudana de Requisito e Projetos Cancelados

Considerar o percentual das fases realizadas sobre a contagem de PF do requisito original.


claudia.hazan@serpro.gov.br

44

Roteiros de Contagem

Melhores Prticas
Revisar o Roteiro sempre que tiver mudana de verso do Manual CPM, ou publicao de White Paper pelo IFPUG. Revisar o Roteiro sempre que surgir uma situao no prevista no mesmo. Analisar o Roteiro periodicamente, avaliando a simplicidade, consistncia e adequao das frmulas s demandas com base no feedback das equipes de desenvolvimento. Incluir no Roteiro modelos para a Documentao de Requisitos de Projeto de Desenvolvimento e de Manuteno. Incluir modelos para a Documentao da Contagem de Pontos de Funo. 45

claudia.hazan@serpro.gov.br

Roteiros de Contagem

Programa de Capacitao em APF do SISP


- Curso Bsico de Anlise de Pontos de Funo (EaD) 30 horas - Curso de Contagem de Pontos de Funo Presencial 32 horas - Curso de Contagem de Pontos de Funo Avanado 24 horas - Curso Preparatrio para a Certificao CFPS CPM 4.3 (Em construo)

claudia.hazan@serpro.gov.br

46

Obrigado

Perguntas e Contato
Claudia Hazan
claudia.hazan@serpro.gov.br Tel: (21) 3507-7787 Cel: (21) 9124-6579

Sonhos se tornam realidade


claudia.hazan@serpro.gov.br

47

S-ar putea să vă placă și