me-ead-aula2-texto

Page 1

Horรกcio ribeiro

Aula 02: Medidas indiretas e medida da funcionalidade


Horácio ribeiro

Texto

Precisamos construção.

de

uma

forma

de

medir

o

software

antes

de

sua

Para decidir como o software será feito, quanto tempo

levará. Definir a estratégia de desenvolvimento. São decisões que são tomadas antes de se fazer o software. Vamos ver como podemos fazer isto. Medir o software a partir das definições de sua funcionalidade.

O modelo de ponto função foi apresentado por por Albrecht em 1974, que após analisar perto de 5000 softwares, estabeleceu uma função construída a partir de dados obtidos. Construir funções a partir de dados é uma prática comum em engenharia, onde se criar um modelo a partir da observação do fenômeno. (exemplos da física, mecânica dos fluidos...). A PRINCIPAL IDÉIA, É QUE DADO Uma especificação, pode-se criar uma medida para a medir a funcionalidade. Desta forma, pode-se criar uma função que mapeie a funcionalidade do software na reta dos reais. E quanto mais funcionalidade maior será este número.. Esta medida é chamada de Ponto função.


HorĂĄcio ribeiro

Albrecht constatou que as funcionalidade dependiam do Numero de Entradas de dados (entradas), das saĂ­das geradas (saĂ­das), das consultas feitas(consultas), dos arquivos usados (arquivos) e interfaces com outros sistemas (interfaces).


Horácio ribeiro

Assim estudando o comportamento do software, quanto a sua complexidade, estabeleceu pesos de importância de modo que a contagem destes elementos multiplicados por seu peso representa-se a funcionalidade através de um número. Este numero representa o total de ponto função (não ajustado ).

Exemplo simples de contagem, utilizando um DFD.


Horรกcio ribeiro

Aplicando a contagem no DFD identificamos por exemplo,

Preenchendo a tabela tem-se:


Horácio ribeiro

Concluímos que

o exemplo tem 46 Pontos Função não ajustados.

As características físicas de implementação das funcionalidades podem aumentar ou diminuir o esforço de implementação. Assim as características de implementação influenciam o valor obtido pela contagem. Foram levantadas 14 características de implementação, chamadas de níveis de influencia. A estas características são atribuídas notas de0 (sem influencia) a 5 (forte influencia) esta nota e chamada nível de influencia. Estas notas podem ser dadas pelo grupo de profissionais de uma empresa em função de suas experiências para softwares para determinados setores de aplicação.


Horácio ribeiro

Estas notas devem ser somadas. Esta soma vamos representar na forma: somatório de i (i variando de 1 a 14) indicando as notas dos 14 itens.

Se todos os itens forem considerados sem importância o somatório é 0 e 70 se todos forem considerados fundamentais. São usadas 14 características gerais de sistemas são:

– 1. Comunicação de Dados – 2. Processamento de Dados Distribuído – 3. Desempenho – 4. Utilização do Equipamento (Restrições Computacionais) – 5. Volume de Transações – 6. Entrada de Dados On-line – 7. Eficiência do Usuário Final (Usabilidade) – 8. Atualização On-line

de

Recursos


Horácio ribeiro

– 9. Processamento Complexo – 10. Reusabilidade – 11. Facilidade de Implantação – 12. Facilidade Operacional (Processos Operacionais, tais como Inicialização, Cópia de Segurança, ...) – 13. Múltiplos Locais e Organizações do Usuário – 14. Facilidade de Mudanças (Manutenibilidade) Observando pontos a partir de produtos prontos, atribuiu-se que o total de ponto função é constituído de 65 % do valor da contagem, sendo o restante dependente de um porcento do total da contagem. Assim constitui-se a formula:

Tot_ponto_função_ajustado = tot_contado

*

(0,65 + 0,01 *

) Observe que o total_contado é multiplicado por um valor que pode variar de 1,35 a 0,65 dependendo dos graus de influencia das 14 características analisadas. Este índice é chamado de fator de ajuste. A simples contagem da o valor de ponto função NAO AJUSTADO, muitas empresa usam este número para sua gerencia de software. Dependendo das características necessárias para um determinado setor pode-se estabelecer o fator de ajuste. Isto permite que se compare totais de ponto função entre softwares de aplicações diferentes. O valor obtido multiplicando o total da contagem (ponto função não ajustado) com o fator de ajuste gera o total de ponto função ajustado. Com o uso de análise de ponto função pode-se definir indicadores que permitem comparar softwares com características diferentes (o que não era possível com LOC).


