O que são essas “pequenas diferenças”?

Acho que con­forme a pes­soa vai enve­lhe­cendo ela vai gos­tando mais de Roberto Car­los. Quando tinha meus 15 anos de idade, achava que ele fosse o ícone maior do mal gosto… Hoje quando ouço a Marisa Mon­tes com o seu Depois eu gosto e se olhar bem no fundo não é tão dife­rente. Eu me lem­brei dele por casa dos deta­lhes tão peque­nos de nós dois e das peque­nas dife­ren­ças que sur­gem no CPM 4.3.

Afi­nal o que é uma “pequena dife­rença” no con­texto da apli­ca­ção da Aná­lise de Pon­tos de Função?

Antes da intro­du­ção dessa res­salva na regra, havia pro­fis­si­o­nais que con­ta­vam uma fun­ção para “lis­tar bata­tas” e outra fun­ção dife­rente para “lis­tar os mes­mos dados das bata­tas só que antes infor­mando alguns cri­té­rios de fil­tro”. Encon­trei mais de um CFPS fazendo isso! Quando dizia que ele estava errado, a res­posta vinha na ponta da linha: Cadu, ora, há uma lógica de pro­ces­sa­mento para apre­sen­tar os dados sem infor­mar os cri­té­rios de fil­tro e uma outra lógica dife­rente para apre­sen­tar os dados que aten­dem a deter­mi­na­dos cri­té­rios. Uma des­sas pes­soas, me con­tes­tou: Mostre-me no CPM! Enquanto ela espe­rava que eu fosse nos exem­plos ou nas regras, apre­sen­tava a ela logo na intro­du­ção que a APF mede Requi­si­tos Fun­ci­o­nais do Usuá­rio; faz isso na pers­pec­tiva de suas tare­fas. Fiquei feliz com a mudança na regra (que não mudou! Clarificou).

Na última oca­sião em que comen­tei sobre essa his­tó­ria publi­ca­mente, havia comen­tado tam­bém a cidade em que as três vezes em que isso acon­te­ceu e uma moça per­deu uma opor­tu­ni­dade de emprego por­que tra­ba­lhava naquela cidade, então, mais maduro, nem entro nesse mérito.

Qual a lógica da APF? Ela busca per­mi­tir esti­mar o tama­nho do soft­ware ainda em momen­tos pre­li­mi­na­res quando há pouca infor­ma­ção e que os resul­ta­dos dessa esti­ma­tiva esteja den­tro do que se espera para fins de um orça­mento ou no mínimo para um estudo de via­bi­li­dade. Ela busca per­mi­tir medir soft­ware inde­pen­dente da arqui­te­tura tec­no­ló­gica, do pro­jeto de TI que imple­menta uma apli­ca­ção. Ela busca ser sim­ples e fácil de usar, ainda assim pro­du­zindo resul­ta­dos con­sis­ten­tes entre diver­sas pes­soas e organizações.

O com­po­nente fun­ci­o­nal básico na medi­ção pelo método do IFPUG está no nível das tare­fas que um usuá­rio desem­pe­nha. Veja que mudar de um campo para outro não é uma tarefa do usuá­rio de um con­tas a pagar! Ao rea­li­zar a medi­ção ou esti­ma­tiva do tama­nho fun­ci­o­nal, a pes­soa deve antes de tudo esta­be­le­cer o refe­ren­cial de quem são os seus usuá­rios. Quando mon­tei o mate­rial do nosso curso de enge­nha­ria de requi­si­tos me depa­rei com um mate­rial do Alis­tair Cock­burn no livro Wri­ting Effec­tive Use Cases que define o con­ceito de nível de obje­tivo e cujo dia­grama que ele usa na expli­ca­ção da coisa trans­crevo aqui para apoiar a explo­ra­ção do meu raciocínio:

Níveis de Objetivo
Níveis de Objetivo

 Ao rea­li­zar a Aná­lise de Pon­tos de Fun­ção temos nive­lar a iden­ti­fi­ca­ção de fun­ci­o­na­li­da­des no nível dos obje­ti­vos do usuá­rio. Antes de qual­quer coisa, deve-se iden­ti­fi­car (ou defi­nir se não esti­ve­rem dis­po­ní­veis) os obje­ti­vos do usuá­rio na pers­pec­tiva da rea­li­za­ção de uma tarefa (não os obje­ti­vos do negó­cio que tem uma pers­pec­tiva agre­ga­dora ou os obje­ti­vos inter­me­diá­rios que tem uma pers­pec­tiva de um passo, uma subfunção).

