Você está na página 1de 10

Mtrica de Software: metodologia para a quantificao de um projeto de software.

Das principais metodologias existentes no mercado, podemos citar: LOC (Line of Code) 1940-1950 Desvantagens: Relao com a tecnologia usada no desenvolvimento, ou seja, qual linguagem seria usada no desenvolvimento. O produto precisa estar pronto para saber o valor; Dependncia do programador e com isso os programas ficavam enormes e menos performticos.

NSAA (Neverland software assurance account) 1960 Ainda dependia de LOC

Constructive Los oder (Confirmar este nome) Componentizao. Ex: cadastro de pessoas

Analise de Pontos por caso de uso - 1990 Voltado para o ponto de vista do usurio

APF (Analise de Ponto de Funo) Mtrica desenvolvida na dcada de 70 na IBM pelo engenheiro de software Allan J. Albrercht, que leva em considerao as funcionalidades do sistema sob a perspectiva do usurio final. A contagem dos pontos de funo regulamentada pelo International Function Point Users Group IFPUG. O OFPUG publica o Counting Practices Manual (Manual de Prticas de Contagem), atualmente na verso 4.2.1, que estabelece os padres para o clculos dos pontos de funo. APF independe da tecnologia utilizada no desenvolvimento e como desvantagem no quantifica projetos de manuteno corretiva, apenas manuteno evolutiva ou desenvolvimentos de novos projetos.

COMO CONTAR???

1 - Definir o escopo da contagem: Temos que saber o que ser contado. Ex: Iremos contar
funcionalidades a, b, c e d e no contaremos e, f, g e H.

Obs.: Os sistemas geralmente so baseados em dois pilares: Existe interao do usurio: No qual o usurio tem interao com o sistema, com as transaes (online ou batch). Base de dados: Geralmente o que diferencia um sistema de um programa, que geralmente um programa no possui banco de dados.

**CAIR NA AVALIAO INTEGRADA

2 - Contar Funes do tipo DADOS: Referem-se s operaes de manipulao (incluso,


pesquisa, consulta, alterao, excluso) de dados. Em arquivos que para a APF podem ser: A.L.I. (Arquivo Lgico Interno): Todo e qualquer arquivo mantido pela aplicao que est sendo contada, e encontra-se dentro desta. A.I.E. (Arquivo de Interface Externa): Idem a A.L.I. , porm no encontram-se na aplicao que est sendo contada. So exemplos de A.L.I./A.I.E.: Entidades de banco de dados (contanto que no sejam de relacionamento), arquivos de configurao do sistema No so exemplos de A.L.I./A.I.E.: Arquivos de backup, arquivos de remessa/retorno de transaes financeiras (transao de conexo assimtrica), arquivos temporrios do sistema, arquivos de log, arquivos de ndice em banco de dados, arquivos e relacionamento em banco de dados relacionais com cardinalidade N para N.

CONCEITOS Tipos de dados (<20, 20-50, >50): Referem-se aos atributos em um A.L.I./A.I.E. reconhecidos pelo usurio. Tabela de complexidade (Baixa, Mdia ou Alta) de um A.L.I./A.I.E. IMPORTANTE: Para saber qual a complexidade (Baixa, Mdia ou Alta) preciso olhar para o tipo de registro. Tipos de registros: Todo e qualquer agrupamento lgico de dados. Ex: No campo Estado civil eu posso ter mais de uma opo (solteiro, casado, vivo), J no campo Nome a informao ali contida ser nica. Sexo NO um agrupamento logico de dados, pois unicamente teremos dois tipos de sexo e essa informao no muda. J o UF, temos 27, mas este numero pode aumentar com a criao de um novo estado.

PRTICA: Exemplo de contagem de funes do tipo dados: Suponhamos que temos em uma tabela de cadastro de clientes: 27 tipos de dados 3 tipos de registros

Ento a complexidade ser Mdia.

Logo, se sabemos que um Arquivo Lgico Interno (A.L.I.) e de complexidade Mdia, temos 10 P.F. na tabela de cadastro de clientes.

3. Contar Funes do tipo TRANSAO: Referem-se s operaes de interao com as


