GuiadeContagemdePontosdeFuncao.pdf

45
 

Transcript of GuiadeContagemdePontosdeFuncao.pdf

Page 1: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 145

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 2 de 45

Histoacuterico de Revisatildeo

Data Versatildeo Descriccedilatildeo Autor

042015 10 Elaboraccedilatildeo do manualMaacutercia Regina Guiotti Bomfim

Joseacute Romildo Andrade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 3 de 45

Sumaacuterio

983123983125983117983233983122983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091

1 983119983106983114983109983124983113983126983119 983093

2 983122983109983110983109983122983242983118983107983113983105983123 983120983122983113983118983107983113983120983105983113983123 983093

21 983107983119983125983118983124983113983118983111 983120983122983105983107983124983113983107983109983123 983117983105983118983125983105983116 983108983119 983113983110983120983125983111 (983107983120983117) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983093

22 983122983119983124983109983113983122983119 983108983109 983117983241983124983122983113983107983105983123 983108983109 983123983119983110983124983127983105983122983109 983108983119 983123983113983123983120 (983122983119983124983109983113983122983119 983123983113983123983120)983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086 983093

3 983113983118983124983122983119983108983125983239983235983119 983093

983092 983109983118983124983109983118983108983113983117983109983118983124983119 983108983105 983124983241983107983118983113983107983105 983094

9830922 983120983122983119983120983251983123983113983124983119 983108983105 983107983119983118983124983105983111983109983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983094

9830923 983124983113983120983119 983108983109 983107983119983118983124983105983111983109983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983095

983092983092 983109983123983107983119983120983119 983108983105 983105983120983116983113983107983105983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983095

983092983093 983126983113983123983235983119 983108983119 983125983123983125983233983122983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983095

983092983094 983110983122983119983118983124983109983113983122983105 983108983105 983105983120983116983113983107983105983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086 983096

983092983095 983110983125983118983239983253983109983123 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983097

9830929830951 983105983122983121983125983113983126983119 983116983251983111983113983107983119 983113983118983124983109983122983118983119 (983105983116983113) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086 983089983088