Quanto mais eu me apro­fundo na APF, mais eu per­cebo que se o tra­ba­lho de requi­si­tos fosse feito ade­qua­da­mente, sua medi­ção seria pra­ti­ca­mente auto­má­tica e essa intro­du­ção foi para abor­dar a dúvida da colega Renata Gua­naes que fez a seguinte manifestação:

Há um Cadas­tro de Pro­je­tos com vários atri­bu­tos: carac­te­rís­ti­cas do pro­jeto (infor­ma­ções bási­cas, como nome do pro­jeto, data de iní­cio, data de tér­mino, região onde o pro­jeto se desen­volve, etc.).

Con­si­de­rem o pro­jeto com vários Regis­tros Lógi­cos: ati­vi­da­des do pro­jeto, recur­sos uti­li­za­dos pelos pro­je­tos, equi­pa­men­tos uti­li­za­dos no pro­jeto, etc. Cada RL con­tém os res­pec­ti­vos custos.

O usuá­rio soli­cita um Rela­tó­rio (Rela­tó­rio 1) que agrupe total de cus­tos do Pro­jeto por Ati­vi­da­des. Seria uma Saída Externa.

Além disso, ele tam­bém soli­cita o agru­pa­mento do total de cus­tos por outros atri­bu­tos, como Recur­sos, Equi­pa­men­tos, Região, etc. Esses rela­tó­rios teriam o mesmo layout do Rela­tó­rio 1.

Eu devo con­si­de­rar dife­ren­tes Saí­das Exter­nas? Ou trata-se de uma mesma SE com peque­nas variações?

Para res­pon­der a per­gunta dela pre­ci­sa­mos ava­liar dois aspec­tos da APF:

-       Ela mede requi­si­tos fun­ci­o­nais do usuário;

-       Dois pro­ces­sos simi­la­res podem ser mape­a­dos para uma única função.

Trata-se da apli­ca­ção da APF no domí­nio de um BI em que se rea­liza o levan­ta­mento junto ao usuá­rio com o obje­tivo de iden­ti­fi­car cubos com seus fatos e suas dimen­sões. O inte­resse do usuá­rio é uma vari­e­dade inde­ter­mi­nada de dife­ren­tes visões sobre esses fatos agre­ga­dos usando dife­ren­tes cri­té­rios (somando, cal­cu­lando a média, apre­sen­tando o maior ou menor valor, etc.) e con­forme com­bi­na­ções pre­vi­a­mente não esta­be­le­ci­das de dimen­sões hori­zon­tais e verticais.

Em um con­texto como esse que eu des­crevi, o requi­sito fun­ci­o­nal do usuá­rio é “Con­sul­tar Dados do Cubo”. As diver­sas e des­co­nhe­ci­das pos­sí­veis com­bi­na­ções estão no plano dos requi­si­tos não fun­ci­o­nais, no caso, faci­li­dade de manu­ten­ção (ISO/IEC 9126).

Trata-se do con­texto de um sis­tema de infor­ma­ção geren­cial em que se for­mula a per­gunta da Renata Gua­naes. Ao rea­li­zar as ati­vi­da­des de levan­ta­mento entre­vis­tando um usuá­rio, identificou-se que para ele rea­li­zar deter­mi­nado tra­ba­lho (tarefa) ele pre­cisa de um rela­tó­rio. Quando se rea­li­zou o levan­ta­mento com outro usuá­rio (ou o mesmo usuá­rio, mas com neces­si­da­des dife­ren­tes para outra tarefa), verificou-se a neces­si­dade de infor­ma­ções simi­la­res, porém com outro cri­té­rio de agru­pa­mento. Quando se rea­li­zou a aná­lise do mate­rial con­fir­mado nos even­tos de levan­ta­mento, não houve pos­si­bi­li­dade de con­ci­liar esses dois dife­ren­tes requi­si­tos em um único.

Nesse último con­texto, já temos dois dife­ren­tes requi­si­tos fun­ci­o­nais iden­ti­fi­ca­dos, duas his­tó­rias dife­ren­tes que, quando pro­ces­sa­das pelas regras de con­ta­gem, apre­sen­tam dife­ren­tes lógi­cas de pro­ces­sa­mento, resul­tando em dife­ren­tes fun­ções! A dife­rença de ape­nas um campo na saída de um rela­tó­rio pode não ser con­si­de­rado uma pequena diferença!

Quando um ana­lista de métri­cas faz a sua aná­lise ele DEVE ter dis­po­ní­vel infor­ma­ção de refe­ren­cia para poder iden­ti­fi­car essa infor­ma­ção de con­texto. Vejo hoje mui­tos cole­gas num movi­mento inverso àquele que des­crevi na aber­tura deste texto. Tudo é uma pequena vari­a­ção. Estão tão equi­vo­ca­dos quanto os pri­mei­ros… mas ao con­trá­rio deles há um fator amenizante:

-       Os docu­men­tos de requi­si­tos per­mi­tem cla­ra­mente segre­gar o que é requi­sito fun­ci­o­nal do usuá­rio do que seja requi­sito não fun­ci­o­nal do usuá­rio para o con­texto em análise?

-       Os docu­men­tos de requi­si­tos apre­sen­tam os papeis e suas tare­fas e res­pon­sa­bi­li­da­des no que se refere a inte­ra­ção com o sistema?

-       Os docu­men­tos de requi­si­tos estão escri­tos no sen­tido de des­cre­ver o com­por­ta­mento do sis­tema em ter­mos das tare­fas e ser­vi­ços do usuá­rio ou estão mais pró­xi­mos de espe­ci­fi­ca­ções de ser­viço que abor­dam ques­tões da dis­ci­plina de aná­lise e pro­jeto (ou mesmo da dis­ci­plina de implementação)?

Sem esses refe­ren­cias não há medi­ção; há ESTIMATIVA.

Post Anterior

One Response to “O que são essas “pequenas diferenças”?”

  1. 1
    Aline So Says:

    Cadú,

    Muito bom este seu texto. Toca dire­ta­mente nas com­pe­tên­cias que o Ana­lista de Métri­cas deve ter para exer­cer sua fun­ção; a capa­ci­dade de ana­li­sar (e não só sair con­tanto, ou não con­tando… como um robô)!

    Aliás, fica aqui a minha suges­tão para as pró­xi­mas ver­sões do CPM… con­tem­plar a dis­ci­plina de “Com­pe­tên­cias do Ana­lista de Métri­cas” — assim como o BABOK faz como suges­tão para os Ana­lista de Negócios.

    O * sis­tema * de edu­ca­ção cor­po­ra­tiva (em tem­pos atu­ais leia-se “escár­nio cor­po­ra­tivo”) muito se pre­o­cupa em capa­ci­tar (ou explo­rar) seus pro­fis­si­o­nais nas téc­ni­cas de exe­cu­ção ope­ra­ci­o­nal (e nada inte­lec­tual!), visando efi­ci­ên­cia em núme­ros para o melhor indi­ca­dor!, boas esta­tís­ti­cas!, (tudo furado!!!) e se esquece que o cari­nha que está na cara do gol é gente tra­tando com gente. Ahhh, o ser humano!

    Vol­tando à téc­nica, eu ainda com­ple­men­ta­ria a iden­ti­fi­ca­ção dos obje­ti­vos do usuá­rio na pers­pec­tiva da rea­li­za­ção de uma tarefa #para aten­der àquela fra­ção de negó­cio# – para garan­tir à amar­ra­ção (o com­pro­me­ti­mento) do usuá­rio (o cari­nha que está na cara do gol com a gente, o ser humano…) com o negócio.

    Quanto à sua cita­ção sobre os requi­si­tos ade­qua­dos, as orga­ni­za­ções ainda pre­ci­sam per­dem muito dinheiro e mui­tos ges­to­res de pro­je­tos ainda vão sofrer de muita insô­nia por verem seus pro­je­tos nau­fra­ga­rem. Infe­liz­mente! Não dão a aten­ção à alma do #seu# negó­cio; o requisito.

    Medi­ção auto­má­tica é requi­sito garan­tido para implan­ta­ção! E seria tão sim­ples; 1) dados que par­ti­ci­pam da tran­sa­ção e de que forma (inter­fa­ce­ado, ou não), 2) seus depó­si­tos de arma­ze­na­mento de dados e recu­pe­ra­ção e 3) suas lógi­cas de pro­ces­sa­men­tos exe­cu­ta­das. Só isto! #Espe­ci­fi­ca­dos#, #decla­ra­dos#, #explí­ci­tos# na docu­men­ta­ção do projeto.

    É pedir muito, neh?

    Caro Cadú, per­doa esta sua segui­dora por fazer deste comen­tá­rio um sub-blog. Esta não foi a inten­ção, mas sim a expres­são do desejo de um dia, ou tão logo, o * sis­tema * ser melhor.

Leave a Reply

  • Livro APF

    Livro APF Aná­lise de Pon­tos de Fun­ção: Medi­ção, Esti­ma­ti­vas e Geren­ci­a­mento de Pro­je­tos de Soft­ware (Atu­a­li­zado para a ver­são 4.3.1 do CPMIFPUG) Adquira já: Edi­tora Érica