Upload
bussard
View
215
Download
0
Embed Size (px)
Citation preview
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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