9830929830952 983105983122983121983125983113983126983119 983108983109 983113983118983124983109983122983110983105983107983109 983109983128983124983109983122983118983105 (983105983113983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830953 983122983109983111983113983123983124983122983119 983116983251983111983113983107983119 983122983109983110983109983122983109983118983107983113983105983108983119 (983122983116983122 983119983125 983124983122) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

983092983096 983110983125983118983239983253983109983123 983124983122983105983118983123983105983107983113983119983118983105983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830961 983109983118983124983122983105983108983105 983109983128983124983109983122983118983105 (983109983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830962 983107983119983118983123983125983116983124983105 983109983128983124983109983122983118983105 (983107983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830963 983123983105983245983108983105 983109983128983124983109983122983118983105 (983123983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

983092983097 983118983245983126983109983116 983108983109 983108983109983124983105983116983112983105983117983109983118983124983119 983108983109 983107983119983118983124983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983089

9830929830971 983107983119983118983124983105983111983109983117 983113983118983108983113983107983105983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983089 9830929830972 983107983119983118983124983105983111983109983117 983109983123983124983113983117983105983108983105983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983090

9830929830973 983107983119983118983124983105983111983109983117 983108983109983124983105983116983112983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983090

98309210 983110983105983124983119983122 983108983109 983105983114983125983123983124983109983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983091

98309211 983119983122983113983109983118983124983105983239983253983109983123 983120983105983122983105 983105983123 983107983119983118983124983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983089983091

983092111 983108983105983108983119 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983091

983092112 983116983119983111 983124983122983113983116983112983105 983108983109 983105983125983108983113983124983119983122983113983105 983122983109983111983113983123983124983122983119 983108983109 983109983126983109983118983124983119983123 983109 983112983113983123983124983251983122983113983107983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983092

9830921121 983112983113983123983124983251983122983113983107983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983092

9830921122 983122983109983111983113983123983124983122983119 983108983109 983109983126983109983118983124983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086 983089983092

9830921123 983116983119983111 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983093

983092112983092 983124983122983113983116983112983105 983108983109 983105983125983108983113983124983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086 983089983093

983092113 983107983119983118983123983125983116983124983105983123 983107983119983117 983110983113983116983124983122983119983123 983108983113983110983109983122983109983118983124983109983123 983109 983107983119983117 983105983123 983117983109983123983117983105983123 983123983105983245983108983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983093

98309211983092 983107983119983118983123983125983116983124983105983123 983107983119983117 983110983113983116983124983122983119983123 983113983111983125983105983113983123 983109 983107983119983117 983123983105983245983108983105983123 983108983113983110983109983122983109983118983124983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

98309211983093 983113983118983124983109983111983122983105983239983235983119 983109983118983124983122983109 983105983120983116983113983107983105983239983253983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

983092119830931 983107983109983118983233983122983113983119 1 (983123983113983123983124983109983117983105 991260983105991261 983122983109983121983125983113983123983113983124983105 983108983105983108983119983123 983108983119 983123983113983123983124983109983117983105 991260983106) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

983092119830932 983107983109983118983233983122983113983119 2 (983123983113983123983124983109983117983105 991260983106991261 983110983119983122983118983109983107983109 983108983105983108983119983123 983120983105983122983105 983119 983123983113983123983124983109983117983105 991260983105991261 ) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983095

983092119830933 983107983109983118983233983122983113983119 3 (983108983113983123983120983119983118983113983106983113983116983113983130983105983239983235983119 983109 983107983119983118983123983125983117983119 983108983109 983108983105983108983119983123 983108983109983118983124983122983119 983108983105 983117983109983123983117983105 983110983122983119983118983124983109983113983122983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086 983089983096

98309211983093983092 983113983108983109983118983124983113983110983113983107983105983239983235983119 983108983119 983106983105983122983122983105983117983109983118983124983119 983107983119983117983119 983125983117983105 983110983122983119983118983124983109983113983122983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983096

98309211983093983093 983107983119983118983110983113983111983125983122983105983239983235983119983107983125983123983124983119983117983113983130983105983239983235983119 983108983109 983110983109983122983122983105983117983109983118983124983105 983108983109 983106983105983122983122983105983117983109983118983124983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983097

98309211983094 983117983105983118983125983124983109983118983239983235983119 983108983109 983107983119983117983120983119983118983109983118983124983109 983122983109983125983124983113983116983113983130983233983126983109983116 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983097

98309211983095 983117983258983116983124983113983120983116983105983123 983117983245983108983113983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983090983088

98309211983096

983117983258983116983124983113983120983116983119983123 983120983122983119983107983109983123983123983119983123 983107983119983117983120983119983118983108983119 983125983117 983120983122983119983107983109983123983123983119 983109983116983109983117983109983118983124983105983122 (983123983125983106983108983113983126983113983123983235983119 983108983109 983110983125983118983107983113983119983118983105983116983113983108983105983108983109983123) 983086983086983086983086983086983086 983090983090

98309211983097 983107983119983118983123983125983116983124983105983123 983113983117983120983116983245983107983113983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 4 de 45

9830921110 983107983119983118983124983105983111983109983117 983108983109 983110983125983118983239983253983109983123 983120983105983122983105 983107983119983118983126983109983122983123983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

9830921111 983120983122983119983114983109983124983119983123 983108983109 983117983113983111983122983105983239983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921112 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 (983117983105983118983125983124983109983118983239983235983119 983109983126983119983116983125983124983113983126983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921113 983117983125983108983105983118983239983105 983109983123983124983122983125983124983125983122983105983116 983109983117 983105983122983121983125983113983126983119983123 983116983251983111983113983107983119983123 983120983105983122983105 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309211131 983113983117983120983105983107983124983119 983108983105983123 983105983116983124983109983122983105983239983253983109983123 983108983105983123 983107983105983122983105983107983124983109983122983245983123983124983113983107983105983123 983108983109 983113983124983109983118983123 983108983109 983108983105983108983119983123 983108983109 983125983117 983105983116983113 983118983105983123 983110983125983118983239983253983109983123

983124983122983105983118983123983105983107983113983119983118983105983113983123 983121983125983109 983119 983117983105983118983124983241983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309212 983113983124983109983118983123 983118983235983119 983117983109983118983123983125983122983233983126983109983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

983092121 983117983105983118983125983124983109983118983239983235983119 983107983119983122983122983109983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

9830921211 983123983113983123983124983109983117983105 983123983109983117 983108983119983107983125983117983109983118983124983105983239983235983119 983108983109983123983105983124983125983105983116983113983130983105983108983105 983119983125 983113983118983107983119983117983120983116983109983124983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

9830921212 983123983113983123983124983109983117983105 983107983119983117 983108983119983107983125983117983109983118983124983105983239983235983119 983107983119983117983120983116983109983124983105 983109 983105983124983125983105983116983113983130983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

983092122 983117983105983118983125983124983109983118983239983235983119 983108983109 983113983118983124983109983122983110983105983107983109 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

983092123 983117983105983118983125983124983109983118983239983235983119 983109983117 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

98309212983092 983105983124983125983105983116983113983130983105983239983235983119 983108983109 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983093 983117983109983118983123983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983094 983120983122983119983111983122983105983117983105983123 983105983125983128983113983116983113983105983122983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983088

98309213 983117983125983108983105983118983239983105 983108983109 983122983109983121983125983113983123983113983124983119983123 983108983125983122983105983118983124983109 983119 983120983122983119983114983109983124983119 983108983109 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983119983125 983117983105983118983125983124983109983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983089 983092131 983117983125983108983105983118983239983105983123 983105983123983123983119983107983113983105983108983105983123 983105983119 983108983119983117983245983118983113983119 983108983119 983118983109983111983251983107983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983090

983092132 983108983109983123983113983123983124983242983118983107983113983105 983108983109 983113983118983107983116983125983113983122 983105983116983124983109983122983105983122 983119983125 983109983128983107983116983125983113983122 983125983117983105 983110983125983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983093

9830921983092 983107983119983118983124983105983111983109983117 983108983109 983120983119983118983124983119983123 983108983109 983110983125983118983239983235983119 983118983119 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983108983109 983123983119983110983124983127983105983122983109 983107983119983117 983117983241983124983119983108983119983123 983233983111983109983113983123 983086983086983086983086983086983086983086983086983086983086983086 983091983093

983093 983108983113983107983105983123 983120983105983122983105 983119983124983113983117983113983130983105983122 983119 983107983125983123983124983119 983108983105983123 983117983105983118983125983124983109983118983239983253983109983123 9830922

983094 983109983118983124983122983109983111983105 983108983105 983107983119983118983124983105983111983109983117 9830923

983095 983111983116983119983123983123983233983122983113983119 9830923

983096 983120983122983119983107983109983123983123983119 983108983109 983122983109983126983113983123983235983119 983108983119 983111983125983113983105 983108983109 983107983119983118983124983105983111983109983117 983092983092

9830961 983122983109983126983113983123983235983119 983120983105983122983105 983107983119983122983122983109983239983235983119 983108983109 983113983118983107983119983118983123983113983123983124983242983118983107983113983105983123 983109 983123983113983124983125983105983239983253983109983123 983118983235983119 983120983122983109983126983113983123983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

9830962 983122983109983126983113983123983235983119 983120983105983122983105 983105983108983119983239983235983119 983108983109 983118983119983126983105983123 983126983109983122983123983253983109983123 983108983119 983107983120983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

983097 983122983109983110983109983122983242983118983107983113983105983123 983106983113983106983116983113983119983111983122983233983110983113983107983105983123 983092983092

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 5 de 45

1 Objetivo

Este documento tem como propoacutesito apresentar o Guia de Contagem dePontos de Funccedilatildeo proposto pelo Ministeacuterio do Planejamento Orccedilamento e

Gestatildeo (MP) para a aplicaccedilatildeo no contexto de desenvolvimento e manutenccedilatildeode softwares do MP Este guia funciona como um complemento ao Manual dePraacuteticas de Contagem do IFPUG (International Function Point Users GrouP-wwwifpucom ) procurando tornar mais praacutetico o uso dos conceitos e regrasdefinidos pelo IFPUG exemplificando situaccedilotildees especiacuteficas do MP eapresentando situaccedilotildees em que o IFPUG natildeo oferece orientaccedilatildeo praacutetica ouobjetiva

2 Referecircncias Principais

21 Counting Practices Manual do IFPUG (CPM)

O Manual de Praacuteticas de Contagem do IFPUG que estabelece o padratildeopara a contagem de pontos de funccedilatildeo especifica um conjunto de definiccedilotildeesregras e passos para a aplicaccedilatildeo do meacutetodo de mediccedilatildeo funcional do IFPUGO MP adotaraacute como referecircncia a versatildeo 431 podendo adotar no futuro novasversotildees conforme descrito no toacutepico Processo de Revisatildeo para Adoccedilatildeo deNovas Versotildees do CPM

22 Roteiro de Meacutetricas de Software do SISP (Roteiro SISP)

O Roteiro de Meacutetricas de Software do SISP (Roteiro SISP) tem o objetivo de

apresentar meacutetricas com base nas regras de contagens de pontos de funccedilatildeodo CPM para vaacuterios tipos de projetos de desenvolvimento e manutenccedilatildeo desoftware promovendo o uso de meacutetricas objetivas em contratos de prestaccedilatildeode serviccedilos de desenvolvimento e manutenccedilatildeo de sistemas

O Roteiro SISP (versatildeo mais atual) deve ser aplicado de formacomplementar a este guia de contagem Ocorrendo ambiguidade entre asinformaccedilotildees descritas neste guia e no Roteiro SISP devem prevalecer asregras estipuladas neste guia

No caso de publicaccedilatildeo de nova versatildeo do Roteiro SISP as contratadasteratildeo o prazo estipulado pelo MP poreacutem nunca inferior a 30 dias corridos paraadequarem-se agrave nova versatildeo

3 IntroduccedilatildeoA Anaacutelise de Pontos de Funccedilatildeo eacute uma teacutecnica de mediccedilatildeo das

funcionalidades de um software sob o ponto de vista do usuaacuterio ou sejadetermina o tamanho funcional do software Segundo o CPM a teacutecnica mede osoftware quantificando as tarefas e serviccedilos (isto eacute funcionalidade) que osoftware fornece ao usuaacuterio primordialmente com base no projeto loacutegicoOs objetivos da anaacutelise de pontos de funccedilatildeo satildeo

bull Medir a funcionalidade implementada no software que o usuaacuterio solicitae recebe e

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 6 de 45

bull Medir a funcionalidade impactada pelo desenvolvimento melhoria emanutenccedilatildeo de software independentemente da tecnologia utilizada naimplementaccedilatildeo

O Ponto de Funccedilatildeo (PF) eacute a unidade de medida que tem por objetivo tornara mediccedilatildeo independente da tecnologia utilizada para a construccedilatildeo do softwareEssa medida estaacute diretamente relacionada aos requisitos de negoacutecio que osoftware se destina a abordar ou seja busca medir o que o software faz e natildeocomo ele foi construiacutedo Portanto pode ser facilmente aplicada em uma amplagama de ambientes de desenvolvimento e ao longo do ciclo de um projeto dedesenvolvimento desde a definiccedilatildeo de requisitos ateacute o uso operacionalcompleto A teacutecnica fornece uma medida objetiva e comparativa que auxilia naavaliaccedilatildeo planejamento gestatildeo e controle da produccedilatildeo de software

4 Entendimento da Teacutecnica

A figura abaixo ilustra o procedimento de contagem de pontos de funccedilatildeo

41 Obter documentaccedilatildeo disponiacutevel do projetoA contagem de pontos de funccedilatildeo se inicia com a anaacutelise da

documentaccedilatildeo disponiacutevel do projeto em questatildeo visando agrave identificaccedilatildeo dosrequisitos funcionais

42 Propoacutesito da Contagem

Uma contagem deve prover uma resposta a um problema do negoacutecio e eacuteo problema do negoacutecio que determina o propoacutesito O objetivo nesta etapa eacutetornar claro o que se pretende atingir com a contagem que seraacute feita

Exemplos de propoacutesito satildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 2: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 2 de 45

Histoacuterico de Revisatildeo

Data Versatildeo Descriccedilatildeo Autor

042015 10 Elaboraccedilatildeo do manualMaacutercia Regina Guiotti Bomfim

Joseacute Romildo Andrade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 3 de 45

Sumaacuterio

983123983125983117983233983122983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091

1 983119983106983114983109983124983113983126983119 983093

2 983122983109983110983109983122983242983118983107983113983105983123 983120983122983113983118983107983113983120983105983113983123 983093

21 983107983119983125983118983124983113983118983111 983120983122983105983107983124983113983107983109983123 983117983105983118983125983105983116 983108983119 983113983110983120983125983111 (983107983120983117) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983093

22 983122983119983124983109983113983122983119 983108983109 983117983241983124983122983113983107983105983123 983108983109 983123983119983110983124983127983105983122983109 983108983119 983123983113983123983120 (983122983119983124983109983113983122983119 983123983113983123983120)983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086 983093

3 983113983118983124983122983119983108983125983239983235983119 983093

983092 983109983118983124983109983118983108983113983117983109983118983124983119 983108983105 983124983241983107983118983113983107983105 983094

9830922 983120983122983119983120983251983123983113983124983119 983108983105 983107983119983118983124983105983111983109983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983094

9830923 983124983113983120983119 983108983109 983107983119983118983124983105983111983109983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983095

983092983092 983109983123983107983119983120983119 983108983105 983105983120983116983113983107983105983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983095

983092983093 983126983113983123983235983119 983108983119 983125983123983125983233983122983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983095

983092983094 983110983122983119983118983124983109983113983122983105 983108983105 983105983120983116983113983107983105983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086 983096

983092983095 983110983125983118983239983253983109983123 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983097

9830929830951 983105983122983121983125983113983126983119 983116983251983111983113983107983119 983113983118983124983109983122983118983119 (983105983116983113) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086 983089983088

9830929830952 983105983122983121983125983113983126983119 983108983109 983113983118983124983109983122983110983105983107983109 983109983128983124983109983122983118983105 (983105983113983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830953 983122983109983111983113983123983124983122983119 983116983251983111983113983107983119 983122983109983110983109983122983109983118983107983113983105983108983119 (983122983116983122 983119983125 983124983122) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

983092983096 983110983125983118983239983253983109983123 983124983122983105983118983123983105983107983113983119983118983105983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830961 983109983118983124983122983105983108983105 983109983128983124983109983122983118983105 (983109983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830962 983107983119983118983123983125983116983124983105 983109983128983124983109983122983118983105 (983107983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830963 983123983105983245983108983105 983109983128983124983109983122983118983105 (983123983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

983092983097 983118983245983126983109983116 983108983109 983108983109983124983105983116983112983105983117983109983118983124983119 983108983109 983107983119983118983124983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983089

9830929830971 983107983119983118983124983105983111983109983117 983113983118983108983113983107983105983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983089 9830929830972 983107983119983118983124983105983111983109983117 983109983123983124983113983117983105983108983105983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983090

9830929830973 983107983119983118983124983105983111983109983117 983108983109983124983105983116983112983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983090

98309210 983110983105983124983119983122 983108983109 983105983114983125983123983124983109983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983091

98309211 983119983122983113983109983118983124983105983239983253983109983123 983120983105983122983105 983105983123 983107983119983118983124983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983089983091

983092111 983108983105983108983119 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983091

983092112 983116983119983111 983124983122983113983116983112983105 983108983109 983105983125983108983113983124983119983122983113983105 983122983109983111983113983123983124983122983119 983108983109 983109983126983109983118983124983119983123 983109 983112983113983123983124983251983122983113983107983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983092

9830921121 983112983113983123983124983251983122983113983107983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983092

9830921122 983122983109983111983113983123983124983122983119 983108983109 983109983126983109983118983124983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086 983089983092

9830921123 983116983119983111 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983093

983092112983092 983124983122983113983116983112983105 983108983109 983105983125983108983113983124983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086 983089983093

983092113 983107983119983118983123983125983116983124983105983123 983107983119983117 983110983113983116983124983122983119983123 983108983113983110983109983122983109983118983124983109983123 983109 983107983119983117 983105983123 983117983109983123983117983105983123 983123983105983245983108983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983093

98309211983092 983107983119983118983123983125983116983124983105983123 983107983119983117 983110983113983116983124983122983119983123 983113983111983125983105983113983123 983109 983107983119983117 983123983105983245983108983105983123 983108983113983110983109983122983109983118983124983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

98309211983093 983113983118983124983109983111983122983105983239983235983119 983109983118983124983122983109 983105983120983116983113983107983105983239983253983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

983092119830931 983107983109983118983233983122983113983119 1 (983123983113983123983124983109983117983105 991260983105991261 983122983109983121983125983113983123983113983124983105 983108983105983108983119983123 983108983119 983123983113983123983124983109983117983105 991260983106) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

983092119830932 983107983109983118983233983122983113983119 2 (983123983113983123983124983109983117983105 991260983106991261 983110983119983122983118983109983107983109 983108983105983108983119983123 983120983105983122983105 983119 983123983113983123983124983109983117983105 991260983105991261 ) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983095

983092119830933 983107983109983118983233983122983113983119 3 (983108983113983123983120983119983118983113983106983113983116983113983130983105983239983235983119 983109 983107983119983118983123983125983117983119 983108983109 983108983105983108983119983123 983108983109983118983124983122983119 983108983105 983117983109983123983117983105 983110983122983119983118983124983109983113983122983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086 983089983096

98309211983093983092 983113983108983109983118983124983113983110983113983107983105983239983235983119 983108983119 983106983105983122983122983105983117983109983118983124983119 983107983119983117983119 983125983117983105 983110983122983119983118983124983109983113983122983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983096

98309211983093983093 983107983119983118983110983113983111983125983122983105983239983235983119983107983125983123983124983119983117983113983130983105983239983235983119 983108983109 983110983109983122983122983105983117983109983118983124983105 983108983109 983106983105983122983122983105983117983109983118983124983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983097

98309211983094 983117983105983118983125983124983109983118983239983235983119 983108983109 983107983119983117983120983119983118983109983118983124983109 983122983109983125983124983113983116983113983130983233983126983109983116 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983097

98309211983095 983117983258983116983124983113983120983116983105983123 983117983245983108983113983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983090983088

98309211983096

983117983258983116983124983113983120983116983119983123 983120983122983119983107983109983123983123983119983123 983107983119983117983120983119983118983108983119 983125983117 983120983122983119983107983109983123983123983119 983109983116983109983117983109983118983124983105983122 (983123983125983106983108983113983126983113983123983235983119 983108983109 983110983125983118983107983113983119983118983105983116983113983108983105983108983109983123) 983086983086983086983086983086983086 983090983090

98309211983097 983107983119983118983123983125983116983124983105983123 983113983117983120983116983245983107983113983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 4 de 45

9830921110 983107983119983118983124983105983111983109983117 983108983109 983110983125983118983239983253983109983123 983120983105983122983105 983107983119983118983126983109983122983123983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

9830921111 983120983122983119983114983109983124983119983123 983108983109 983117983113983111983122983105983239983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921112 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 (983117983105983118983125983124983109983118983239983235983119 983109983126983119983116983125983124983113983126983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921113 983117983125983108983105983118983239983105 983109983123983124983122983125983124983125983122983105983116 983109983117 983105983122983121983125983113983126983119983123 983116983251983111983113983107983119983123 983120983105983122983105 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309211131 983113983117983120983105983107983124983119 983108983105983123 983105983116983124983109983122983105983239983253983109983123 983108983105983123 983107983105983122983105983107983124983109983122983245983123983124983113983107983105983123 983108983109 983113983124983109983118983123 983108983109 983108983105983108983119983123 983108983109 983125983117 983105983116983113 983118983105983123 983110983125983118983239983253983109983123

983124983122983105983118983123983105983107983113983119983118983105983113983123 983121983125983109 983119 983117983105983118983124983241983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309212 983113983124983109983118983123 983118983235983119 983117983109983118983123983125983122983233983126983109983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

983092121 983117983105983118983125983124983109983118983239983235983119 983107983119983122983122983109983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

9830921211 983123983113983123983124983109983117983105 983123983109983117 983108983119983107983125983117983109983118983124983105983239983235983119 983108983109983123983105983124983125983105983116983113983130983105983108983105 983119983125 983113983118983107983119983117983120983116983109983124983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

9830921212 983123983113983123983124983109983117983105 983107983119983117 983108983119983107983125983117983109983118983124983105983239983235983119 983107983119983117983120983116983109983124983105 983109 983105983124983125983105983116983113983130983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

983092122 983117983105983118983125983124983109983118983239983235983119 983108983109 983113983118983124983109983122983110983105983107983109 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

983092123 983117983105983118983125983124983109983118983239983235983119 983109983117 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

98309212983092 983105983124983125983105983116983113983130983105983239983235983119 983108983109 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983093 983117983109983118983123983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983094 983120983122983119983111983122983105983117983105983123 983105983125983128983113983116983113983105983122983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983088

98309213 983117983125983108983105983118983239983105 983108983109 983122983109983121983125983113983123983113983124983119983123 983108983125983122983105983118983124983109 983119 983120983122983119983114983109983124983119 983108983109 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983119983125 983117983105983118983125983124983109983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983089 983092131 983117983125983108983105983118983239983105983123 983105983123983123983119983107983113983105983108983105983123 983105983119 983108983119983117983245983118983113983119 983108983119 983118983109983111983251983107983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983090

983092132 983108983109983123983113983123983124983242983118983107983113983105 983108983109 983113983118983107983116983125983113983122 983105983116983124983109983122983105983122 983119983125 983109983128983107983116983125983113983122 983125983117983105 983110983125983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983093

9830921983092 983107983119983118983124983105983111983109983117 983108983109 983120983119983118983124983119983123 983108983109 983110983125983118983239983235983119 983118983119 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983108983109 983123983119983110983124983127983105983122983109 983107983119983117 983117983241983124983119983108983119983123 983233983111983109983113983123 983086983086983086983086983086983086983086983086983086983086983086 983091983093

983093 983108983113983107983105983123 983120983105983122983105 983119983124983113983117983113983130983105983122 983119 983107983125983123983124983119 983108983105983123 983117983105983118983125983124983109983118983239983253983109983123 9830922

983094 983109983118983124983122983109983111983105 983108983105 983107983119983118983124983105983111983109983117 9830923

983095 983111983116983119983123983123983233983122983113983119 9830923

983096 983120983122983119983107983109983123983123983119 983108983109 983122983109983126983113983123983235983119 983108983119 983111983125983113983105 983108983109 983107983119983118983124983105983111983109983117 983092983092

9830961 983122983109983126983113983123983235983119 983120983105983122983105 983107983119983122983122983109983239983235983119 983108983109 983113983118983107983119983118983123983113983123983124983242983118983107983113983105983123 983109 983123983113983124983125983105983239983253983109983123 983118983235983119 983120983122983109983126983113983123983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

9830962 983122983109983126983113983123983235983119 983120983105983122983105 983105983108983119983239983235983119 983108983109 983118983119983126983105983123 983126983109983122983123983253983109983123 983108983119 983107983120983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

983097 983122983109983110983109983122983242983118983107983113983105983123 983106983113983106983116983113983119983111983122983233983110983113983107983105983123 983092983092

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 5 de 45

1 Objetivo

Este documento tem como propoacutesito apresentar o Guia de Contagem dePontos de Funccedilatildeo proposto pelo Ministeacuterio do Planejamento Orccedilamento e

Gestatildeo (MP) para a aplicaccedilatildeo no contexto de desenvolvimento e manutenccedilatildeode softwares do MP Este guia funciona como um complemento ao Manual dePraacuteticas de Contagem do IFPUG (International Function Point Users GrouP-wwwifpucom ) procurando tornar mais praacutetico o uso dos conceitos e regrasdefinidos pelo IFPUG exemplificando situaccedilotildees especiacuteficas do MP eapresentando situaccedilotildees em que o IFPUG natildeo oferece orientaccedilatildeo praacutetica ouobjetiva

2 Referecircncias Principais

21 Counting Practices Manual do IFPUG (CPM)

O Manual de Praacuteticas de Contagem do IFPUG que estabelece o padratildeopara a contagem de pontos de funccedilatildeo especifica um conjunto de definiccedilotildeesregras e passos para a aplicaccedilatildeo do meacutetodo de mediccedilatildeo funcional do IFPUGO MP adotaraacute como referecircncia a versatildeo 431 podendo adotar no futuro novasversotildees conforme descrito no toacutepico Processo de Revisatildeo para Adoccedilatildeo deNovas Versotildees do CPM

22 Roteiro de Meacutetricas de Software do SISP (Roteiro SISP)

O Roteiro de Meacutetricas de Software do SISP (Roteiro SISP) tem o objetivo de

apresentar meacutetricas com base nas regras de contagens de pontos de funccedilatildeodo CPM para vaacuterios tipos de projetos de desenvolvimento e manutenccedilatildeo desoftware promovendo o uso de meacutetricas objetivas em contratos de prestaccedilatildeode serviccedilos de desenvolvimento e manutenccedilatildeo de sistemas

O Roteiro SISP (versatildeo mais atual) deve ser aplicado de formacomplementar a este guia de contagem Ocorrendo ambiguidade entre asinformaccedilotildees descritas neste guia e no Roteiro SISP devem prevalecer asregras estipuladas neste guia

No caso de publicaccedilatildeo de nova versatildeo do Roteiro SISP as contratadasteratildeo o prazo estipulado pelo MP poreacutem nunca inferior a 30 dias corridos paraadequarem-se agrave nova versatildeo

3 IntroduccedilatildeoA Anaacutelise de Pontos de Funccedilatildeo eacute uma teacutecnica de mediccedilatildeo das

funcionalidades de um software sob o ponto de vista do usuaacuterio ou sejadetermina o tamanho funcional do software Segundo o CPM a teacutecnica mede osoftware quantificando as tarefas e serviccedilos (isto eacute funcionalidade) que osoftware fornece ao usuaacuterio primordialmente com base no projeto loacutegicoOs objetivos da anaacutelise de pontos de funccedilatildeo satildeo

bull Medir a funcionalidade implementada no software que o usuaacuterio solicitae recebe e

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 6 de 45

bull Medir a funcionalidade impactada pelo desenvolvimento melhoria emanutenccedilatildeo de software independentemente da tecnologia utilizada naimplementaccedilatildeo

O Ponto de Funccedilatildeo (PF) eacute a unidade de medida que tem por objetivo tornara mediccedilatildeo independente da tecnologia utilizada para a construccedilatildeo do softwareEssa medida estaacute diretamente relacionada aos requisitos de negoacutecio que osoftware se destina a abordar ou seja busca medir o que o software faz e natildeocomo ele foi construiacutedo Portanto pode ser facilmente aplicada em uma amplagama de ambientes de desenvolvimento e ao longo do ciclo de um projeto dedesenvolvimento desde a definiccedilatildeo de requisitos ateacute o uso operacionalcompleto A teacutecnica fornece uma medida objetiva e comparativa que auxilia naavaliaccedilatildeo planejamento gestatildeo e controle da produccedilatildeo de software

4 Entendimento da Teacutecnica

A figura abaixo ilustra o procedimento de contagem de pontos de funccedilatildeo

41 Obter documentaccedilatildeo disponiacutevel do projetoA contagem de pontos de funccedilatildeo se inicia com a anaacutelise da

documentaccedilatildeo disponiacutevel do projeto em questatildeo visando agrave identificaccedilatildeo dosrequisitos funcionais

42 Propoacutesito da Contagem

Uma contagem deve prover uma resposta a um problema do negoacutecio e eacuteo problema do negoacutecio que determina o propoacutesito O objetivo nesta etapa eacutetornar claro o que se pretende atingir com a contagem que seraacute feita

Exemplos de propoacutesito satildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 3: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 3 de 45

Sumaacuterio

983123983125983117983233983122983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091

1 983119983106983114983109983124983113983126983119 983093

2 983122983109983110983109983122983242983118983107983113983105983123 983120983122983113983118983107983113983120983105983113983123 983093

21 983107983119983125983118983124983113983118983111 983120983122983105983107983124983113983107983109983123 983117983105983118983125983105983116 983108983119 983113983110983120983125983111 (983107983120983117) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983093

22 983122983119983124983109983113983122983119 983108983109 983117983241983124983122983113983107983105983123 983108983109 983123983119983110983124983127983105983122983109 983108983119 983123983113983123983120 (983122983119983124983109983113983122983119 983123983113983123983120)983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086 983093

3 983113983118983124983122983119983108983125983239983235983119 983093

983092 983109983118983124983109983118983108983113983117983109983118983124983119 983108983105 983124983241983107983118983113983107983105 983094

9830922 983120983122983119983120983251983123983113983124983119 983108983105 983107983119983118983124983105983111983109983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983094

9830923 983124983113983120983119 983108983109 983107983119983118983124983105983111983109983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983095

983092983092 983109983123983107983119983120983119 983108983105 983105983120983116983113983107983105983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983095

983092983093 983126983113983123983235983119 983108983119 983125983123983125983233983122983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983095

983092983094 983110983122983119983118983124983109983113983122983105 983108983105 983105983120983116983113983107983105983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086 983096

983092983095 983110983125983118983239983253983109983123 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983097

9830929830951 983105983122983121983125983113983126983119 983116983251983111983113983107983119 983113983118983124983109983122983118983119 (983105983116983113) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086 983089983088

9830929830952 983105983122983121983125983113983126983119 983108983109 983113983118983124983109983122983110983105983107983109 983109983128983124983109983122983118983105 (983105983113983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830953 983122983109983111983113983123983124983122983119 983116983251983111983113983107983119 983122983109983110983109983122983109983118983107983113983105983108983119 (983122983116983122 983119983125 983124983122) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

983092983096 983110983125983118983239983253983109983123 983124983122983105983118983123983105983107983113983119983118983105983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830961 983109983118983124983122983105983108983105 983109983128983124983109983122983118983105 (983109983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830962 983107983119983118983123983125983116983124983105 983109983128983124983109983122983118983105 (983107983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

9830929830963 983123983105983245983108983105 983109983128983124983109983122983118983105 (983123983109) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983088

983092983097 983118983245983126983109983116 983108983109 983108983109983124983105983116983112983105983117983109983118983124983119 983108983109 983107983119983118983124983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983089

9830929830971 983107983119983118983124983105983111983109983117 983113983118983108983113983107983105983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983089 9830929830972 983107983119983118983124983105983111983109983117 983109983123983124983113983117983105983108983105983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983090

9830929830973 983107983119983118983124983105983111983109983117 983108983109983124983105983116983112983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983090

98309210 983110983105983124983119983122 983108983109 983105983114983125983123983124983109983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983091

98309211 983119983122983113983109983118983124983105983239983253983109983123 983120983105983122983105 983105983123 983107983119983118983124983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983089983091

983092111 983108983105983108983119 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983091

983092112 983116983119983111 983124983122983113983116983112983105 983108983109 983105983125983108983113983124983119983122983113983105 983122983109983111983113983123983124983122983119 983108983109 983109983126983109983118983124983119983123 983109 983112983113983123983124983251983122983113983107983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983092

9830921121 983112983113983123983124983251983122983113983107983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983092

9830921122 983122983109983111983113983123983124983122983119 983108983109 983109983126983109983118983124983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086 983089983092

9830921123 983116983119983111 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983093

983092112983092 983124983122983113983116983112983105 983108983109 983105983125983108983113983124983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086 983089983093

983092113 983107983119983118983123983125983116983124983105983123 983107983119983117 983110983113983116983124983122983119983123 983108983113983110983109983122983109983118983124983109983123 983109 983107983119983117 983105983123 983117983109983123983117983105983123 983123983105983245983108983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983093

98309211983092 983107983119983118983123983125983116983124983105983123 983107983119983117 983110983113983116983124983122983119983123 983113983111983125983105983113983123 983109 983107983119983117 983123983105983245983108983105983123 983108983113983110983109983122983109983118983124983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

98309211983093 983113983118983124983109983111983122983105983239983235983119 983109983118983124983122983109 983105983120983116983113983107983105983239983253983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

983092119830931 983107983109983118983233983122983113983119 1 (983123983113983123983124983109983117983105 991260983105991261 983122983109983121983125983113983123983113983124983105 983108983105983108983119983123 983108983119 983123983113983123983124983109983117983105 991260983106) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983094

983092119830932 983107983109983118983233983122983113983119 2 (983123983113983123983124983109983117983105 991260983106991261 983110983119983122983118983109983107983109 983108983105983108983119983123 983120983105983122983105 983119 983123983113983123983124983109983117983105 991260983105991261 ) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983095

983092119830933 983107983109983118983233983122983113983119 3 (983108983113983123983120983119983118983113983106983113983116983113983130983105983239983235983119 983109 983107983119983118983123983125983117983119 983108983109 983108983105983108983119983123 983108983109983118983124983122983119 983108983105 983117983109983123983117983105 983110983122983119983118983124983109983113983122983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086 983089983096

98309211983093983092 983113983108983109983118983124983113983110983113983107983105983239983235983119 983108983119 983106983105983122983122983105983117983109983118983124983119 983107983119983117983119 983125983117983105 983110983122983119983118983124983109983113983122983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983096

98309211983093983093 983107983119983118983110983113983111983125983122983105983239983235983119983107983125983123983124983119983117983113983130983105983239983235983119 983108983109 983110983109983122983122983105983117983109983118983124983105 983108983109 983106983105983122983122983105983117983109983118983124983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983097

98309211983094 983117983105983118983125983124983109983118983239983235983119 983108983109 983107983119983117983120983119983118983109983118983124983109 983122983109983125983124983113983116983113983130983233983126983109983116 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983089983097

98309211983095 983117983258983116983124983113983120983116983105983123 983117983245983108983113983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086 983090983088

98309211983096

983117983258983116983124983113983120983116983119983123 983120983122983119983107983109983123983123983119983123 983107983119983117983120983119983118983108983119 983125983117 983120983122983119983107983109983123983123983119 983109983116983109983117983109983118983124983105983122 (983123983125983106983108983113983126983113983123983235983119 983108983109 983110983125983118983107983113983119983118983105983116983113983108983105983108983109983123) 983086983086983086983086983086983086 983090983090

98309211983097 983107983119983118983123983125983116983124983105983123 983113983117983120983116983245983107983113983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 4 de 45

9830921110 983107983119983118983124983105983111983109983117 983108983109 983110983125983118983239983253983109983123 983120983105983122983105 983107983119983118983126983109983122983123983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

9830921111 983120983122983119983114983109983124983119983123 983108983109 983117983113983111983122983105983239983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921112 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 (983117983105983118983125983124983109983118983239983235983119 983109983126983119983116983125983124983113983126983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921113 983117983125983108983105983118983239983105 983109983123983124983122983125983124983125983122983105983116 983109983117 983105983122983121983125983113983126983119983123 983116983251983111983113983107983119983123 983120983105983122983105 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309211131 983113983117983120983105983107983124983119 983108983105983123 983105983116983124983109983122983105983239983253983109983123 983108983105983123 983107983105983122983105983107983124983109983122983245983123983124983113983107983105983123 983108983109 983113983124983109983118983123 983108983109 983108983105983108983119983123 983108983109 983125983117 983105983116983113 983118983105983123 983110983125983118983239983253983109983123

983124983122983105983118983123983105983107983113983119983118983105983113983123 983121983125983109 983119 983117983105983118983124983241983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309212 983113983124983109983118983123 983118983235983119 983117983109983118983123983125983122983233983126983109983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

983092121 983117983105983118983125983124983109983118983239983235983119 983107983119983122983122983109983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

9830921211 983123983113983123983124983109983117983105 983123983109983117 983108983119983107983125983117983109983118983124983105983239983235983119 983108983109983123983105983124983125983105983116983113983130983105983108983105 983119983125 983113983118983107983119983117983120983116983109983124983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

9830921212 983123983113983123983124983109983117983105 983107983119983117 983108983119983107983125983117983109983118983124983105983239983235983119 983107983119983117983120983116983109983124983105 983109 983105983124983125983105983116983113983130983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

983092122 983117983105983118983125983124983109983118983239983235983119 983108983109 983113983118983124983109983122983110983105983107983109 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

983092123 983117983105983118983125983124983109983118983239983235983119 983109983117 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

98309212983092 983105983124983125983105983116983113983130983105983239983235983119 983108983109 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983093 983117983109983118983123983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983094 983120983122983119983111983122983105983117983105983123 983105983125983128983113983116983113983105983122983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983088

98309213 983117983125983108983105983118983239983105 983108983109 983122983109983121983125983113983123983113983124983119983123 983108983125983122983105983118983124983109 983119 983120983122983119983114983109983124983119 983108983109 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983119983125 983117983105983118983125983124983109983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983089 983092131 983117983125983108983105983118983239983105983123 983105983123983123983119983107983113983105983108983105983123 983105983119 983108983119983117983245983118983113983119 983108983119 983118983109983111983251983107983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983090

983092132 983108983109983123983113983123983124983242983118983107983113983105 983108983109 983113983118983107983116983125983113983122 983105983116983124983109983122983105983122 983119983125 983109983128983107983116983125983113983122 983125983117983105 983110983125983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983093

9830921983092 983107983119983118983124983105983111983109983117 983108983109 983120983119983118983124983119983123 983108983109 983110983125983118983239983235983119 983118983119 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983108983109 983123983119983110983124983127983105983122983109 983107983119983117 983117983241983124983119983108983119983123 983233983111983109983113983123 983086983086983086983086983086983086983086983086983086983086983086 983091983093

983093 983108983113983107983105983123 983120983105983122983105 983119983124983113983117983113983130983105983122 983119 983107983125983123983124983119 983108983105983123 983117983105983118983125983124983109983118983239983253983109983123 9830922

983094 983109983118983124983122983109983111983105 983108983105 983107983119983118983124983105983111983109983117 9830923

983095 983111983116983119983123983123983233983122983113983119 9830923

983096 983120983122983119983107983109983123983123983119 983108983109 983122983109983126983113983123983235983119 983108983119 983111983125983113983105 983108983109 983107983119983118983124983105983111983109983117 983092983092

9830961 983122983109983126983113983123983235983119 983120983105983122983105 983107983119983122983122983109983239983235983119 983108983109 983113983118983107983119983118983123983113983123983124983242983118983107983113983105983123 983109 983123983113983124983125983105983239983253983109983123 983118983235983119 983120983122983109983126983113983123983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

9830962 983122983109983126983113983123983235983119 983120983105983122983105 983105983108983119983239983235983119 983108983109 983118983119983126983105983123 983126983109983122983123983253983109983123 983108983119 983107983120983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

983097 983122983109983110983109983122983242983118983107983113983105983123 983106983113983106983116983113983119983111983122983233983110983113983107983105983123 983092983092

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 5 de 45

1 Objetivo

Este documento tem como propoacutesito apresentar o Guia de Contagem dePontos de Funccedilatildeo proposto pelo Ministeacuterio do Planejamento Orccedilamento e

Gestatildeo (MP) para a aplicaccedilatildeo no contexto de desenvolvimento e manutenccedilatildeode softwares do MP Este guia funciona como um complemento ao Manual dePraacuteticas de Contagem do IFPUG (International Function Point Users GrouP-wwwifpucom ) procurando tornar mais praacutetico o uso dos conceitos e regrasdefinidos pelo IFPUG exemplificando situaccedilotildees especiacuteficas do MP eapresentando situaccedilotildees em que o IFPUG natildeo oferece orientaccedilatildeo praacutetica ouobjetiva

2 Referecircncias Principais

21 Counting Practices Manual do IFPUG (CPM)

O Manual de Praacuteticas de Contagem do IFPUG que estabelece o padratildeopara a contagem de pontos de funccedilatildeo especifica um conjunto de definiccedilotildeesregras e passos para a aplicaccedilatildeo do meacutetodo de mediccedilatildeo funcional do IFPUGO MP adotaraacute como referecircncia a versatildeo 431 podendo adotar no futuro novasversotildees conforme descrito no toacutepico Processo de Revisatildeo para Adoccedilatildeo deNovas Versotildees do CPM

22 Roteiro de Meacutetricas de Software do SISP (Roteiro SISP)

O Roteiro de Meacutetricas de Software do SISP (Roteiro SISP) tem o objetivo de

apresentar meacutetricas com base nas regras de contagens de pontos de funccedilatildeodo CPM para vaacuterios tipos de projetos de desenvolvimento e manutenccedilatildeo desoftware promovendo o uso de meacutetricas objetivas em contratos de prestaccedilatildeode serviccedilos de desenvolvimento e manutenccedilatildeo de sistemas

O Roteiro SISP (versatildeo mais atual) deve ser aplicado de formacomplementar a este guia de contagem Ocorrendo ambiguidade entre asinformaccedilotildees descritas neste guia e no Roteiro SISP devem prevalecer asregras estipuladas neste guia

No caso de publicaccedilatildeo de nova versatildeo do Roteiro SISP as contratadasteratildeo o prazo estipulado pelo MP poreacutem nunca inferior a 30 dias corridos paraadequarem-se agrave nova versatildeo

3 IntroduccedilatildeoA Anaacutelise de Pontos de Funccedilatildeo eacute uma teacutecnica de mediccedilatildeo das

funcionalidades de um software sob o ponto de vista do usuaacuterio ou sejadetermina o tamanho funcional do software Segundo o CPM a teacutecnica mede osoftware quantificando as tarefas e serviccedilos (isto eacute funcionalidade) que osoftware fornece ao usuaacuterio primordialmente com base no projeto loacutegicoOs objetivos da anaacutelise de pontos de funccedilatildeo satildeo

bull Medir a funcionalidade implementada no software que o usuaacuterio solicitae recebe e

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 6 de 45

bull Medir a funcionalidade impactada pelo desenvolvimento melhoria emanutenccedilatildeo de software independentemente da tecnologia utilizada naimplementaccedilatildeo

O Ponto de Funccedilatildeo (PF) eacute a unidade de medida que tem por objetivo tornara mediccedilatildeo independente da tecnologia utilizada para a construccedilatildeo do softwareEssa medida estaacute diretamente relacionada aos requisitos de negoacutecio que osoftware se destina a abordar ou seja busca medir o que o software faz e natildeocomo ele foi construiacutedo Portanto pode ser facilmente aplicada em uma amplagama de ambientes de desenvolvimento e ao longo do ciclo de um projeto dedesenvolvimento desde a definiccedilatildeo de requisitos ateacute o uso operacionalcompleto A teacutecnica fornece uma medida objetiva e comparativa que auxilia naavaliaccedilatildeo planejamento gestatildeo e controle da produccedilatildeo de software

4 Entendimento da Teacutecnica

A figura abaixo ilustra o procedimento de contagem de pontos de funccedilatildeo

41 Obter documentaccedilatildeo disponiacutevel do projetoA contagem de pontos de funccedilatildeo se inicia com a anaacutelise da

documentaccedilatildeo disponiacutevel do projeto em questatildeo visando agrave identificaccedilatildeo dosrequisitos funcionais

42 Propoacutesito da Contagem

Uma contagem deve prover uma resposta a um problema do negoacutecio e eacuteo problema do negoacutecio que determina o propoacutesito O objetivo nesta etapa eacutetornar claro o que se pretende atingir com a contagem que seraacute feita

Exemplos de propoacutesito satildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 4: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 4 de 45

9830921110 983107983119983118983124983105983111983109983117 983108983109 983110983125983118983239983253983109983123 983120983105983122983105 983107983119983118983126983109983122983123983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983091

9830921111 983120983122983119983114983109983124983119983123 983108983109 983117983113983111983122983105983239983235983119 983108983109 983108983105983108983119983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921112 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 (983117983105983118983125983124983109983118983239983235983119 983109983126983119983116983125983124983113983126983105) 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983092

9830921113 983117983125983108983105983118983239983105 983109983123983124983122983125983124983125983122983105983116 983109983117 983105983122983121983125983113983126983119983123 983116983251983111983113983107983119983123 983120983105983122983105 983120983122983119983114983109983124983119983123 983108983109 983117983109983116983112983119983122983113983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309211131 983113983117983120983105983107983124983119 983108983105983123 983105983116983124983109983122983105983239983253983109983123 983108983105983123 983107983105983122983105983107983124983109983122983245983123983124983113983107983105983123 983108983109 983113983124983109983118983123 983108983109 983108983105983108983119983123 983108983109 983125983117 983105983116983113 983118983105983123 983110983125983118983239983253983109983123

983124983122983105983118983123983105983107983113983119983118983105983113983123 983121983125983109 983119 983117983105983118983124983241983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983093

98309212 983113983124983109983118983123 983118983235983119 983117983109983118983123983125983122983233983126983109983113983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

983092121 983117983105983118983125983124983109983118983239983235983119 983107983119983122983122983109983124983113983126983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983094

9830921211 983123983113983123983124983109983117983105 983123983109983117 983108983119983107983125983117983109983118983124983105983239983235983119 983108983109983123983105983124983125983105983116983113983130983105983108983105 983119983125 983113983118983107983119983117983120983116983109983124983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

9830921212 983123983113983123983124983109983117983105 983107983119983117 983108983119983107983125983117983109983118983124983105983239983235983119 983107983119983117983120983116983109983124983105 983109 983105983124983125983105983116983113983130983105983108983105 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983095

983092122 983117983105983118983125983124983109983118983239983235983119 983108983109 983113983118983124983109983122983110983105983107983109 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

983092123 983117983105983118983125983124983109983118983239983235983119 983109983117 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983096

98309212983092 983105983124983125983105983116983113983130983105983239983235983119 983108983109 983108983105983108983119983123 983108983109 983107983251983108983113983111983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983093 983117983109983118983123983105983111983109983118983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983090983097

98309212983094 983120983122983119983111983122983105983117983105983123 983105983125983128983113983116983113983105983122983109983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983088

98309213 983117983125983108983105983118983239983105 983108983109 983122983109983121983125983113983123983113983124983119983123 983108983125983122983105983118983124983109 983119 983120983122983119983114983109983124983119 983108983109 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983119983125 983117983105983118983125983124983109983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983089 983092131 983117983125983108983105983118983239983105983123 983105983123983123983119983107983113983105983108983105983123 983105983119 983108983119983117983245983118983113983119 983108983119 983118983109983111983251983107983113983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983090

983092132 983108983109983123983113983123983124983242983118983107983113983105 983108983109 983113983118983107983116983125983113983122 983105983116983124983109983122983105983122 983119983125 983109983128983107983116983125983113983122 983125983117983105 983110983125983118983239983235983119 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983091983093

9830921983092 983107983119983118983124983105983111983109983117 983108983109 983120983119983118983124983119983123 983108983109 983110983125983118983239983235983119 983118983119 983108983109983123983109983118983126983119983116983126983113983117983109983118983124983119 983108983109 983123983119983110983124983127983105983122983109 983107983119983117 983117983241983124983119983108983119983123 983233983111983109983113983123 983086983086983086983086983086983086983086983086983086983086983086 983091983093

983093 983108983113983107983105983123 983120983105983122983105 983119983124983113983117983113983130983105983122 983119 983107983125983123983124983119 983108983105983123 983117983105983118983125983124983109983118983239983253983109983123 9830922

983094 983109983118983124983122983109983111983105 983108983105 983107983119983118983124983105983111983109983117 9830923

983095 983111983116983119983123983123983233983122983113983119 9830923

983096 983120983122983119983107983109983123983123983119 983108983109 983122983109983126983113983123983235983119 983108983119 983111983125983113983105 983108983109 983107983119983118983124983105983111983109983117 983092983092

9830961 983122983109983126983113983123983235983119 983120983105983122983105 983107983119983122983122983109983239983235983119 983108983109 983113983118983107983119983118983123983113983123983124983242983118983107983113983105983123 983109 983123983113983124983125983105983239983253983109983123 983118983235983119 983120983122983109983126983113983123983124983105983123 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

9830962 983122983109983126983113983123983235983119 983120983105983122983105 983105983108983119983239983235983119 983108983109 983118983119983126983105983123 983126983109983122983123983253983109983123 983108983119 983107983120983117 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086983086 983092983092

983097 983122983109983110983109983122983242983118983107983113983105983123 983106983113983106983116983113983119983111983122983233983110983113983107983105983123 983092983092

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 5 de 45

1 Objetivo

Este documento tem como propoacutesito apresentar o Guia de Contagem dePontos de Funccedilatildeo proposto pelo Ministeacuterio do Planejamento Orccedilamento e

Gestatildeo (MP) para a aplicaccedilatildeo no contexto de desenvolvimento e manutenccedilatildeode softwares do MP Este guia funciona como um complemento ao Manual dePraacuteticas de Contagem do IFPUG (International Function Point Users GrouP-wwwifpucom ) procurando tornar mais praacutetico o uso dos conceitos e regrasdefinidos pelo IFPUG exemplificando situaccedilotildees especiacuteficas do MP eapresentando situaccedilotildees em que o IFPUG natildeo oferece orientaccedilatildeo praacutetica ouobjetiva

2 Referecircncias Principais

21 Counting Practices Manual do IFPUG (CPM)

O Manual de Praacuteticas de Contagem do IFPUG que estabelece o padratildeopara a contagem de pontos de funccedilatildeo especifica um conjunto de definiccedilotildeesregras e passos para a aplicaccedilatildeo do meacutetodo de mediccedilatildeo funcional do IFPUGO MP adotaraacute como referecircncia a versatildeo 431 podendo adotar no futuro novasversotildees conforme descrito no toacutepico Processo de Revisatildeo para Adoccedilatildeo deNovas Versotildees do CPM

22 Roteiro de Meacutetricas de Software do SISP (Roteiro SISP)

O Roteiro de Meacutetricas de Software do SISP (Roteiro SISP) tem o objetivo de

apresentar meacutetricas com base nas regras de contagens de pontos de funccedilatildeodo CPM para vaacuterios tipos de projetos de desenvolvimento e manutenccedilatildeo desoftware promovendo o uso de meacutetricas objetivas em contratos de prestaccedilatildeode serviccedilos de desenvolvimento e manutenccedilatildeo de sistemas

O Roteiro SISP (versatildeo mais atual) deve ser aplicado de formacomplementar a este guia de contagem Ocorrendo ambiguidade entre asinformaccedilotildees descritas neste guia e no Roteiro SISP devem prevalecer asregras estipuladas neste guia

No caso de publicaccedilatildeo de nova versatildeo do Roteiro SISP as contratadasteratildeo o prazo estipulado pelo MP poreacutem nunca inferior a 30 dias corridos paraadequarem-se agrave nova versatildeo

3 IntroduccedilatildeoA Anaacutelise de Pontos de Funccedilatildeo eacute uma teacutecnica de mediccedilatildeo das

funcionalidades de um software sob o ponto de vista do usuaacuterio ou sejadetermina o tamanho funcional do software Segundo o CPM a teacutecnica mede osoftware quantificando as tarefas e serviccedilos (isto eacute funcionalidade) que osoftware fornece ao usuaacuterio primordialmente com base no projeto loacutegicoOs objetivos da anaacutelise de pontos de funccedilatildeo satildeo

bull Medir a funcionalidade implementada no software que o usuaacuterio solicitae recebe e

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 6 de 45

bull Medir a funcionalidade impactada pelo desenvolvimento melhoria emanutenccedilatildeo de software independentemente da tecnologia utilizada naimplementaccedilatildeo

O Ponto de Funccedilatildeo (PF) eacute a unidade de medida que tem por objetivo tornara mediccedilatildeo independente da tecnologia utilizada para a construccedilatildeo do softwareEssa medida estaacute diretamente relacionada aos requisitos de negoacutecio que osoftware se destina a abordar ou seja busca medir o que o software faz e natildeocomo ele foi construiacutedo Portanto pode ser facilmente aplicada em uma amplagama de ambientes de desenvolvimento e ao longo do ciclo de um projeto dedesenvolvimento desde a definiccedilatildeo de requisitos ateacute o uso operacionalcompleto A teacutecnica fornece uma medida objetiva e comparativa que auxilia naavaliaccedilatildeo planejamento gestatildeo e controle da produccedilatildeo de software

4 Entendimento da Teacutecnica

A figura abaixo ilustra o procedimento de contagem de pontos de funccedilatildeo

41 Obter documentaccedilatildeo disponiacutevel do projetoA contagem de pontos de funccedilatildeo se inicia com a anaacutelise da

documentaccedilatildeo disponiacutevel do projeto em questatildeo visando agrave identificaccedilatildeo dosrequisitos funcionais

42 Propoacutesito da Contagem

Uma contagem deve prover uma resposta a um problema do negoacutecio e eacuteo problema do negoacutecio que determina o propoacutesito O objetivo nesta etapa eacutetornar claro o que se pretende atingir com a contagem que seraacute feita

Exemplos de propoacutesito satildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 5: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 5 de 45

1 Objetivo

Este documento tem como propoacutesito apresentar o Guia de Contagem dePontos de Funccedilatildeo proposto pelo Ministeacuterio do Planejamento Orccedilamento e

Gestatildeo (MP) para a aplicaccedilatildeo no contexto de desenvolvimento e manutenccedilatildeode softwares do MP Este guia funciona como um complemento ao Manual dePraacuteticas de Contagem do IFPUG (International Function Point Users GrouP-wwwifpucom ) procurando tornar mais praacutetico o uso dos conceitos e regrasdefinidos pelo IFPUG exemplificando situaccedilotildees especiacuteficas do MP eapresentando situaccedilotildees em que o IFPUG natildeo oferece orientaccedilatildeo praacutetica ouobjetiva

2 Referecircncias Principais

21 Counting Practices Manual do IFPUG (CPM)

O Manual de Praacuteticas de Contagem do IFPUG que estabelece o padratildeopara a contagem de pontos de funccedilatildeo especifica um conjunto de definiccedilotildeesregras e passos para a aplicaccedilatildeo do meacutetodo de mediccedilatildeo funcional do IFPUGO MP adotaraacute como referecircncia a versatildeo 431 podendo adotar no futuro novasversotildees conforme descrito no toacutepico Processo de Revisatildeo para Adoccedilatildeo deNovas Versotildees do CPM

22 Roteiro de Meacutetricas de Software do SISP (Roteiro SISP)

O Roteiro de Meacutetricas de Software do SISP (Roteiro SISP) tem o objetivo de

apresentar meacutetricas com base nas regras de contagens de pontos de funccedilatildeodo CPM para vaacuterios tipos de projetos de desenvolvimento e manutenccedilatildeo desoftware promovendo o uso de meacutetricas objetivas em contratos de prestaccedilatildeode serviccedilos de desenvolvimento e manutenccedilatildeo de sistemas

O Roteiro SISP (versatildeo mais atual) deve ser aplicado de formacomplementar a este guia de contagem Ocorrendo ambiguidade entre asinformaccedilotildees descritas neste guia e no Roteiro SISP devem prevalecer asregras estipuladas neste guia

No caso de publicaccedilatildeo de nova versatildeo do Roteiro SISP as contratadasteratildeo o prazo estipulado pelo MP poreacutem nunca inferior a 30 dias corridos paraadequarem-se agrave nova versatildeo

3 IntroduccedilatildeoA Anaacutelise de Pontos de Funccedilatildeo eacute uma teacutecnica de mediccedilatildeo das

funcionalidades de um software sob o ponto de vista do usuaacuterio ou sejadetermina o tamanho funcional do software Segundo o CPM a teacutecnica mede osoftware quantificando as tarefas e serviccedilos (isto eacute funcionalidade) que osoftware fornece ao usuaacuterio primordialmente com base no projeto loacutegicoOs objetivos da anaacutelise de pontos de funccedilatildeo satildeo

bull Medir a funcionalidade implementada no software que o usuaacuterio solicitae recebe e

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 6 de 45

bull Medir a funcionalidade impactada pelo desenvolvimento melhoria emanutenccedilatildeo de software independentemente da tecnologia utilizada naimplementaccedilatildeo

O Ponto de Funccedilatildeo (PF) eacute a unidade de medida que tem por objetivo tornara mediccedilatildeo independente da tecnologia utilizada para a construccedilatildeo do softwareEssa medida estaacute diretamente relacionada aos requisitos de negoacutecio que osoftware se destina a abordar ou seja busca medir o que o software faz e natildeocomo ele foi construiacutedo Portanto pode ser facilmente aplicada em uma amplagama de ambientes de desenvolvimento e ao longo do ciclo de um projeto dedesenvolvimento desde a definiccedilatildeo de requisitos ateacute o uso operacionalcompleto A teacutecnica fornece uma medida objetiva e comparativa que auxilia naavaliaccedilatildeo planejamento gestatildeo e controle da produccedilatildeo de software

4 Entendimento da Teacutecnica

A figura abaixo ilustra o procedimento de contagem de pontos de funccedilatildeo

41 Obter documentaccedilatildeo disponiacutevel do projetoA contagem de pontos de funccedilatildeo se inicia com a anaacutelise da

documentaccedilatildeo disponiacutevel do projeto em questatildeo visando agrave identificaccedilatildeo dosrequisitos funcionais

42 Propoacutesito da Contagem

Uma contagem deve prover uma resposta a um problema do negoacutecio e eacuteo problema do negoacutecio que determina o propoacutesito O objetivo nesta etapa eacutetornar claro o que se pretende atingir com a contagem que seraacute feita

Exemplos de propoacutesito satildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 6: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 6 de 45

bull Medir a funcionalidade impactada pelo desenvolvimento melhoria emanutenccedilatildeo de software independentemente da tecnologia utilizada naimplementaccedilatildeo

O Ponto de Funccedilatildeo (PF) eacute a unidade de medida que tem por objetivo tornara mediccedilatildeo independente da tecnologia utilizada para a construccedilatildeo do softwareEssa medida estaacute diretamente relacionada aos requisitos de negoacutecio que osoftware se destina a abordar ou seja busca medir o que o software faz e natildeocomo ele foi construiacutedo Portanto pode ser facilmente aplicada em uma amplagama de ambientes de desenvolvimento e ao longo do ciclo de um projeto dedesenvolvimento desde a definiccedilatildeo de requisitos ateacute o uso operacionalcompleto A teacutecnica fornece uma medida objetiva e comparativa que auxilia naavaliaccedilatildeo planejamento gestatildeo e controle da produccedilatildeo de software

4 Entendimento da Teacutecnica

A figura abaixo ilustra o procedimento de contagem de pontos de funccedilatildeo

41 Obter documentaccedilatildeo disponiacutevel do projetoA contagem de pontos de funccedilatildeo se inicia com a anaacutelise da

documentaccedilatildeo disponiacutevel do projeto em questatildeo visando agrave identificaccedilatildeo dosrequisitos funcionais

42 Propoacutesito da Contagem

Uma contagem deve prover uma resposta a um problema do negoacutecio e eacuteo problema do negoacutecio que determina o propoacutesito O objetivo nesta etapa eacutetornar claro o que se pretende atingir com a contagem que seraacute feita

Exemplos de propoacutesito satildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 7: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 7 de 45

bull Fornecer o tamanho funcional de um projeto como uma entrada parao processo de estimativa a fim de determinar o esforccedilo para desenvolver aprimeira versatildeo de uma aplicaccedilatildeo

bull Fornecer o tamanho funcional da base instalada das aplicaccedilotildees para

determinar os custos de sustentaccedilatildeo por ponto de funccedilatildeobull Fornecer o tamanho funcional de dois pacotes para permitir acomparaccedilatildeo de funcionalidade oferecida por cada um

43 Tipo de Contagem

O tipo de contagem eacute estabelecido pelo responsaacutevel da contagempodendo estar associada tanto a projetos quanto a aplicaccedilotildees O tipo eacutedeterminado pelo propoacutesito da contagem

Segundo o CPM haacute trecircs tipos de contagem de pontos de funccedilatildeo a

sabero Projeto de Desenvolvimento Este tipo de contagem mede a

funcionalidade entregue ao usuaacuterio na primeira instalaccedilatildeo dosoftware quando o projeto estiver completo

o Projeto de Melhoria (Enhancement ) Este tipo de contagem medeas modificaccedilotildees em uma aplicaccedilatildeo jaacute existente que adicione altereou exclua funccedilotildees entregues ao usuaacuterio quando o projeto estivercompleto

o Aplicaccedilatildeo Este tipo de contagem estaacute relacionado agrave aplicaccedilatildeoinstalada Representa a baseline da contagem de pontos de funccedilatildeo

de uma aplicaccedilatildeo ou seja eacute uma medida das funccedilotildees atuaisprovidas ao usuaacuterio

44 Escopo da aplicaccedilatildeo

Segundo o CPM o escopo da contagem define o conjunto de requisitosfuncionais de usuaacuterios para ser incluiacutedos na contagem O escopo

bull Define o (sub)conjunto do software que estaacute sendo medidobull Eacute determinado pelo propoacutesito para a realizaccedilatildeo da contagem de

pontos de funccedilatildeobull Identifica quais funccedilotildees seratildeo incluiacutedas na medida de tamanho

funcional assim como fornecer respostas relevantes para opropoacutesito da contagem

bull Pode incluir mais de uma aplicaccedilatildeo

45 Visatildeo do Usuaacuterio

Segundo o CPM um usuaacuterio eacute qualquer pessoa ou coisa que secomunica ou interage com o software a qualquer momento

A visatildeo do usuaacuterio eacute o Requisito Funcional do Usuaacuterio como percebido

pelo usuaacuterio

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 8: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 8 de 45

Requisitos Funcionais do Usuaacuterio satildeo um subconjunto dos requisitos dousuaacuterio que descrevem o que o software deveraacute fazer em termos de tarefas eserviccedilos

A visatildeo do usuaacuterio representa uma descriccedilatildeo formal das necessidades

dos negoacutecios do usuaacuterio na linguagem do usuaacuterio Os desenvolvedorestraduzem a informaccedilatildeo do usuaacuterio para informaccedilotildees em linguagem teacutecnica afim de prover uma soluccedilatildeo

No contexto da anaacutelise de pontos de funccedilatildeo o termo usuaacuterio tem umconceito mais amplo do que o usual Com isso durante uma contagem depontos de funccedilatildeo conveacutem buscar dentro de um conjunto de usuaacuterios possiacuteveisaquele cuja visatildeo represente melhor as funccedilotildees que a aplicaccedilatildeo fornece Porexemplo uma aplicaccedilatildeo de autoatendimento de um banco tem como usuaacuterioso cliente do banco o funcionaacuterio da agecircncia o gestor do departamentoresponsaacutevel Basear a contagem dessa aplicaccedilatildeo somente na visatildeo do cliente

final do banco e usuaacuterio do autoatendimento seria considerar uma visatildeolimitada da aplicaccedilatildeo Eacute fundamental levar em consideraccedilatildeo tambeacutem a visatildeo dousuaacuterio que especifica os requisitos e regras de negoacutecio neste caso o gestordo departamento

46 Fronteira da aplicaccedilatildeo

De acordo com o CPM a fronteira eacute uma interface conceitual entre osoftware sob estudo e seus usuaacuterios

A fronteira da aplicaccedilatildeo

bull Define o que eacute externo agrave aplicaccedilatildeobull Indica a fronteira entre o software que estaacute sendo medido e o

usuaacuteriobull Atua como uma lsquomembranarsquo atraveacutes da qual os dados

processados pelas transaccedilotildees (EEs SEs e CEs) passam paradentro e para fora da aplicaccedilatildeo

bull Envolve os dados loacutegicos mantidos pela aplicaccedilatildeo (ALIs)bull Auxilia na identificaccedilatildeo dos dados loacutegicos referenciados mas natildeo

mantidos pela aplicaccedilatildeo (AIEs)bull Depende da visatildeo externa do negoacutecio do usuaacuterio da aplicaccedilatildeoindependente de questotildees teacutecnicas eou implementaccedilatildeo

Assim a fronteira deve ser definida com base na perspectiva denegoacutecio nas aacutereas funcionais separadas como pode ser visto pelo usuaacuterio natildeoem consideraccedilotildees teacutecnicas (por exemplo arquitetura do sistema)

A fronteira inicial jaacute estabelecida para a aplicaccedilatildeo ou aplicaccedilotildees queestejam sendo modificadas natildeo eacute influenciada pelo escopo da contagem

Uma das dicas que o CPM descreve para a identificaccedilatildeo da fronteira eacute

obter uma documentaccedilatildeo do fluxo de dados no sistema e traccedilar uma linhaimaginaacuteria ao redor para destacar quais partes satildeo internas e externas agrave

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 9: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 9 de 45

aplicaccedilatildeo Um artefato que bem representa esse fluxo eacute o diagrama decontexto pois representa todo o sistema como um uacutenico processo e eacutecomposto por fluxos de dados que mostram as interfaces entre o sistema e asentidades externas permitindo com isso identificar os limites dos processosas aacutereas envolvidas com o processo e os relacionamentos com outrosprocessos e elementos externos agrave empresa (ex clientes fornecedores)

Quando houver mais de uma aplicaccedilatildeo incluiacuteda no escopo da contagemNesse caso muacuteltiplas fronteiras da aplicaccedilatildeo deveratildeo ser identificadas

Para o MP perfis de usuaacuterio que vatildeo utilizar o sistema distribuiccedilatildeo dasequipes de desenvolvimento e definiccedilotildees arquiteturais eou tecnoloacutegicas natildeosatildeo insumos para a definiccedilatildeo da fronteira

Quanto ao uso do documento de visatildeo o objetivo principal dele eacutefornecer uma visatildeo completa em alto niacutevel do sistema de software em

desenvolvimento Devido ao fato de este documento poder contemplarrequisitos funcionais e natildeo funcionais ainda que nele constem descritas asnecessidades requisitadas e entregues ao usuaacuterio a APF se propotildee a medirapenas os requisitos funcionais (ou de negoacutecio)

Com base nisso o MP entende e define que esse documento pode natildeoser um insumo suficiente para a definiccedilatildeo da fronteira devendo existir umaavaliaccedilatildeo mais abrangente sob a perspectiva de negoacutecio conforme definidoneste toacutepico

Diante de algum impasse na definiccedilatildeo da fronteira deve prevalecer avisatildeo de negoacutecio do usuaacuterio de acordo com o entendimento do MP uma vez

que cabe ao cliente ser o detentor do conhecimento do negoacutecio e como afronteira impacta diretamente no resultado da contagem e consequentementeem custos podem ser gerados conflitos de interesses

Como o conceito de fronteira eacute muito importante o MP reconhece quedeve ser estabelecido um inventaacuterio das aplicaccedilotildees juntamente com a definiccedilatildeode suas fronteiras para que nas diversas mediccedilotildees tenha-se como base amesma visatildeo das fronteiras Enquanto esse trabalho natildeo estiver concluiacutedo asdefiniccedilotildees da fronteira das aplicaccedilotildees seratildeo definidas pontualmente

Em projetos de melhoria a fronteira estabelecida no iniacutecio do projetodeve estar de acordo com a fronteira jaacute estabelecida para a aplicaccedilatildeo que estaacutesendo modificada

47 Funccedilotildees de Dados

As funccedilotildees de dados representam a funcionalidade oferecida ao usuaacuteriopara satisfazer requisitos de armazenamento de dados internos e externosUma funccedilatildeo de dado pode ser um arquivo loacutegico interno ou um arquivo deinterface externo

O termo arquivo aqui natildeo significa arquivo fiacutesico ou tabela Nesse caso

arquivo se refere a um grupo de dados logicamente relacionados e natildeo agraveimplementaccedilatildeo fiacutesica destes grupos de dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 10: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 10 de 45

471 Arquivo Loacutegico Interno (ALI)

Grupo de dados ou informaccedilotildees de controle logicamente relacionadosidentificaacutevel pelo usuaacuterio mantido dentro da fronteira da aplicaccedilatildeo A intenccedilatildeoprimaacuteria de um ALI eacute armazenar dados mantidos atraveacutes de um ou maisprocessos elementares da aplicaccedilatildeo sendo contada

472 Arquivo de Interface Externa (AIE)

Grupo de dados logicamente relacionados ou informaccedilatildeo de controlereconhecido pelo usuaacuterio referenciado pela aplicaccedilatildeo sendo medida mas queeacute mantido dentro da fronteira de outra aplicaccedilatildeo A intenccedilatildeo primaacuteria de um AIEeacute armazenar dados referenciados por um ou mais processos elementaresdentro da fronteira da aplicaccedilatildeo medida Isto significa que um AIE contado poruma aplicaccedilatildeo deve ser um ALI em outra aplicaccedilatildeo Deveratildeo ser considerados

na complexidade de um AIE apenas os itens de dados e os registros loacutegicosreferenciados pela aplicaccedilatildeo que estaacute sendo contada

473 Registro Loacutegico Referenciado (RLR ou TR)

Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE) Para acontagem dos RLRs de uma funccedilatildeo de dados devem ser aplicadas as regrasestabelecidas no CPM

48 Funccedilotildees Transacionais

Uma funccedilatildeo de transaccedilatildeo eacute um processo elementar que oferecefuncionalidade ao usuaacuterio para processar dados Uma funccedilatildeo de transaccedilatildeo eacuteuma entrada externa saiacuteda externa ou consulta externa

481 Entrada Externa (EE)

Processo elementar que processa dado (ou informaccedilotildees de controle)vindo de fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma EE eacutemanter um ou mais ALI eou alterar o comportamento do sistema

482 Consulta Externa (CE)Processo elementar que envia dados ou informaccedilotildees de controle para

fora da fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma CE eacute apresentarinformaccedilatildeo ao usuaacuterio por meio de uma simples recuperaccedilatildeo de dados ouinformaccedilotildees de controle de um ALI ou AIE A loacutegica de processamento natildeodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

483 Saiacuteda Externa (SE)

Processo elementar que gera dados ou informaccedilotildees de controle quesaem pela fronteira da aplicaccedilatildeo A principal intenccedilatildeo de uma SE eacute apresentar

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 11: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 11 de 45

dados ao usuaacuterio atraveacutes de outra loacutegica de processamento que natildeo apenas arecuperaccedilatildeo de dados ou informaccedilotildees de controle A loacutegica de processamentodeve conter foacutermula matemaacutetica ou caacutelculo criar dados derivados manter umou mais ALI eou alterar o comportamento do sistema

49 Niacutevel de Detalhamento de Contagens

A contagem de pontos de funccedilatildeo pode ser realizada com diferentesniacuteveis de detalhe indicativa estimada e detalhada O niacutevel de detalhamento aser escolhido depende de alguns fatores como a finalidade da contagem asinformaccedilotildees disponiacuteveis para subsidiar a contagem a etapa do ciclo de vida dodesenvolvimento dentre outros

A contagem indicativa e estimada dar-se-aacute conforme definiccedilotildees daNetherlands Software Metrics Association ndash NESMA

A orientaccedilatildeo eacute que a contagem estimada seja utilizada para embasar aformalizaccedilatildeo (abertura) da Ordem de Serviccedilo nos projetos de desenvolvimentoe manutenccedilatildeo e para embasar a autorizaccedilatildeo para execuccedilatildeo da mudanccedila nosprojetos de manutenccedilatildeo Cabe ressaltar que eventualmente pode sernecessaacuterio o uso da contagem indicativa para a mesma finalidade quandohouver pouco conhecimento do sistema que se precisa estimar

Quanto agrave contagem detalhada a orientaccedilatildeo eacute que seja utilizada apoacutes ahomologaccedilatildeo e o aceite dos produtos gerados na Ordem de Serviccedilo dedesenvolvimento e manutenccedilatildeo para embasar o processo de pagamento

Entretanto em caso de projetos grandes de longa duraccedilatildeo pode-se identificara necessidade de realizar contagem detalhada de referecircncia com base nosrequisitos detalhados para gerar o equiliacutebrio financeiro do projeto

Eacute importante destacar que quanto mais exata se quer uma contagem depontos de funccedilatildeo mais detalhados devem ser os requisitos do usuaacuterio Dessaforma as contagens estimadas e indicativas por natildeo se tratarem de umamediccedilatildeo exata podem apresentar desvios do tamanho obtido com a contagemdetalhada Um cuidado maior deve-se ter com o uso da contagem indicativapois os desvios podem chegar a ateacute 50 na comparaccedilatildeo de uma contagemindicativa e uma detalhada para o mesmo sistema conforme demonstra o

resultado de um projeto de pesquisa pela NESMA(httpfattocscomptcontagem-antecipada)

491 Contagem Indicativa

A contagem indicativa eacute utilizada para estimar de forma raacutepida otamanho de projetos de desenvolvimento de novas aplicaccedilotildees Devido aopouco conhecimento do sistema que se precisa estimar ela eacute baseadasomente na identificaccedilatildeo de quantos arquivos loacutegicos (ALIs e AIEs) existiratildeo naaplicaccedilatildeo A contagem indicativa eacute realizada da seguinte forma

bull determina-se a quantidade das funccedilotildees do tipo dado (ALIs e AIEs)

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 12: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 12 de 45

bull calcula-se o total de pontos de funccedilatildeo natildeo ajustados da aplicaccedilatildeo daseguinte forma

tamanho indicativo (pf) = 35 x nuacutemero de ALIs + 15 x nuacutemero de AIEs

Eacute importante explicar que a contagem indicativa eacute baseada na premissade que existem aproximadamente trecircs EEs (para adicionar alterar e excluirdados do ALI) duas SEs e uma CE na meacutedia para cada ALI eaproximadamente uma SE e uma CE para cada AIE

Dessa forma obteacutem-se uma estimativa aacutegil do tamanho do sistemaporeacutem natildeo muito precisa

492 Contagem Estimada

A contagem estimada eacute utilizada quando eacute possiacutevel identificar as

funccedilotildees do sistema poreacutem natildeo se define a complexidade (tipos de dados tiposde registros e arquivos referenciados)

Dessa forma assume-se uma complexidade padratildeo para as funccedilotildeessendo as funccedilotildees de dados (ALIs e AIEs) classificadas como de baixacomplexidade enquanto as funccedilotildees transacionais (EEs CEs e SEs) satildeoclassificadas como de meacutedia complexidade

A contagem estimada eacute realizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EE SE

CE)bull toda funccedilatildeo do tipo dado (ALI AIE) tem sua complexidade funcional

avaliada como Baixabull toda funccedilatildeo transacional (EE SE CE) eacute avaliada como de

complexidade meacutediabull calcula-se o total de pontos de funccedilatildeo natildeo ajustados

493 Contagem Detalhada

A contagem detalhada dar-se-aacute pela aplicaccedilatildeo da teacutecnica de contagemseguindo as regras estabelecidas no Manual de Praacuteticas de Contagem (CPM)versatildeo 431 (ou superior) do IFPUG acrescidas das definiccedilotildees deste Guia deContagem do MP (versatildeo mais atual) e do Roteiro de Meacutetricas de Software doSISP na versatildeo 20 (ou superior)

A contagem detalhada eacute a contagem usual de pontos de funccedilatildeo e eacuterealizada da seguinte forma

bull determina-se todas as funccedilotildees de todos os tipos (ALI AIE EESE CE)

bull determina-se a complexidade de cada funccedilatildeo (Baixa Meacutedia Alta)bull

calcula-se o total de pontos de funccedilatildeo natildeo ajustados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 13: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 13 de 45

410 Fator de Ajuste

O Ministeacuterio do Planejamento natildeo utiliza a avaliaccedilatildeo do valor do fator deajuste (VAF) em suas mediccedilotildees sendo este fixado no valor 100 Isso significaque as caracteriacutesticas gerais do sistema apresentadas no manual de praacuteticasde contagem do IFPUG natildeo afetam o tamanho dos Pontos de Funccedilatildeo obtidosem suas contagens

Assim sendo toda contagem deveraacute resultar em pontos por funccedilatildeobrutos ndash PFB ou natildeo ajustados

411 Orientaccedilotildees para as contagens

4111 Dado de Coacutedigo

Segundo o CPM os dados de coacutedigo agraves vezes chamados de dados delista ou dados de traduccedilatildeo fornecem uma lista de valores vaacutelidos que umatributo descritivo pode ter Normalmente os atributos de dados de coacutedigo satildeocoacutedigo descriccedilatildeo eou outros atributos lsquopadratildeorsquo descrevendo o coacutedigo porexemplo abreviaccedilatildeo padratildeo data de iniacutecio de vigecircncia data de expiraccedilatildeodados de trilha de auditoria etc Ao utilizar coacutedigos em dados de negoacutecio eacutenecessaacuterio ter meios de traduccedilatildeo para converter de coacutedigo para algo maisreconheciacutevel pelo usuaacuterio Exemplos satildeo valores vaacutelidos descriccedilotildees decoacutedigos ou tabelas de traduccedilatildeo

Alguns dados de coacutedigo satildeo desenvolvidos para atender requisitos

especiacuteficos do usuaacuterio e conteacutem dados que estatildeo dentro do domiacutenio dousuaacuterio Outros dados de coacutedigo podem ser derivados a partir dos requisitos dousuaacuterio para restringir os valores permitidos e tambeacutem podem ser criados emuma tentativa de reduzir requisitos de espaccedilo em disco Os requisitos podemtambeacutem incluir a habilidade de manter dados de coacutedigo mas todos esses satildeorequisitos natildeo-funcionais do usuaacuterio

Portanto mesmo que os requisitos do usuaacuterio incluam a habilidade demanter dados de coacutedigo isso natildeo os transforma em requisitos funcionais poissua natureza eacute natildeo funcional conforme definiccedilatildeo no CPM ldquoos dados de coacutedigosatildeo uma implementaccedilatildeo de requisitos natildeo-funcionais do usuaacuteriordquo Dado de

coacutedigo eacute implementaccedilatildeo de requisitos teacutecnicos e natildeo influencia o seu tamanhofuncional

Para o MP o desenvolvimento de funcionalidades consideradas dadosde coacutedigo durante o projeto de desenvolvimento de software natildeo seraacuteconsiderado na contagem Entretanto devido a questotildees de contrataccedilotildees paraprojetos de manutenccedilatildeo evolutiva que implique manutenccedilatildeo nasfuncionalidades consideradas dados de coacutedigo deve-se aplicar a orientaccedilatildeodescrita no toacutepico Itens natildeo Mensuraacuteveis -Manutenccedilatildeo em Dados de Coacutedigo

Na contagem de transaccedilotildees que implementam requisitos funcionais eque acessam tambeacutem dados de coacutedigo soacute devem ser considerados como

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 14: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 14 de 45

arquivos referenciados os ALIs e AIEs que implementam dados de negoacutecio oudados de referecircncia e nunca dados de coacutedigo

4112 Log Trilha de Auditoria Registro de Eventos e Histoacuterico

O objetivo deste toacutepico eacute descrever o tratamento que o MP daraacute a respeitode Log Trilha de Auditoria Registro de Eventos e Histoacuterico

41121 Histoacuterico

Para o MP o histoacuterico eacute um registro de informaccedilotildees passadas emdeterminado momento o que possibilita ao usuaacuterio consultar a evoluccedilatildeo dainformaccedilatildeo na linha do tempo Essas informaccedilotildees tornam-se necessaacuterias paraa prestaccedilatildeo de contas (a oacutergatildeos externos superiores ou processos internos)ou por exigecircncia do proacuteprio cenaacuterio de negoacutecio Sua existecircncia eacute justificadapelo negoacutecio que sofre os impactos e consequecircncias em caso de ausecircncia de

histoacuterico Para fazer parte do tamanho funcional deve ser solicitado pelo gestore deveraacute existir funcionalidade de consulta a tais dados A funccedilatildeo de consultaaos dados deveraacute ser contada de acordo com as regras de contagem dasfunccedilotildees transacionais do CPM

Nesse caso o histoacuterico seraacute considerado um registro loacutegico do ALIrelacionado

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir as informaccedilotildees histoacutericas pois oarmazenamento dessas informaccedilotildees eacute parte integrante das mesmas

funcionalidades que processam os dados de negoacutecioObservaccedilatildeo Quando o histoacuterico for mantido de forma independente do

registro principal e por exemplo o registro eacute excluiacutedo do ALI principal mas ohistoacuterico manteraacute o registro excluiacutedo o histoacuterico se torna um ALI independentee natildeo um registro loacutegico do ALI relacionado Lembrando que para fazer partedo tamanho funcional deve ser solicitado pelo gestor e deveraacute existirfuncionalidade de consulta a tais dados

41122 Registro de eventos

Para o MP o registro de eventos tem o objetivo de armazenar oseventos associados agrave navegaccedilatildeo eou ao acesso agraves funcionalidades dosistema para fins de monitoramento estatiacutesticos ou criaccedilatildeo de indicadores deuso do aplicativo

O registro de eventos deve ser solicitado pelo gestor da aplicaccedilatildeo epara a contagem deve ser considerado como um ALI devendo existirfuncionalidade de consulta a tais dados

As informaccedilotildees de registro de eventos satildeo consideradas como parteintegrante da mesma funcionalidade que processa os dados de negoacutecio Dessa

forma natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de registro de eventos

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 15: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 15 de 45

41123 Log

O MP utilizaraacute o termo ldquoLogrdquo como o registro de procedimentos ou accedilotildeesrealizados pela aplicaccedilatildeo em determinado periacuteodo de tempo com o objetivode apoiar a auditoria do ambiente tecnoloacutegico e a identificaccedilatildeo das causasraiacutezes de falhas em sistemas

Nesse caso o log natildeo deve ser mensurado jaacute que natildeo armazenainformaccedilotildees negociais reconhecidas pelo usuaacuterio da aplicaccedilatildeo

A principal diferenccedila entre log e trilha de auditoria eacute

bull Log apoia a auditoria no acircmbito tecnoloacutegico (problemasdecorrentes da tecnologia que precisam sem investigados pormeio da anaacutelise do conjunto de procedimentos executadas pela

aplicaccedilatildeo como por exemplo baixa performance no sistema)bull Trilha de Auditoria apoia a auditoria para os dados de negoacutecio

41124 Trilha de auditoria

Para o MP a trilha de auditoria tem o objetivo de armazenar informaccedilotildeesreferentes agraves accedilotildees realizadas pelos usuaacuterios da aplicaccedilatildeo no passado demodo que seja possiacutevel apurar quais foram as accedilotildees executadas quando dautilizaccedilatildeo do sistema Para isso devem existir no miacutenimo as informaccedilotildees paraidentificar quem realizou a accedilatildeo (ID de usuaacuterio) quando e o que foi realizadoaleacutem de outras informaccedilotildees se necessaacuterio

A trilha de auditoria deve ser solicitada pelo gestor da aplicaccedilatildeo e paraa contagem considera um registro loacutegico referenciado do ALI relacionadodevendo existir funcionalidade de consulta a tais dados

Natildeo devem ser consideradas na contagem funccedilotildees de transaccedilatildeoseparadas para incluir alterar e excluir os dados de trilha de auditoria pois oarmazenamento desses dados eacute parte integrante das mesmas funcionalidadesque processam os dados de negoacutecio

4113 Consultas com filtros diferentes e com as mesmas saiacutedas

Trata-se de consultas com diferentes criteacuterios de filtro mas uma uacutenicasaiacuteda idecircntica em termos de campos

Por exemplo numa tela de consulta podem existir opccedilotildees de filtros comopesquisa de empregados por lotaccedilatildeo data de admissatildeo data de nascimentodentre outros em que quando natildeo for especificado nenhum filtro seratildeoretornados todos os empregados de uma empresa ou seja a seleccedilatildeo dosfiltros eacute opcional Mas caso sejam selecionados alguns filtros poderaacute serretornado nenhum ou vaacuterios empregados

Para esse cenaacuterio entende-se que os itens de dados e arquivosreferenciados satildeo os mesmos e o que difere satildeo apenas os dados retornados

em funccedilatildeo dos paracircmetros do filtro

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 16: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 16 de 45

Nesse caso considera-se que existe apenas um processo elementar deconsulta que pode ser classificado como CE ou SE

No caso em que haja evidecircncias de haver diferentes requisitosfuncionais referentes a criteacuterios mutuamente exclusivos indicando que a junccedilatildeoem uma uacutenica consulta foi opccedilatildeo de projeto deveraacute ser avaliado se eacute o caso deconsiderar mais de um processo elementar

4114 Consultas com filtros iguais e com saiacutedas diferentes

Essas consultas constituem processos elementares distintos e segundoas regras de unicidade de Consultas Externas e Saiacutedas Externas do CPMdevem ser contadas separadamente porque possuem itens de dados distintosna saiacuteda Assim se a aplicaccedilatildeo tiver duas consultas com filtros iguais e saiacutedasdiferentes devem ser contadas consultas separadas

4115 Integraccedilatildeo entre aplicaccedilotildees

Este toacutepico descreve uma orientaccedilatildeo de contagem a respeito deintegraccedilatildeo entre aplicaccedilotildees sem entrar no meacuterito de como seraacute o projeto e aimplementaccedilatildeo dos requisitos Tipicamente esses cenaacuterios usam webservices visotildees de banco de dados stored procedures de banco de dados sub-rotinasexportadas para utilizaccedilatildeo externa ao sistema (essas formas de implementaccedilatildeofazem parte de uma lista exemplificativa) podendo ser utilizados outros meiosa depender de cada especificidade da tecnologiaplataforma utilizada nasoluccedilatildeo

Esta orientaccedilatildeo tambeacutem ajuda extrapolar os requisitos funcionais a partirdo projeto quando a especificaccedilatildeo dos requisitos funcionais natildeo fornece as

informaccedilotildees suficientes para a identificaccedilatildeo do fluxo de informaccedilatildeo por meio daaplicaccedilatildeo

Para a explicaccedilatildeo dos cenaacuterios 1 e 2 considera-se que os sistemas ldquoArdquoe ldquoBrdquo sejam de fronteiras distintas

41151 Cenaacuterio 1 (Sistema ldquoArdquo requisita dados do Sistema ldquoB)

Este cenaacuterio se aplica quando o Sistema ldquoArdquo precisa lerconsultar umconjunto de informaccedilotildees mantidas por uma aplicaccedilatildeo externa denominada

Sistema ldquoBrdquo

Exemplo

Existe um requisito no sistema ldquoArdquo do tipo ldquoObter o saldo devedor docliente no sistema de controle de contratosrdquo Avaliando o requisito trata-se dareferecircncia a um grupo de dados logicamente relacionado (AIE) ainda que nosistema ldquoBrdquo natildeo exista esse campo ldquosaldo devedorrdquo armazenado jaacute que podeser calculado a partir de dados de vaacuterios arquivos Nesse caso na visatildeo dosistema ldquoArdquo trata-se de um campo a ser recuperado do sistema ldquoBrdquo e portanto

considera-se na contagem apenas um AIE independente da quantidade dearquivos loacutegicos que originaram os dados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 17: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 17 de 45

Diante deste cenaacuterio eacute importante destacar que para a contagem doAIE o CPM define que um AIE deve ser um ALI em outro sistema mas ele natildeoestabelece que seja um apenas um ou pelo menos um ALI Com isso esteguia determina que seja utilizada a Visatildeo do Usuaacuterio da aplicaccedilatildeo em anaacutelisee portanto no exemplo acima se o usuaacuterio considera que se trata derecuperar um campo que assim seja medido independentemente de como issoeacute implementado em outro sistema

41152 Cenaacuterio 2 (Sistema ldquoBrdquo fornece dados para o Sistema ldquoArdquo )

Este cenaacuterio se aplica quando o Sistema ldquoBrdquo disponibiliza informaccedilotildeespara serem consumidas pelo Sistema ldquoArdquo sendo que as regras de negoacuteciopara gerar as informaccedilotildees para o Sistema ldquoArdquo eacute de conhecimento do SistemaldquoBrdquo

Exemplo

O sistema ldquoBrdquo precisa disponibilizar o saldo devedor do cliente para osistema ldquoArdquo utilizar numa transaccedilatildeo qualquer

Na visatildeo do Sistema ldquoBrdquo por ser de conhecimento dele a definiccedilatildeo ouespecificaccedilatildeo das regras de negoacutecio para a geraccedilatildeo do saldo devedor do

cliente considera na contagem a funccedilatildeo transacional do tipo ldquoSaiacuteda Externardquopara a disponibilizaccedilatildeo da informaccedilatildeo

Nesse caso conta-se uma CE ou SE de acordo com as regras do CPM

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 18: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 18 de 45

Caso haja necessidade de o Sistema ldquoBrdquo disponibilizar dados para finsde validaccedilatildeo e referecircncia provendo esses dados por exemplo por meio de umwebservice mas natildeo exista qualquer regra de negoacutecio associada a essaconstruccedilatildeo sendo que o motivo pelo qual a implementaccedilatildeo dos requisitos deldquoArdquo se daacute desta forma em ldquoBrdquo eacute por requisitos teacutecnicos natildeo caberia a contagemde uma CESE na perspectiva do Sistema ldquoBrdquo Nesse caso entende-se que senatildeo fosse essa restriccedilatildeo a aplicaccedilatildeo poderia obter diretamente os dados semqualquer intervenccedilatildeo por parte do Sistema ldquoBrdquo

41153 Cenaacuterio 3 (Disponibilizaccedilatildeo e consumo de dados dentro damesma fronteira)

Neste cenaacuterio existem dados sendo disponibilizados por meio dewebservices visotildees de banco de dados stored de procedures de banco de

dados sub-rotinas dentre outras implementaccedilotildees para serem consumidos porfunccedilotildees transacionais dentro da mesma fronteira

Diretriz de Contagem

Nesse caso as formas de disponibilizar os dados internamente agraveaplicaccedilatildeo exercem o papel de componente interno ao software sendo medidoe portanto a construccedilatildeo de componentes de coacutedigo reutilizaacuteveis natildeo seraacutecontada em pontos de funccedilatildeo

As funccedilotildees transacionais e os arquivos referenciados que utilizam osdados do webservice por exemplo seguem as orientaccedilotildees de contagem do

CPMApenas em casos de manutenccedilatildeo unicamente no componente deve

ser aplicada a regra descrita no toacutepico Manutenccedilatildeo de ComponenteReutilizaacutevel

41154 Identificaccedilatildeo do barramento como uma fronteira

Neste cenaacuterio eacute necessaacuterio o desenvolvimento de funcionalidades nobarramento para atender a uma necessidade negocial Essas funcionalidadesnatildeo satildeo fornecidas pela ferramenta de barramento ou seja para atender auma demanda negocial do gestor seraacute desenvolvida no barramento uma

funcionalidade que eacute identificada como um processo elementarNo que diz respeito agrave contagem considera-se

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 19: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 1945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 19 de 45

bull Como usuaacuterios as aplicaccedilotildees que interagem com o barramento

bull Na fronteira do barramento contam-se

o Os arquivos loacutegicos identificados

o As funccedilotildees transacionais que seratildeo desenvolvidas (CE SEou EE)

bull Na fronteira dos outros sistemas aplica-se o definido pelo CPM

41155 ConfiguraccedilatildeoCustomizaccedilatildeo de ferramenta de barramento

Este cenaacuterio eacute identificado quando estaacute sendo utilizada umaferramenta de mercado com a funccedilatildeo de barramento para fazer por exemploorquestraccedilatildeo de serviccedilos entre dois ou mais sistemas

Para este cenaacuterio satildeo identificadas duas situaccedilotildees distintasbull Configuraccedilatildeo da ferramenta de barramento para possibilitar acomunicaccedilatildeo

bull Customizaccedilatildeo da ferramenta de barramento para atender a umanecessidade especiacutefica de negoacutecio

Para efeito deste Guia de Contagem essas duas situaccedilotildees natildeo seratildeoobjeto de contagem por meio da teacutecnica de Anaacutelise de Pontos de Funccedilatildeo eportanto cabe ao MP definir a forma de mensurar e remunerar serviccedilos quecaem nessas situaccedilotildees

4116 Manutenccedilatildeo de Componente Reutilizaacutevel

Para projetos de desenvolvimento de novos sistemas a construccedilatildeo decomponentes de coacutedigo reutilizaacuteveis natildeo afetaraacute o tamanho da aplicaccedilatildeo e nema remuneraccedilatildeo do serviccedilo Entretanto a reutilizaccedilatildeo de componentes eacuteconsiderada uma boa praacutetica e deve sempre que possiacutevel ser utilizada umavez que o reuso proporcionaraacute melhor produtividade padronizaccedilatildeo e facilidadede manutenccedilatildeo

Para projetos de manutenccedilatildeomelhoria em um componente que eacuteutilizado por vaacuterias funcionalidades da aplicaccedilatildeo esse componente seraacute

contado como uma funcionalidade e por se tratar de manutenccedilatildeo seraacuteaplicado o fator de impacto equivalente ao tipo de manutenccedilatildeo Para efeito deteste da utilizaccedilatildeo deste componente pelas funcionalidades que dependemdele cabe ao MP apoacutes apresentada a lista de dependecircncias destecomponente definir o escopo de teste indicando quais funcionalidades devemser testadas Para dimensionar o teste deste conjunto de funcionalidadesdeve-se fazer uso da contribuiccedilatildeo em pontos de funccedilatildeo das funcionalidades aserem testadas em conjunto com o percentual da disciplina de teste constanteda tabela Percentual de esforccedilo por disciplina no ciclo de vida

Exemplo No sistema de Folha de Pagamento o componente que valida

o coacutedigo do funcionaacuterio eacute utilizado por 25 processos elementares Essecomponente precisa ser alterado para considerar um novo departamento da

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 20: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 20 de 45

empresa que possuiraacute uma validaccedilatildeo diferenciada O Analista de Sistemasdefiniu que para validar essa alteraccedilatildeo devem ser testados os seguintesprocessos Incluir Funcionaacuterio Alterar Funcionaacuterio Selecionar Funcionaacuterio ePesquisar Funcionaacuterio por coacutedigo Na contagem seraacute considerado a contagemdo componente que valida o coacutedigo do funcionaacuterio como uma funcionalidadealterada a contagem dos 4 processos elementares que seratildeo testadosdevendo ser dimensionados a partir da contribuiccedilatildeo dessas funcionalidades deacordo com o percentual da disciplina de teste constante na tabela Distribuiccedilatildeoem percentual do esforccedilo por disciplina no ciclo de vida

4117 Muacuteltiplas Miacutedias

Ao abordar o tema muacuteltiplas miacutedias o IFPUG definiu alguns termoscomuns a saber

o

Canal tambeacutem refere-se agrave miacutedia Muacuteltiplos canais eacute sinocircnimo demuacuteltiplas miacutediaso Miacutedia descreve a forma com que os dados ou informaccedilotildees se

movimentam para dentro e para fora da fronteira de uma aplicaccedilatildeoPor exemplo apresentaccedilatildeo de dados em tela impressora arquivovoz Este termo eacute utilizado para incluir dentre outros diferentesplataformas teacutecnicas e formatos de arquivos como diferentes miacutedias

o Muacuteltiplas Miacutedias quando a mesma funcionalidade eacute entregue emmais de uma miacutedia Frequentemente somente uma miacutedia eacute

requisitada para um usuaacuterio especiacutefico em um determinadomomento Por exemplo consulta de extrato bancaacuterio via internetcomo oposto agrave consulta de extrato bancaacuterio via terminal do banco

o Multimiacutedia quando mais de uma miacutedia eacute necessaacuteria para entregar afunccedilatildeo Por exemplo uma nova notiacutecia publicada na Internet que eacuteapresentada em viacutedeo e texto Observe que a notiacutecia completa soacute eacuteapresentada para o usuaacuterio se ele ler o texto e assistir ao viacutedeo

o Abordagem Single Instance esta abordagem natildeo reconhece que amiacutedia utilizada na entrega de uma funccedilatildeo transacional eacute umacaracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo da unicidade daquelafunccedilatildeo Se duas funccedilotildees entregam a mesma funcionalidade usando

miacutedias diferentes elas satildeo consideradas como a mesmafuncionalidade para propoacutesitos de mediccedilatildeo

o Abordagem Multiple Instance esta abordagem especifica que otamanho funcional eacute obtido no contexto do objetivo da contagempermitindo uma funccedilatildeo de negoacutecio ser reconhecida no contexto dasmiacutedias que satildeo requisitadas para que a funcionalidade seja entregueA abordagem multiple instance reconhece que a miacutedia para entregaconstitui uma caracteriacutestica de diferenciaccedilatildeo na identificaccedilatildeo daunicidade da funccedilatildeo transacional

Para a aplicaccedilatildeo das regras definidas no CPM o IFPUG reconhececomo vaacutelidas tanto a abordagem single instance quanto a abordagem multiple instance A determinaccedilatildeo da abordagem a ser seguida em uma contagem de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 21: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 21 de 45

PF depende da avaliaccedilatildeo da equipe de meacutetricas da organizaccedilatildeo Asestimativas e contagens de pontos de funccedilatildeo do MP deveratildeo considerar aabordagem mais adequada agrave situaccedilatildeo conforme os cenaacuterios descritos nasseccedilotildees seguintes

Eacute importante enfatizar que tais cenaacuterios natildeo representam uma listacompleta de situaccedilotildees de muacuteltiplas miacutedias mas o entendimento destesexemplos facilitaraacute a compreensatildeo de outros cenaacuterios envolvendo muacuteltiplasmiacutedias Este guia de contagem seraacute atualizado para considerar as novasdiretrizes que forem publicadas pelo IFPUG e os novos cenaacuterios queemergirem das contagens de PF dos projetos do MP

Cenaacuterio 1 Mesmos dados preparados para apresentaccedilatildeo em telaem arquivo formato texto e impressos

Neste cenaacuterio uma aplicaccedilatildeo apresenta uma informaccedilatildeo em umaconsulta em tela Por requisiccedilatildeo do usuaacuterio a mesma informaccedilatildeo pode serimpressa a partir da tela em questatildeo ou disponibilizada em arquivo formatotexto

Nesses casos deve ser utilizada a abordagem single instance considerando que dados idecircnticos sendo apresentados em tela em relatoacuterioimpresso e em arquivo devem ser contados como uma uacutenica funccedilatildeo Portantoapenas uma transaccedilatildeo deveraacute ser incluiacuteda na contagem de pontos de funccedilatildeo

Cenaacuterio 2 Mesmos dados para entradas em lote (batch) e online

Neste cenaacuterio uma aplicaccedilatildeo pode receber informaccedilotildees por meio dedois meacutetodos arquivo batch e entrada de dados online Tanto o arquivo batchquanto a entrada online executam validaccedilotildees durante o processamento Se aloacutegica de processamento utilizada nas validaccedilotildees em modo batch for a mesmadaquela utilizada em modo online deve ser utilizada a abordagem single instance e uma uacutenica transaccedilatildeo deve ser incluiacuteda na contagem de pontos defunccedilatildeo Poreacutem se a loacutegica de processamento for diferente deve-se utilizar aabordagem multiple instance e duas transaccedilotildees distintas devem ser incluiacutedasna contagem de pontos de funccedilatildeo

Cenaacuterio 3 Muacuteltiplos canais de entrega da mesma funcionalidade

Neste cenaacuterio uma funcionalidade deve ser disponibilizada em muacuteltiploscanais Por exemplo consulta de dados em paacutegina web e consulta de dadosem smartphone Nesses casos deve ser utilizada a abordagem multiple instance tendo em vista que haacute necessidade de que sejam desenvolvidas duasldquoversotildeesrdquo da mesma funcionalidade uma para rodar em navegador web e outrapara rodar em plataforma moacutevel Portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo

Poreacutem se as ldquoversotildeesrdquo forem geradas por uma ferramenta de apoiosem necessidade de customizaccedilatildeo deve ser utilizada a abordagem single

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 22: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 22 de 45

instance e somente uma transaccedilatildeo deve ser incluiacuteda na contagem de pontosde funccedilatildeo

Eacute importante destacar a existecircncia de sites responsivos (ou sitesflexiacuteveis) que eacute quando o site eacute desenvolvido para que de forma automaacutetica seencaixe no dispositivo do usuaacuterio (PC celular tablete etc) ou seja um siteresponsivo muda a aparecircncia e disposiccedilatildeo com base no tamanho da tela emque o site eacute exibido Nesse caso entende-se que deve ser utilizada aabordagem single instance

Cenaacuterio 4 Relatoacuterios em muacuteltiplos formatos

Neste cenaacuterio um relatoacuterio deve ser entregue em diferentes formatosPor exemplo em formato HTML DOC XLS XML HTML DOC CSV JSONdentre outros O usuaacuterio teraacute a oportunidade de escolher em qual formato

deseja que os dados sejam apresentadosNesses casos deve ser considerada a ferramenta de desenvolvimento

utilizada na geraccedilatildeo dos relatoacuterios Se tiver sido necessaacuteria a construccedilatildeo dorelatoacuterio nos dois formatos deve ser utilizada a abordagem multiple instance devido agrave ocorrecircncia da loacutegica de processamento de anaacutelise de condiccedilotildees paraverificar quais satildeo aplicaacuteveis e portanto duas transaccedilotildees distintas devem serincluiacutedas na contagem de pontos de funccedilatildeo Poreacutem se a ferramenta dedesenvolvimento suportar um gerador de relatoacuterios que permita ao usuaacuteriovisualizar o relatoacuterio em tela imprimi-lo e tambeacutem salvaacute-lo em muacuteltiplosformatos deveraacute ser utilizada a abordagem single instance tendo em vista que

o tal relatoacuterio seraacute construiacutedo apenas uma vez Logo apenas uma transaccedilatildeodeve ser incluiacuteda na contagem

Observaccedilatildeo 1 Para que uma transaccedilatildeo possa ser contada em termosde muacuteltiplas miacutedias o requisito funcional deve deixar claro que a funcionalidadedeve ser entregue em muacuteltiplas miacutedias

Observaccedilatildeo 2 Quando existir um requisito dizendo que todo relatoacuteriodeve ser emitido em PDF e DOC por exemplo pelo fato de ser um requisitogeneralista ou seja para todos os relatoacuterios deve ser avaliado se natildeo se tratade um requisito natildeo funcional

4118 Muacuteltiplos processos compondo um processo elementar(Subdivisatildeo de Funcionalidades)

Para correta quebra de uma funcionalidade em diversos processoselementares eacute importante avaliaacute-las a partir de uma perspectiva do negoacutecioverificando quais funcionalidades satildeo completas e reconhecidas pelos usuaacuteriosdo negoacutecio Por exemplo um processo elementar com telas encadeadas emque quando natildeo concluiacutedo o processo deve ser reiniciado desde a primeiratela eacute errado considerar cada tela (ou aba) como um processo elementar

Cenaacuterio Um uacutenico Processo Elementar identificado para afuncionalidade

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 23: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 23 de 45

Por exemplo se uma funcionalidade eacute dividida em ldquoabasrdquo eacute necessaacuterioavaliar se cada uma das telas constitui um processo elementar atendendoprincipalmente ao requisito de ser autocontido Nesse caso a primeira coisa ase fazer eacute a de tentar identificar a razatildeo que levou a divisatildeo da funcionalidadeem diversas telas pois eacute comum que formulaacuterios de cadastro sejam quebradosem etapas com o objetivo apenas de tornar a atividade de cadastro maisintuitiva e organizada ou seja apenas para atender a requisitos natildeo funcionaisde usabilidade Dessa forma apenas um uacutenico processo elementar pode seridentificado

Caso contraacuterio se a funcionalidade tiver sido subdividida em diversastelas para atender a uma necessidade do negoacutecio (Ex Um departamentopossui a competecircncia para o preenchimento de uma das telas enquanto queoutro departamento para as demais) isso eacute indiacutecio de que pode se tratar maisde um processo elementar

Seguem algumas orientaccedilotildees para auxiliar o analista de meacutetricas emcenaacuterios semelhantes

bull Verificar se caso a funcionalidade natildeo fosse fragmentada e houvesseuma uacutenica tela a necessidade de negoacutecio seria atendida independentede a funcionalidade ser menos usualbull Avaliar se haacute usuaacuterios de aacutereas de negoacutecio distintas responsaacuteveis porpreencher telas especiacuteficas da funcionalidade natildeo tendo competecircncia(mesmo que munidos de todas as informaccedilotildees necessaacuterias) para opreenchimento completo do formulaacuterio

4119 Consultas Impliacutecitas

Satildeo consultas que apresentam dados para o usuaacuterio (geralmenteprecedendo outra transaccedilatildeo a ser realizada) mas que natildeo estatildeo claramenteexpliacutecitas nos requisitos ou no proacuteprio sistema Podem ser classificadas comoCE ou SE

Geralmente satildeo comuns em telas de alteraccedilatildeo ou exclusatildeo de registrosde um arquivo pois antes de alterar ou excluir o registro os dados satildeoapresentados ao usuaacuterio e na sequecircncia o usuaacuterio efetua a alteraccedilatildeo ouexclusatildeo Cabe ressaltar que quando essa consulta eacute idecircntica a uma consultaexpliacutecita apenas um processo elementar deve ser contado

41110 Contagem de Funccedilotildees para Conversatildeo de Dados

Conforme consta no CPM a funcionalidade de conversatildeo de dadosexiste quando haacute requisitos para migrar ou converter dados durante um novoprojeto de desenvolvimento projeto de melhoria Assim essas funcionalidadesde conversatildeo de dados deveratildeo ser contadas como Entrada Externa para afuncionalidade de migraccedilatildeo ou carga inicial dos dados e Consultas ou SaiacutedasExternas quando forem requisitados pelo usuaacuterio relatoacuterios associados agrave

funcionalidade de migraccedilatildeo de dados Os arquivos do antigo sistema que estaacutesendo substituiacutedo natildeo devem ser contados como Arquivos de Interface Externa

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 24: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 24 de 45

(AIEs) da nova aplicaccedilatildeo e as extraccedilotildees dos dados do sistema antigo se for ocaso natildeo seratildeo contadas como CEs ou SEs

41111 Projetos de Migraccedilatildeo de Dados

A criteacuterio do MP quando for identificada complexidade no processo demigraccedilatildeo de dados os pontos de funccedilatildeo de conversatildeo (PF_CONVERSAtildeO)poderatildeo ser suprimidos das foacutermulas de contagem de pontos de funccedilatildeo deProjetos de Desenvolvimento e de Melhoria e as funcionalidades de migraccedilatildeode dados podem ser tratadas de forma separadas como projetos de migraccedilatildeode dados mas aplicando integralmente os conceitos do IFPUG

41112 Projetos de Melhoria (Manutenccedilatildeo Evolutiva)

Trata-se de projeto de manutenccedilatildeo evolutiva ou melhoria funcional Seutamanho funcional eacute a medida das funcionalidades incluiacutedas alteradas e

excluiacutedas em aplicaccedilotildees em produccedilatildeo O tamanho funcional de um projeto demelhoria pode incluir o tamanho da funcionalidade de conversatildeo de dados

As regras de como contar as funccedilotildees de dados e de transaccedilatildeo em umprojeto de melhoria satildeo as mesmas apresentadas no Manual de Praacuteticas deContagem (CPM) poreacutem devem ser consideradas as orientaccedilotildees descritasneste toacutepico pois para calcular o tamanho funcional do projeto de melhoriadevem ser aplicados os fatores de impacto definidos nas funccedilotildees alteradas eexcluiacutedas conforme foacutermula abaixo

Segue a Foacutermula

PF_MELHORIA = PF_INCLUIDO + (FI x PF_ALTERADO) + (03 xPF_EXCLUIDO) + PF_CONVERSAtildeO

Definiccedilotildees

PF_INCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees que estatildeo sendoadicionadas pelo projeto de melhoria

PF_ALTERADO = pontos de funccedilatildeo das funccedilotildees que sendo alteradaspelo projeto de melhoria (como elas satildeo ou seratildeo apoacutes aimplementaccedilatildeo)

PF_EXCLUIacuteDO = pontos de funccedilatildeo das funccedilotildees sendo excluiacutedas peloprojeto de melhoria

PF_CONVERSAtildeO = pontos de funccedilatildeo das funcionalidades de conversatildeode dados quando existirem

O Fator de Impacto (FI) pode variar conforme condiccedilotildees abaixo

o

FI = 50 para funcionalidade de sistema que possuadocumentaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 25: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 25 de 45

o FI = 60 para funcionalidade de sistema que natildeo possuadocumentaccedilatildeo

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo das funcionalidades da aplicaccedilatildeo impactadas pelamanutenccedilatildeo evolutiva quando a funcionalidade possuir documentaccedilatildeoatualizada

Observaccedilatildeo 2 Quando a funcionalidade impactada pela manutenccedilatildeoevolutiva natildeo possuir documentaccedilatildeo ou a documentaccedilatildeo estiverdesatualizada deveraacute ser contemplada a redocumentaccedilatildeo ouatualizaccedilatildeo da documentaccedilatildeo das funcionalidades

Observaccedilatildeo 3 Se durante o atendimento de uma demanda de projetode melhoria for detectada a manutenccedilatildeo evolutiva e corretiva na mesma

funcionalidade para efeito de contagem deve ser avaliado se as duasmanutenccedilotildees podem ser disponibilizadas juntas no ambiente produtivoConfirmada a disponibilizaccedilatildeo em conjunto o MP entende que deve sercontada apenas a manutenccedilatildeo evolutiva Caso contraacuterio a contagem damanutenccedilatildeo corretiva deve ser feita separada da manutenccedilatildeo evolutivadesde que a correccedilatildeo natildeo esteja coberta pela garantia Para a contagemda correccedilatildeo devem ser seguidas as regras descritas no toacutepico deManutenccedilatildeo Corretiva deste guia

41113 Mudanccedila estrutural em Arquivos Loacutegicos para Projetos de

Melhoria

Segundo o CPM para que uma funccedilatildeo de dado seja contada como umafunccedilatildeo alterada eacute obrigatoacuterio que a funccedilatildeo seja estruturalmente alterada

Mudanccedila estrutural eacute toda inclusatildeo ou exclusatildeo de atributo em umarquivo loacutegico ou alteraccedilatildeo de suas caracteriacutesticas (alteraccedilatildeo de tamanho tipo ndash numeacuterico para alfanumeacuterico etc) desde que a mudanccedila decorra dealteraccedilatildeo de regra de negoacutecio Simples alteraccedilotildees de valores vaacutelidos em umALI natildeo seratildeo consideradas mudanccedilas estruturais

411131 Impacto das alteraccedilotildees das caracteriacutesticas de itens de dadosde um ALI nas funccedilotildees transacionais que o manteacutem

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados implicaremmudanccedila de loacutegica de processamento nas funccedilotildees transacionais como porexemplo mudanccedila em validaccedilotildees as funccedilotildees transacionais impactadas devemser consideradas alteradas em um projeto de melhoria

Exemplo Numa aplicaccedilatildeo o gestor solicitou que o campo de nuacutemero dotelefone residencial do cliente passe a suportar ateacute oito diacutegitos Aleacutem disso foisolicitado que nas funcionalidades de inclusatildeo e alteraccedilatildeo de clientes caso ocliente resida no Distrito Federal seja obrigatoacuterio que seu telefone residencialtenha oito diacutegitos sendo que o primeiro diacutegito agrave esquerda seja igual a trecircs

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 26: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 26 de 45

Nesse caso observa-se alteraccedilatildeo na loacutegica de processamento das entradasexternas de inclusatildeo e alteraccedilatildeo de clientes e portanto ambas seriampontuadas na manutenccedilatildeo evolutiva como ldquoalteradasrdquo As funcionalidades quenatildeo sofreram alteraccedilatildeo em decorrecircncia da mudanccedila do DER natildeo satildeopontuadas

Quando as mudanccedilas estruturais em uma funccedilatildeo de dados natildeoimplicarem mudanccedila de loacutegica de processamento nas funccedilotildees transacionais osimples fato de o DER alterado cruzar a fronteira da aplicaccedilatildeo nas transaccedilotildeesque o mantecircm ou referenciam natildeo eacute suficiente para que essas transaccedilotildeessejam consideradas como alteradas na contagem da manutenccedilatildeo evolutiva

Exemplo Suponha que deva ser feita uma mudanccedila do nuacutemero dotelefone de sete para oito diacutegitos e do CEP de cinco para oito diacutegitos Sesomente for aplicada a alteraccedilatildeo na funccedilatildeo de dados natildeo sendo identificada a

necessidade de alterar qualquer loacutegica de processamento nas transaccedilotildees queutilizam essa funccedilatildeo soacute deve ser considerada no projeto de melhoria amudanccedila na funccedilatildeo de dados

412 Itens natildeo mensuraacuteveis

Algumas manutenccedilotildees em softwares natildeo satildeo passiacuteveis de mediccedilatildeosegunda a teacutecnica Anaacutelise de Pontos de Funccedilatildeo mas devido agrave existecircnciadessas demandas e aos contratos de prestaccedilatildeo de serviccedilos para calcular oesforccedilo das atividades envolvidas nesses tipos de manutenccedilatildeo houve umaequiparaccedilatildeo do esforccedilo ao ponto de funccedilatildeo e portanto seguem as orientaccedilotildees

descritas abaixo Os percentuais satildeo estimados podendo ser reajustadosconforme avaliaccedilatildeo da base histoacuterica dos serviccedilos realizados no MP

Os exemplos descritos neste toacutepico natildeo satildeo exaustivos ou sejaidentificando-se novos itens natildeo mensuraacuteveis eles devem ser adicionados aessa lista em versotildees posteriores deste guia

Caso seja identificado algum item natildeo contemplado neste toacutepico deveraacuteser encaminhada solicitaccedilatildeo fundamentada ao MP que analisaraacute a pertinecircnciada inclusatildeo de um novo item natildeo mensuraacutevel

Importante

A mediccedilatildeo natildeo eacute cumulativa dentro da mesma funcionalidade ou sejacaso uma funcionalidade possua itens mensuraacuteveis e itens natildeo mensuraacuteveis(uma alteraccedilatildeo no processo elementar e uma alteraccedilatildeo de layout namesma tela por exemplo) apenas os itens mensuraacuteveis devem ser contados

4121 Manutenccedilatildeo Corretiva

A manutenccedilatildeo corretiva consiste na correccedilatildeo e alteraccedilatildeo de requisitosprojeto coacutedigo conjunto de testes e documentaccedilatildeo para correccedilatildeo de defeitosEncontram-se nesta categoria as demandas de correccedilatildeo de erros (bugs) de

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 27: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 27 de 45

funcionalidades em sistemas comportamentos inadequados que causemproblemas de uso

A estimativa e dimensionamento de tamanho de manutenccedilotildees corretivasem pontos de funccedilatildeo devem levar em consideraccedilatildeo a documentaccedilatildeo dosistema disponiacutevel e os artefatos a serem mantidos

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeo dadocumentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo corretiva

Observaccedilatildeo 2 Se durante a investigaccedilatildeo do problema for constatadoque natildeo haacute erro no sistema a demanda deveraacute ser atendida de acordo com otoacutepico Verificaccedilatildeo de Erros do Roteiro SISP

Observaccedilatildeo 3 Quando o sistema em produccedilatildeo estiver dentro dagarantia da qualidade a manutenccedilatildeo corretiva seraacute do tipo Garantia conformeprazos e demais claacuteusulas do contrato em questatildeo e natildeo incorreratildeo em ocircnusfinanceiro para o MP

Os deflatores satildeo definidos de acordo com os cenaacuterios abaixo

41211 Sistema sem documentaccedilatildeo desatualizada ou incompleta

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo das

funcionalidades impactadas e considera 60

Segue a Foacutermula

PF_INM = PFfi 060

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo das funcionalidades impactadas

41212 Sistema com documentaccedilatildeo completa e atualizada

Neste caso deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e considera 50

Segue a Foacutermula

PF_INM = PFfi 050

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 28: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 28 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

4122 Manutenccedilatildeo de Interface

Contemplam as alteraccedilotildees de interface por exemplo layouts de telasfonte de letra cores de telas logotipos mudanccedila de bototildees na tela mudanccedilade posiccedilatildeo de campos ou texto na tela maacutescaras layout de relatoacuterios ou dearquivos divisatildeo de telas eou relatoacuterios sem que haja alteraccedilatildeo em elementosde dados arquivos referenciados ou informaccedilotildees de controle

Nestes casos deve-se aferir o tamanho em Pontos de Funccedilatildeo dafuncionalidade ou das funcionalidades impactadas e considera 20 dacontagem de uma funccedilatildeo transacional de mais baixa complexidade (3 PF) ouseja 06 PF

Caso seja utilizada uma mesma tela para duas ou mais funcionalidadesdeve ser contada apenas uma funccedilatildeo transacional

Observaccedilatildeo 1 Destaca-se que deve haver correccedilatildeo eou atualizaccedilatildeoda documentaccedilatildeo do sistema Caso natildeo exista documentaccedilatildeo para asfuncionalidades alteradas natildeo seraacute contemplada a redocumentaccedilatildeo dasfuncionalidades da aplicaccedilatildeo impactadas pela manutenccedilatildeo nas demandasdesta categoria

Observaccedilatildeo 2 Este percentual natildeo eacute cumulativo ou seja caso duas oumais alteraccedilotildees de layout sejam realizadas na mesma tela o percentual seraacute

aplicado apenas uma vez

Segue a Foacutermula

PF_INM = PFfi 06 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funccedilotildees transacionais impactadas

4123 Manutenccedilatildeo em Dados de Coacutedigo

Contempla a necessidade de criar ou alterar funcionalidades decadastro alteraccedilatildeo exclusatildeo e consulta de dados de coacutedigo desde que sejammantidas e solicitadas pelo usuaacuterio

Nesses casos para as funccedilotildees transacionais aplica-se 50 da funccedilatildeode mais baixa complexidade (3 PF) e para as funccedilotildees de dados aplica-se 50do ALI de mais baixa complexidade (7 PF)

Segue a foacutermula

PF_INM = PFfi FI

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 29: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 2945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 29 de 45

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de funcionalidades impactadasFI 15 PF para funccedilotildees de transaccedilatildeo e 35 PF para funccedilotildees de dados

Observaccedilatildeo 1 Esse toacutepico natildeo se aplica para atividades de inclusatildeoalteraccedilatildeo e exclusatildeo de dados de domiacutenio em tabelas classificadas comodados de coacutedigo o qual eacute tratado pelo toacutepico Atualizaccedilatildeo de Dados de Coacutedigo

Observaccedilatildeo 2 Conforme consta no toacutepico Dados de Coacutedigo durante oprojeto de desenvolvimento de software natildeo seraacute mensurado em pontos defunccedilatildeo o desenvolvimento de funcionalidades consideradas dados de coacutedigoEste toacutepico aplica-se somente para manutenccedilotildees

4124 Atualizaccedilatildeo de Dados de Coacutedigo

Contemplam a necessidade de inclusatildeo alteraccedilatildeo ou exclusatildeo de dadospertencentes a listas (combo box) ou tabelas fiacutesicas

Neste caso considera-se 50 da contagem de pontos de funccedilatildeo deuma Entrada Externa de complexidade baixa ou seja 15 PF por lista ou tabelafiacutesica alterada incluiacuteda ou excluiacuteda

Segue a foacutermula

PF_INM = PFfi 15 PF

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi quantidade de listas ou tabelas fiacutesicas impactadas

4125 Mensagens

Contemplam a necessidade de alteraccedilotildees de mensagens de retorno aousuaacuterio desde que natildeo acessem ALI ou AIE

Nesses casos deve-se aferir o tamanho em pontos de funccedilatildeo dasfuncionalidades impactadas e aplicar um redutor de 10

Segue a Foacutermula

PF_INM = PFfi 010

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevel

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 30: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 30 de 45

PFfi total de pontos de funccedilatildeo das funcionalidades impactadas

Observaccedilatildeo Estaacute contemplada a atualizaccedilatildeo da documentaccedilatildeo dasfuncionalidades impactadas

4126 Programas Auxiliares

Satildeo programas compostos de procedimentos de atualizaccedilatildeo da base dedados que podem ser desenvolvidos por meio de scripts ou natildeo a seremexecutados apenas uma vez para corrigir dados incorretos ou para atualizardados em bases de dados de aplicaccedilotildees ou ainda para gerar um relatoacuterioespeciacutefico ou um arquivo para o usuaacuterio por meio de recuperaccedilatildeo deinformaccedilotildees armazenadas na aplicaccedilatildeo

Deve-se destacar que esses programas natildeo fazem parte da aplicaccedilatildeo esatildeo executados apenas uma vez podendo ser descartados em seguida

Para serem considerados em uma contagem de pontos de funccedilatildeo osprogramas auxiliares devem figurar claramente nos requisitos do usuaacuterio

Se para atender agrave necessidade do usuaacuterio for necessaacuterio escrever umscript para consultar o banco de dados uma CE ou SE deveraacute ser consideradana contagem Se for necessaacuterio atualizar deletar ou incluir dados no bancouma EE deveraacute ser considerada na contagem de pontos de funccedilatildeo em que astabelas envolvidas seratildeo ALR e os atributos envolvidos seratildeo DER para o

processo elementar EE

Eacute importante ressaltar que as funccedilotildees de dados associadas aos dadosatualizados natildeo devem ser contadas considerando que natildeo haacute mudanccedilasnas estruturas dos arquivos loacutegicos

Nesses casos deve-se medir o tamanho funcional do programa auxiliarconstruiacutedo

Por exemplo se para atender a uma necessidade do usuaacuterio for criadoum programa que realize procedimentos (inserccedilatildeo consulta atualizaccedilatildeo ou

exclusatildeo) em registros de vaacuterias tabelas natildeo seraacute considerado na contagemum programa separado para o procedimento realizado em cada tabela dobanco de dados envolvida mas sim seraacute contado um uacutenico programa auxiliarcriado para atender a necessidade do usuaacuterio

Este toacutepico substitui o conceito de Apuraccedilatildeo Especial utilizado no

Roteiro SISP

Consideraccedilotildees sobre Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 31: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 31 de 45

1 Todo programa auxiliar deve ser documentado devendo adocumentaccedilatildeo conter minimamente um objetivo requisitante datade requisiccedilatildeo descritivo funcional data de descarte (nunca inferior a18 meses)

2 Os Programas Auxiliares devem ser armazenados pelo periacuteodomiacutenimo descrito em sua documentaccedilatildeo de forma a estaremdisponiacuteveis para re-execuccedilotildees quando solicitado

3 Quando houver reexecuccedilatildeo de Programas Auxiliares deve seraplicado um deflator de 5 sobre o programa construiacutedo Areexecuccedilatildeo seraacute considerada quando

bull For reexecutado o mesmo programa (idecircntico ao original)bull Forem aplicados ajustes no script para a troca de paracircmetros

por exemplo nos campos de inclusatildeoalteraccedilatildeo nas chavesde pesquisa dentre outros Entende-se que esses tipos deajustes natildeo satildeo caracterizados alteraccedilotildees de estrutura do

script original

Segue a foacutermula

PF_INM = PFfi 005

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do script construiacutedo

4 Quando houver reexecuccedilatildeo de Programas Auxiliares que sofreramalteraccedilotildees na estrutura do script original de forma anaacuteloga a umprojeto de melhoria numa funcionalidade deve ser aplicado umdeflator de 50 sobre o programa construiacutedo

Segue a foacutermula

PF_INM = PFfi 05

Onde

PF_INM valor em pontos de funccedilatildeo do item natildeo mensuraacutevelPFfi total de pontos de funccedilatildeo do programa construiacutedo

413 Mudanccedila de requisitos durante o projeto de desenvolvimento oumanutenccedilatildeo

Em um processo de desenvolvimento de software eacute comum mudanccedilasde requisitos durante o andamento do projeto ou da manutenccedilatildeo

Quando essas alteraccedilotildees ocorrerem primeiramente eacute necessaacuterioidentificar se as mudanccedilas de requisito estatildeo relacionadas a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 32: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 32 de 45

bull Alteraccedilotildees em funcionalidades que ocorreram em virtude demudanccedilas no domiacutenio do negoacutecio como alteraccedilatildeo de escopo regras denegoacutecio ou mudanccedilas legaisregulamentares durante a execuccedilatildeo darelease ou

bull Alteraccedilotildees referentes agrave evoluccedilatildeo natural dos requisitos provocadaneste uacuteltimo caso pelo aprofundamento detalhamento ecomplementaccedilatildeo de requisitos durante o processo de desenvolvimentoaacutegil

O segundo caso (alteraccedilotildees inerentes ao desenvolvimento aacutegil) eacute tratadono toacutepico Contagem de pontos de funccedilatildeo no desenvolvimento desoftware com meacutetodos aacutegeis

Quanto ao primeiro caso seguem as orientaccedilotildees

4131 Mudanccedilas associadas ao domiacutenio do negoacutecio

Para tratar o dimensionamento das mudanccedilas de requisitos decorridasdo domiacutenio do negoacutecio deve-se levar em consideraccedilatildeo o trabalho executadoateacute o momento da solicitaccedilatildeo de mudanccedila a fim de apurar o retrabalho geradopela mudanccedila Nesse caso sugere-se a utilizaccedilatildeo de percentual por disciplinado ciclo de desenvolvimento conforme os valores definidos na Tabela 1Ressalta-se que esses valores satildeo apenas uma referecircncia podendo serajustados e redefinidos em contratos

Disciplina Percentual deesforccediloEngenharia deRequisitos

25

Anaacutelise e Design 10

Implementaccedilatildeo 40

Teste 15

Homologaccedilatildeo 5

Implantaccedilatildeo 5

Tabela 1 ndash Distribuiccedilatildeo em percentual do esforccedilo por disciplina no ciclode vida

Para realizar o caacutelculo dos percentuais das disciplinas executadasdevem-se considerar somente as disciplinas que tiveram seus produtosreconhecidos pelo MP como concluiacutedos

Quando for utilizado um processo de desenvolvimento incremental aacutegil

deve ser avaliada a viabilidade pelo MP sobre a adoccedilatildeo de percentuais por

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 33: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 33 de 45

disciplina pois em determinados cenaacuterios pode ser inviaacutevel calcular opercentual de participaccedilatildeo de cada disciplina

A Tabela 2 resume os percentuais que devem ser aplicados sobre as

funccedilotildees alteradas (considerando o tamanho antes da mudanccedila) para aobtenccedilatildeo do PF_RETRABALHO

Natureza da Mudanccedila Acreacutescimo ()

Inclusatildeo de Requisito 0

Alteraccedilatildeo de Requisito 50

Exclusatildeo de Requisito 30

Tabela 2 ndash Percentuais definidos para a mudanccedila de requisitos

O processo de caacutelculo do retrabalho considerando o percentual dasdisciplinas executadas ocorre da seguinte forma

Calcula-se o total de pontos de funccedilatildeo das funcionalidades que sofrerammudanccedila nos requisitos baseando-se no requisito antes da mudanccedila e aplica-se o percentual do fator de impacto referente ao tipo de mudanccedila de requisitoEm seguida multiplica-se pelo percentual das disciplinas executadas ateacute omomento da solicitaccedilatildeo da mudanccedila conforme os percentuais referenciados

na Tabela 1

Segue a foacutermula

PF_Retrabalho = (PFfi FI) P

Onde

PFfi pontos de funccedilatildeo da funcionalidade impactada antes da alteraccedilatildeo

FI Fator de Impacto referente ao tipo de mudanccedila conforme

percentuais da Tabela 2P Somatoacuterio do percentual das disciplinas executadas

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima o cenaacuterioabaixo eacute apresentado

Suponha que ao final da etapa de implementaccedilatildeo de um novo relatoacuteriode clientes seja solicitada uma alteraccedilatildeo para acrescentar a exibiccedilatildeo de umanova informaccedilatildeo A equipe de desenvolvimento teraacute um retrabalho de algumasdisciplinas do ciclo de vida Assim o tamanho dessa mudanccedila deve ser

calculado da seguinte maneira

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 34: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 34 de 45

bull Tamanho do relatoacuterio de clientes (Antes da Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

bull Tamanho do relatoacuterio de clientes (Apoacutes a Alteraccedilatildeo)Funccedilatildeo Saiacuteda ExternaComplexidade MeacutediaContribuiccedilatildeo 5PF

O caacutelculo do tamanho da funcionalidade relatoacuterio de clientes seraacutedefinido conforme Tabela 3

Disciplina executadas Percentual deesforccedilo

Engenharia de Requisitos 25Anaacutelise e Design 10

Implementaccedilatildeo 40

Total de disciplinasexecutadas

75

Tabela 3 - Disciplinas executadas para a confecccedilatildeo do relatoacuterio antes damudanccedila

Assim aplicando a foacutermula para o exemplo tem-se o seguinte resultado

PF_Retrabalho = (5PF50) 075 = 1875 PF

Ao final do projeto o pagamento referente ao desenvolvimento dessafuncionalidade de Relatoacuterio de Clientes seria considerado conforme expressona Tabela 4

Descriccedilatildeo Tamanhofaturaacutevel

Relatoacuterio de Clientes ndashPF_Retrabalho

1875 PF

Relatoacuterio de Clientes (RequisitosAlterados)

5 PF

Total de PF para pagamento 6875 PF

Tabela 4 - Demonstrativo de PF para pagamento

Para efeito de gestatildeo das mudanccedilas e geraccedilatildeo de indicadoresrecomenda-se que as demandas de mudanccedilas de acordo com as

caracteriacutesticas descritas neste toacutepico sejam contadas em planilha separada dacontagem do projeto de desenvolvimento ou da manutenccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 35: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3545

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 35 de 45

4132 Desistecircncia de incluir alterar ou excluir uma funccedilatildeo

Quando a mudanccedila no projeto ou demanda for referente agrave desistecircnciade incluir alterar ou excluir funcionalidades a diretriz eacute

Para o caacutelculo do PF_Retrabalho neste tipo de mudanccedila deve-seconsiderar o requisito original e aplicar os percentuais que constam na Tabela2 de acordo com o tipo de mudanccedila de desistecircncia

Entretanto antes de aplicar os percentuais relacionados ao tipo demudanccedila o MP deve avaliar junto agrave contratada o esforccedilo efetivamente aplicadona execuccedilatildeo desse tipo de mudanccedila para negociar a remuneraccedilatildeo somente doesforccedilo gasto

Por exemplo numa requisiccedilatildeo de mudanccedila que solicite a exclusatildeo deuma funcionalidade talvez o retrabalho seja apenas de descarte de algumartefato que compotildee a documentaccedilatildeo do sistema e neste caso pode ser que oesforccedilo natildeo justifique a utilizaccedilatildeo do percentual para excluir a funcionalidade

Dessa forma a aplicaccedilatildeo desses percentuais dependeraacute de umadecisatildeo do MP apoacutes a devida anaacutelise teacutecnica da situaccedilatildeo e a comprovaccedilatildeopela contratada de todo o retrabalho referente agrave desistecircncia do requisito

A Tabela 5 resume os percentuais que devem ser aplicados quando amudanccedila se referir agrave desistecircncia de incluir alterar ou excluir uma funccedilatildeo(considerando o tamanho antes da mudanccedila) para a obtenccedilatildeo doPF_RETRABALHO

FatorRequisito Original

IncluirFunccedilatildeo

AlterarFunccedilatildeo

ExcluirFunccedilatildeo

Mudanccedila de requisito dedesistecircncia

130 80 30

Tabela 5 ndash Percentual para mudanccedila de requisitos de desistecircncia

Eacute importante destacar que cabe ao MP decidir pela adoccedilatildeo dopercentual por disciplina do ciclo de desenvolvimento durante o caacutelculo doPF_RETRABALHO nesta situaccedilatildeo de mudanccedilas referentes agrave desistecircncia deincluir alterar ou de excluir funcionalidades que constavam no escopo doprojeto desde que as regras estabelecidas em contrato natildeo sejam infringidas

414 Contagem de pontos de funccedilatildeo no desenvolvimento de softwarecom meacutetodos aacutegeis

O objetivo deste toacutepico eacute descrever orientaccedilotildees sobre a aplicaccedilatildeo daAnaacutelise de Pontos de Funccedilatildeo em projetos de desenvolvimento de software com

meacutetodos aacutegeis para subsidiar os processos de contrataccedilatildeo de desenvolvimentoe manutenccedilatildeo de software no MP

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 36: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3645

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 36 de 45

Este toacutepico foi elaborado por meio de um estudo preliminar queconsiderou o seguinte cenaacuterio

bull Processo de desenvolvimento de software orientado a metodologiasaacutegeis

bull Divisatildeo do projeto de desenvolvimento ou manutenccedilatildeo em releases

bull Utilizaccedilatildeo de contagem estimativa do projeto definindo o tamanhoestimado de cada uma das releases para efeito de planejamento doprojeto e geraccedilatildeo das Ordens de Serviccedilo de desenvolvimento oumanutenccedilatildeo de software

bull Utilizaccedilatildeo dos conceitos de release Sprint produto pronto Delta queconstam abaixo

Release Definida como um ciclo que perpassa sequencialmente pelas

fases do processo de desenvolvimento de software com o objetivo deentregar ao final do ciclo um produto pronto Com base nessadefiniccedilatildeo entende-se que um produto pronto estaacute associado aosprodutos entregues e aceitos ao final de cada release Recomenda-sedefinir um tempo natildeo muito longo para a release uma vez que oconceito de produto pronto estaria associado a seu teacutermino Logosugere-se um tempo entre 2 e 4 meses

Produto Pronto Com base na definiccedilatildeo de release entende-se que oproduto pronto estaacute associado aos produtos entregues e aceitos com aaprovaccedilatildeo do dono do produto ao final de cada release

Sprint Uma unidade de periacuteodo com datas de iniacutecio e fim preacute-definidasdentro da qual eacute executado um conjunto de atividades previamenteestabelecidas

Delta Valor percentual definido pela instituiccedilatildeo ou oacutergatildeo utilizadopara comparar o volume das alteraccedilotildees inerentes ao processo aacutegil e acontagem detalhada final da release

Considerando os aspectos do desenvolvimento aacutegil eacute praacutetica comum a

existecircncia de evoluccedilotildees em uma funcionalidade durante a execuccedilatildeo das sprints de uma release Assim este guia orienta que as alteraccedilotildees ocorridas dentrodessas caracteriacutesticas ateacute o valor de Delta em relaccedilatildeo ao tamanho darelease natildeo sejam remuneradas de forma adicional ao total de pontos defunccedilatildeo da contagem detalhada final da release pois se entende que satildeorelativas agrave evoluccedilatildeo natural de requisitos o que eacute uma caracteriacutestica inerenteao processo aacutegil e deve ser considerado na definiccedilatildeo do valor do ponto defunccedilatildeo

O caacutelculo do quantitativo de pontos de funccedilatildeo de cada uma das sprints de uma release eacute de decisatildeo e responsabilidade da empresa contratada pois

para reivindicar e fazer jus ao recebimento do volume de alteraccedilatildeo que

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 37: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3745

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 37 de 45

ultrapassar o Delta previsto a contratada deveraacute apresentar memoacuterias decaacutelculos e evidecircncias dos produtos gerados antes e depois das evoluccedilotildees

O Ministeacuterio do Planejamento Orccedilamento e Gestatildeo (MP) atraveacutes de suaDiretoria de Tecnologia da Informaccedilatildeo (DTI) com base em experiecircncias dosprojetos com desenvolvimento aacutegil calculou seu fator D ELTA em 30

Considera-se que o ciclo de trabalho evolutivo inerente aodesenvolvimento aacutegil encerra-se a cada release Dessa forma as alteraccedilotildeesque ocorrerem em funcionalidades existentes apoacutes o teacutermino da release devemser tratadas como projeto de melhoria

Com relaccedilatildeo agraves alteraccedilotildees em funcionalidades ocorridas em virtude demudanccedilas no domiacutenio do negoacutecio devem ser aplicadas as regras descritas notoacutepico Mudanccedilas associadas ao domiacutenio do negoacutecio

Na planilha onde seraacute registrada a contagem referente agrave requisiccedilatildeo demudanccedila devem ser consideradas todas as funcionalidades incluiacutedasalteradas e excluiacutedas poreacutem para efeito de faturamento as funcionalidadesincluiacutedas seratildeo remuneradas somente na contagem da release a fim de natildeoexistir duplicidade de remuneraccedilatildeo

Caacutelculo do Fator Evolutivo Aacutegil

Para o caacutelculo do volume de evoluccedilotildees inerentes ao processo aacutegil (FatorEvolutivo Aacutegil ) de uma release devem ser aplicados os seguintes passos

1 Ao final de cada sprint deve ser efetuada pela contratada umacontagem das funcionalidades solicitadas e entregues

2 Realizar ao final da release uma contagem final detalhada darelease

3 Somar a contagem de todas as sprints executadas na release

4 Calcular o Fator Evolutivo Aacutegil que eacute o volume das alteraccedilotildeesrealizadas ao longo do ciclo da release de acordo com a foacutermulaabaixo

Onde

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints

= contagem final detalhada da release

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 38: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3845

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 38 de 45

bull Na contagem das sprints satildeo consideradas as funccedilotildeesdesenvolvidas e as alteraccedilotildees decorrentes da evoluccedilatildeo dosrequisitos

bull Na contagem final da release satildeo consideradas apenas as funccedilotildeesdesenvolvidas na release

bull Com relaccedilatildeo agraves alteraccedilotildees referentes agrave evoluccedilatildeo de requisitosocorridas entre as sprints da release devem ser aplicadas as regrasdescritas no toacutepico Projeto de Melhoria levando em consideraccedilatildeo ofator de impacto de 50 para funcionalidades alteradas e 30 paraas excluiacutedas

5 Apoacutes o caacutelculo do Fator Evolutivo Aacutegil compara-se o resultado com oDelta e verifica-se

Se o Fator Evolutivo Aacutegil for menor ou igual ao Delta entatildeo

natildeo haveraacute remuneraccedilatildeo adicional agrave contratada aleacutem do valorreferente agrave contagem da release

Se o Fator Evolutivo Aacutegil for maior que o Delta entatildeo deve sercalculado o quantitativo de pontos de funccedilatildeo excedentes a Delta (PF Excedente ) a fim de fazer a remuneraccedilatildeo adicional O caacutelculoocorre da seguinte forma

OndeFP Excedente = Quantidade de pontos de funccedilatildeo excedentes aoDelta

= somatoacuterio das contagens de pontos de funccedilatildeo dassprints PF Release = contagem final detalhada da release Delta = Fator Delta definido pela instituiccedilatildeo ou oacutergatildeo

Para exemplificar a aplicaccedilatildeo dos caacutelculos descritos acima satildeoapresentados dois cenaacuterios Nesses cenaacuterios as funcionalidades alteradas que

constam na contagem das sprints registradas na planilha de contagem satildeoconsideradas como evoluccedilatildeo dos requisitos inerente ao processo dedesenvolvimento aacutegil

Cenaacuterio 1 ndash Cenaacuterio em que o volume das evoluccedilotildees natildeo ultrapassa o Delta definido com o valor de 30

Release 1(composta

de 3

Sprints)

Nome da Funccedilatildeo Tipo Complexidade PF

Observaccedilatildeo

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 39: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 3945

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 39 de 45

Contagem daRelease 1

Nome daFunccedilatildeo Tipo Complexidade PF

IncluirEmpregado

EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

bull Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((27 PFs 22 PFs) -1 )100 = 2272

Contagemda Sprint 1

Incluir Empregado EE Baixa 3

Alterar Empregado EE Baixa 3

Empregado ALI Baixa 7

Contagemda Sprint 2

Excluir Empregado EE Baixa 3

Empregado (alteraccedilatildeo) ALI Baixa 35

Alteraccedilatildeocaracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Contagem

da Sprint 3

Consultar Empregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Incluir Empregado(alteraccedilatildeo) EE Baixa 15

Alteraccedilatildeo

caracterizada comoevoluccedilatildeo de requisitosAplicado o fator deimpacto de 50

Total de PF das Sprints 27

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 40: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4045

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 40 de 45

bull Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta ) No caso deste cenaacuterio 2272 eacute menor que 30 e portantonatildeo haveraacute remuneraccedilatildeo adicional ao total de pontos de funccedilatildeo darelease A remuneraccedilatildeo seraacute referente agrave quantidade de 22 PFs (PFRelease )

Observaccedilatildeo Cabe destacar que a diferenccedila de 5 PFs identificada entreo somatoacuterio de PF das sprints (no caso 27 PFs) e o tamanho da release(no caso 22 PF) deve ser absorvida pela contratada pois de acordocom os conceitos utilizados neste guia refere-se agrave evoluccedilatildeo derequisitos inerente ao processo de desenvolvimento aacutegil

Cenaacuterio 2 ndash Cenaacuterio em que o volume das evoluccedilotildees ultrapassa o Delta definido com o valor de 30

Nesse caso a contagem das sprints deve ser feita em planilha separadada contagem da release

Release 1(composta de 3

Sprints)

Nome daFunccedilatildeo

Tipo Complexidade PFObservaccedilatildeo

Contagem daSprint 1

IncluirEmpregado

EE Baixa 3

Alterar

Empregado

EE Baixa 3

Empregado ALI Baixa 7

Contagem daSprint 2

ExcluirEmpregado

EE Baixa 3

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Contagem daSprint 3

ConsultarEmpregado

CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

IncluirEmpregado(alteraccedilatildeo)

EE Baixa 15

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Empregado(alteraccedilatildeo)

ALI Baixa 35

Alteraccedilatildeo caracterizada comoevoluccedilatildeo de requisitosAplicado o fator de impactode 50

Total de PF das Sprints 305

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 41: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4145

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 41 de 45

Nome daFunccedilatildeo Tipo Complexidade PF

Contagem daRelease 1

IncluirEmpregado EE Baixa 3

AlterarEmpregado

EE Baixa 3

ExcluirEmpregado

EE Baixa 3

ConsultarEmpregado CE Baixa 3

Relatoacuterio XPTO CE Baixa 3

Empregado ALI Baixa 7

Total de PF da Release 22

Os caacutelculos aplicados para este Cenaacuterio 2 satildeo

o Calcular o Fator Evolutivo Aacutegil de acordo com a foacutermula

Fator Evolutivo Aacutegil = ((305 PFs 22 PFs) -1)100 = 3863

o Verificar se o resultado do Fator Evolutivo Aacutegil eacute maior ou igual a 30(Delta) No caso deste cenaacuterio 3863 eacute maior que 30 e portantodeve ser calculado o quantitativo de pontos de funccedilatildeo excedentes a fimde fazer a remuneraccedilatildeo adicional O caacutelculo se daacute da seguinte forma

o Calcular os pontos de funccedilatildeo excedentes aplicando a foacutermula

PF Excedente = (305 PFs ndash 22 PFs) ndash (22 PFs 30 100) = 19 PFs

A contratada seraacute remunerada em 22 PF (PF da Release ) + 19 PF (pontosde funccedilatildeo excedentes ao Delta ) Neste caso a remuneraccedilatildeo da contratadaseraacute de 239 PF

Diante disso no caso de desenvolvimento com meacutetodos aacutegeis natildeo seratildeo

remuneradas as evoluccedilotildees inerentes ao processo aacutegil ocorridas durante a

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 42: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4245

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 42 de 45

execuccedilatildeo da release ateacute 30 (D ELTA ) Somente haveraacute remuneraccedilatildeo do valorque exceder esse percentual

5 Dicas para Otimizar o Custo das Manutenccedilotildees

Eacute fundamental aprimorar a gestatildeo sobre as demandas de manutenccedilatildeo desistemas Se as demandas de manutenccedilatildeo em uma mesma funcionalidadeforem executadas individualmente a tendecircncia eacute que o custo destasmanutenccedilotildees ao final sejam superiores ao que poderiam ser caso houvesseum agrupamento de pequenas solicitaccedilotildees em uma uacutenica demanda agrave Faacutebricade Software

Seguem algumas dicas que podem ajudar a melhorar o cenaacuterio

51 Consolidaccedilatildeo de manutenccedilotildees

Consolidar manutenccedilotildees na mesma funcionalidade em uma uacutenica demandaeacute a maneira mais faacutecil de racionalizar o custo pois fazer uma manutenccedilatildeo paraatender um uacutenico requisito ou para atender a vaacuterios requisitos de manutenccedilatildeona mesma funcionalidade teraacute o mesmo tamanho funcional quando solicitadasao mesmo momento Se solicitadas em momentos distintos as mesmasfuncionalidades seratildeo pagas vaacuterias vezes uma vez para cada um dos projetosde melhoriamanutenccedilatildeo

No entanto nem sempre eacute possiacutevel represar uma necessidade do usuaacuteriopara que esta seja agrupada com outras jaacute que haacute demandas com prazos

criacuteticos O importante eacute tentar avaliar ao maacuteximo quais ajustes realmente satildeocriacuteticos e quais natildeo satildeo visando minimizar o fracionamento das solicitaccedilotildees

52 Anaacutelise criacutetica dos requisitos

Em muitas situaccedilotildees eacute possiacutevel ter uma uacutenica funcionalidade que faccedila opapel de duas existentes Isto eacute muito comum no caso de consultas e relatoacuterioscom diferenccedila apenas de alguns atributos apresentados Ou seja umatransaccedilatildeo mais completa poderia ser elaborada para evitar a criaccedilatildeo de vaacuteriasfuncionalidades distintas poreacutem semelhantes

Eacute mais barato pagar pela criaccedilatildeo de uma funcionalidade nova do quepor uma manutenccedilatildeo em duas ou mais funcionalidades principalmente a longoprazo

O mesmo acontece na definiccedilatildeo dos requisitos quanto agraves regras deordenaccedilatildeo em relatoacuterios e consultas Sempre que possiacutevel deve-se prever aspossiacuteveis opccedilotildees de ordenaccedilatildeo durante o desenvolvimento da funcionalidadepois isso reduziraacute a necessidade de manutenccedilatildeo para atender a novos criteacuteriosde ordenaccedilatildeo

53 Programas Auxiliares

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 43: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4345

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 43 de 45

Para evitar o custo de realizaccedilatildeo de sucessivos Programas Auxiliaresdeve-se ponderar o custobenefiacutecio de se elaborar a criaccedilatildeo de novasfuncionalidades para manter dados que precisam ser atualizados com umacerta frequecircncia

6 Entrega da contagem

Todas as contagens apresentadas ao MP deveratildeo ser feitas utilizando omodelo de planilha adotado pelo oacutergatildeo

Para o preenchimento da planilha devem-se seguir as regrasestabelecidas pelo MP

7 Glossaacuterio

Para a uniformizaccedilatildeo do entendimento do conteuacutedo deste guia seratildeolistadas definiccedilotildees e premissas utilizadas pelo MP na contagem dos pontos defunccedilatildeo

bull Anaacutelise de Pontos de Funccedilatildeo (APF)Meacutetodo para a mediccedilatildeo de tamanho funcional de um software A teacutecnicamede as funcionalidades de um software sob o ponto de vista dousuaacuterio

bull Counting Pratices Manual (CPM)Manual de Praacuteticas de Contagem de pontos de funccedilatildeo mantido peloIFPUG

bull International Function Point Users Group (IFPUG)Grupo Internacional de Usuaacuterios de Pontos de Funccedilatildeo

bull Processo Elementar (PE)Eacute a menor unidade de atividade significativa para o usuaacuterio Deve sercompleto em si mesmo independente e deixar o negoacutecio da aplicaccedilatildeoem estado consistente

bull Loacutegica de ProcessamentoO CPM 43 define loacutegica de processamento como requisitosespecificamente solicitados pelo usuaacuterio para completar um processoelementar Esses requisitos devem incluir as seguintes accedilotildees

o Validaccedilotildees satildeo executadaso Foacutermulas matemaacuteticas e caacutelculos satildeo executadoso Valores equivalentes satildeo convertidoso Dados satildeo filtrados e selecionados atraveacutes da utilizaccedilatildeo de

criteacuterioso Condiccedilotildees satildeo analisadas para verificar quais satildeo aplicaacuteveiso Um ou mais ALIs satildeo atualizadoso Um ou mais ALIs e AIEs satildeo referenciadoso Dados ou informaccedilotildees de controle satildeo recuperados

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 44: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4445

Guia de Contagem de Pontos de Funccedilatildeo do MP

Paacutegina 44 de 45

o Dados derivados satildeo criados atraveacutes da transformaccedilatildeo de dadosexistentes para criar dados adicionais

o O comportamento do sistema eacute alteradoo Preparar e apresentar informaccedilotildees para fora da fronteirao Receber dados ou informaccedilotildees de controle que entram pela

fronteira da aplicaccedilatildeoo Dados satildeo reordenadoso A determinaccedilatildeo do tipo e da unicidade de um processo elementar

ocorre pela loacutegica de processamento vinculada a tal processo ecada processo elementar pode incluir muacuteltiplas alternativas ouocorrecircncias das accedilotildees acima

bull Registro Loacutegico Referenciado (RLR ou TR)Um tipo de registro loacutegico referenciado eacute um subgrupo de dadosreconhecido pelo usuaacuterio dentro de uma funccedilatildeo de dados (ALI ou AIE)

bull Arquivo Loacutegico Referenciado (ALR ou AR)Funccedilatildeo de dados lida eou mantida por uma funccedilatildeo transacional

bull Dado Elementar Referenciado (DER ou TD)Atributo uacutenico reconhecido pelo usuaacuterio e natildeo repetido

8 Processo de Revisatildeo do Guia de Contagem

81 Revisatildeo para Correccedilatildeo de Inconsistecircncias e Situaccedilotildees NatildeoPrevistas

As adequaccedilotildees a este guia poderatildeo ser realizadas pelo Ministeacuterio doPlanejamento Orccedilamento e Gestatildeo para atender normas vigentes situaccedilotildeesnatildeo previstas recomendaccedilotildees de oacutergatildeo de controle bem como ajuste de textopara evitar duplicidade no entendimento

82 Revisatildeo para Adoccedilatildeo de Novas Versotildees do CPM

Com o lanccedilamento de novas versotildees do manual (CPM) sua adoccedilatildeocomo referecircncia para este guia de contagem deveraacute ser acordada entre o MP ea contratada

9 Referecircncias Bibliograacuteficas

1 Manual de Praacuteticas de Contagem de Pontos de Funccedilatildeo Versatildeo 431International Function Point Users Group (IFPUG) janeiro20102 Roteiro de Meacutetricas de Software do SISP Versatildeo 20 disponiacutevel emhttpwwwsispgovbrct-gciedownloadfileRoteiro_de_Metricas_de_Software_do_SISP_-_v20pdfAcessado em novembro de 20143 Vazquez C E Simotildees G S Albert R M Anaacutelise de Pontos de

Funccedilatildeo Mediccedilatildeo Estimativas e Gerenciamento de Projetos de Software10ed Satildeo Paulo Editora Eacuterica 2010

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015

Page 45: GuiadeContagemdePontosdeFuncao.pdf

7172019 GuiadeContagemdePontosdeFuncaopdf

httpslidepdfcomreaderfullguiadecontagemdepontosdefuncaopdf 4545

Guia de Contagem de Pontos de Funccedilatildeo do MP

4 Anaacutelise de pontos de funccedilatildeo para melhoria de software versatildeo 221Associaccedilatildeo Holandesa dos Usuaacuterios de Meacutetricas de Software (NESMA)5 httpfattocscomptblog-pt site acessado em novembro e dezembro de20146 Artigo sobre Diferentes aplicaccedilotildees diferentes visotildees dos dados elaboradopor Carlos Eduardo Vazquez da FATTO Consultoria e Sistemas7 Encarte IX ndash Guia de Contagem e Estimativa Lote 02 Pregatildeo EletrocircnicoSRP Nordm 282012-MME8 Guia de Contagem de Pontos de Funccedilatildeo do INEP versatildeo 73 20129 Guia de Contagem de Pontos de Funccedilatildeo STN ndash SERPRO versatildeo 20201310 Guia de Contagem de Pontos de Funccedilatildeo da Infraero versatildeo 601 201411 Guia de Contagem do PROCERGS versatildeo 20 201312 Guia de Contagem do Ministeacuterio da Justiccedila versatildeo 20 201313 httpfattocscomptcontagem-antecipada site acessado em fevereiro de

2015