funcionalidades do sistema, podendo ser online ou batch. Segundo a APF, podem ser caracterizadas de 3 tipos: Entradas externas: Todas as operaes de incluso, alterao e excluso (excluso uma entrada externa). Sadas externas: Referem-se s operaes de extrao de dados do sistema, que possuem obrigatoriamente clculos matemticos ou processamento computacional apurado. Consultas externas: Idem sadas externas, porm no possuem clculos matemticos ou processamento computacional elaborado.

Tipos de dados para funes do tipo transao: Todo e qualquer campo de dados reconhecido pelo usurio em transaes online ou batch. Arquivos referenciados: So os A.L.Is./A.I.Es. manipulados pela transao que est sendo contada.

PRTICA: Exemplo de contagem de funes do tipo Transao: Identifique se uma entrada, sada ou consulta.

Neste exemplo ser uma Entrada, pois iremos inserir dados em uma tabela. Aps identificar tambm quantos campos so reconhecidos pelo usurios (Tipos de dados), que neste caso so 13, identificamos os arquivos referenciados: Quando clicar no boto salvar, aps inserir os dados nos campos reconhecidos, estes dados sero enviados para as tabelas no banco de dados, ento ser necessrio contar para quantas tabelas (arquivos referenciados) estes dados sero enviados. Neste exemplo sero 4.

Como temos uma Entrada de complexidade alta, logo teremos mais 6 P.F.

Ento somando os 10 P.F. das funes do tipo DADOS mais os 6 P.F. de funes do tipo TRANSAO, temos 16 P.F. na construo da funo de cadastro de usurios.

4. Contar Pontos de Funo no Ajustados (Bruto)


Na dcada de 80, percebeu-se que a APF no levava em considerao, caractersticas ambientais (externas) ao sistema. Para isso foram mapeadas 14 caractersticas gerais do sistema, que passaram a levar em considerao a complexidade das operaes. So elas: 1234567891011121314Complicao de dados Processamento distribudo Performance Configurao altamente utilizada Volume de transaes Entrada de dados online Eficincia do usurio final Atualizaes online Complexidade de processamento Reusabilidade Facilidade de instalao Facilidade de operao Mltiplos locais Facilidade de mudanas.

(udio 2h22)

Para cada item acima, o analista dar uma nota de 0 5 Exemplo utilizando o item 7 (Eficincia do Usurio Final) em um sistema de cadastro de clientes: a) Suponhamos que o usurio que ir usar o sistema seja funcionrio da empresa a muitos anos, tem experincia em cadastro de usurio, conhece as regras de negcio, um usurio avanado de TI, ou seja, um usurio perfeito. Logo esse usurio no tem influncia no sistema, ento ele receberia uma nota 0. b) Em um novo exemplo, este usurio trabalha a muito tempo na empresa, um usurio avanado de TI, porm no conhece as regras de negcio, ento ele no tem experincia no cadastro de clientes, portanto este receberia a nota 1, pois ele teria uma influencia mnima no sistema. c) Num outro caso, ele novo na empresa e no conhece as regras de negcio da empresa, ento ele exerce uma Influncia moderada no sistema. Nesse caso recebe a nota 2. d) Outro caso seria de um terceirizado, este receberia uma nota 3. e) Em outro o usurio novo, terceirizado e no um usurio avanado de TI, logo teria uma influncia significativa e receberia uma nota 4. f) Noutro ele no conhece as regras de negcio, recm contratado, no usurio de TI e um estagirio, este receberia nota 5 por exercer forte influencia no sistema. Ento para as 14 caractersticas listado acima, veremos o nvel de influencia delas.

5. Mapear as 14 C.G.S.: Aps dar notas para todos os itens acima, poderemos alcanar uma
nota mxima de 70 (14x5).

6 - Calcular o fator de ajustes: um valor que pode aumentar ou diminuir a quantidade de


ponto de funo em at 35% Formula: FA= 14CGS * 0,01 + 0,65

7. Calcular Pontos de funo ajustados (Lquidos):


Formula: PFA= PFNA * FA

LEGENDA: FA= Fator de ajuste PFNA= Pontos de Funo no ajustados PFA= Pontos de funo ajustados CGS= Caractersticas gerais do sistema

8. Definir Prazo 9. Definir Envolvidos 10. Definir Custo

CURIOSIDADES: O valor do ponto de funo depende do cdigo no qual o sistema ser desenvolvido. As linguagens possuem tempo de desenvolvimento diferentes umas das outras. O JAVA uma das mais utilizadas atualmente, devido ser multiplataforma e possuir alta segurana.