Horácio ribeiro

A partir da contagem de PF que reflete o tamanho de um sistema, é possível se definir a produtividade de uma equipe (por exemplo, em horas por ponto de função - H/PF), desde que se utilize métricas de acompanhamento, por exemplo, prazo ou esforço para executar uma determinada tarefa .

O PF são mapeados em KLOC´s baseado no tipo de linguagem.. Estas tabelas são atualizadas mundialmente pelo IFPG.

Desafio: Considere que a partir de um diagrama de caso e uso você encontrou 178,45 PF ajustados. Considere a tabela de produtividade dos profissionais de sua empresa baseado em vários projetos já concluídos. Faça a previsão de prazo e de tamanho para confeccionar o software referente ao caso e uso: TABELA DE PRODUTIVIDADE DA EQUIPE POR LINGUAGEM DE PROGRAMAÇÃO PARA 1 PF PHP 45 LOC - 3 DIAS ÚTEIS C 72 LOC 8 DIAS ÚTEIS JAVA 58 LOC 8 DIAS ÚTEIS C ++ 72 LINHAS 8 DIAS PYTON 45 LOC............2 DIAS CÁLCULO: POR PROGRAMAÇÃO BASTA multiplicar o total de PF achado pelo numero de LOCs apresentados na tabela. A tabela abaixo mostra o resultado para o prazo e tamanho


Horácio ribeiro

linguagem

tamanho em linhas (LOC)

prazo em dias úteis

php c java

8030,25 12848,4 10350,1

535,35 1427,6 535,35

c++

12848,4

535,35

pyton

8030,25

356,9

Assim podemos decidir em, em termos de custo e prazo qual a linguagem mais adequada para o desenvolvimento do software. Desafio Considere a tabela Fo exemplo anterior e o dfd abaixo:

Considerando a contagem, defina qual p prazo inicial para desenvolver o sistema em Java. Considere o caso de uso abaixo e seu respectivo fluxo primário


Horácio ribeiro

Quanto mais informações e preciso for o diagrama melhor o nível de nossa contagem. Mas vamos fazer um exercício de contagem a partir do diagrama acima.


HorĂĄcio ribeiro

Contamos : arquivos 5 3 Entrada...3 SaĂ­da.....1 Consulta 2 Interfaces 0 2


Horácio ribeiro

6 5 0

35 0

Como se trata de um software bem simples (de entrada e saída e consulta em um banco de dados) aplicando-se a tabela temos: 54 ponto função não ajustado Se fizer os em C teremos- 3388 linha de código com um prazo de 432 horas de desenvolvimento. .......Se fizermos em PHP teremos  2530 linhas e com um prazo de 162 horas de desenvolvimento Quando uma empresa cria o seu critério de contagem estabelece um referencial que permite fazer comparações e gerencias entre softwares dentro desta empresa. Mas, também precisa-se trocar informações entre empresas, desta forma foi desenvolvido pelo APFG um manual de contagem que define os critérios de contagem para que diminua a subjetividade do método. Isto será visto nas próximas aulas.

A contagem de pontos de função (PF) gera um valor que nos dá a idéia de tamanho de um sistema, baseado nas transações de dados que o mesmo possui, bem como nos seus agrupamentos de dados. Os resultados derivados da aplicação direta ou indireta da técnica de contagem podem dar muitas informações sobre um sistema além da estimativa de tamanho do mesmo. Já se utilizam PF como base para cálculo de produtividade da equipe, bem como para base de estimativa de esforço e prazo para desenvolvimento de um sistema. Pode-se também utilizar PF para desenvolver um orçamento de um projeto de desenvolvimento de sistema


Horácio ribeiro

ou até como moeda base de preço e pagamento de um sistema, o que, aliás, já ocorre em muitas licitações públicas aqui no Brasil. Aprenda mais assistindo a palestra do professor Vasquez (da fattocr)

Análise de Pontos de Função O metro quadrado do software

(Coloquei na biblioteca)


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.