Plano de Projeto de Software Competência: Analisar e Desenvolver o Plano de Projeto (Estimativas)

Preview:

Citation preview

Plano de Projeto de Software

Competência: Analisar e Desenvolver o Plano de Projeto

(Estimativas)

Agenda

• Introdução.

• Técnicas de Decomposição.

• Estimativas de Linhas de Código (LOC).

• Estimativas por Pontos-por-Função (FP).

• Estimativa do Esforço.

• Modelos Empíricos.

Plano de Projeto - Revisão

I. Introdução;II. Estimativas de Projeto;III. Riscos do Projeto;IV. Cronograma;V. Recursos do Projeto;VI. Organização do Pessoal;VII. Mecanismos de Tracking

(rastreamento) e controle.

II. EstimativaPrimórdios

II. EstimativaAtualmente

II. Estimativa

• As estimativas de custo e de esforço de software jamais serão uma ciência exata !!!

II. Estimativa

Opções para conseguirmos estimativas de custo e de esforço:

1. Atraso das estimativas até um ponto tardio do desenvolvimento.

2. Técnicas de Decomposição.3. Modelos Empíricos.4. Aquisição de ferramentas de estimativa

automatizadas.

II. Estimativa

1. Atraso das estimativas até um ponto tardio do desenvolvimento.

Ainda que atraente, não é prático !!Estimativas devem ser oferecidas no

início do projeto !!!

II. Estimativa

2. Técnicas de Decomposição

Abordagem: “Dividir para Conquistar”.

Ao decompor um projeto em funções importantes e em tarefas de engenharia de software, as estimativas de custo e esforço podem ser realizadas em etapas.

II. Estimativa

2. Técnicas de Decomposição

2.1 Estimativas de Linhas de Código (LOC).2.2 Estimativas por Pontos-por-Função.2.3 Estimativa do Esforço.

II. Estimativa

2.1 Estimativas de Linhas de Código (LOC).

Estima-se a quantidade de código que serão produzidas:

Funcionalidades KLOC R$ Pessoas

Func. a 12.1 168 3

Func. b 27.2 440 5

Total 39.3

KLOC = mil linhas.

II. Estimativa

Para computar os LOCs:

Produtividade = KLOC/pessoa mêsQualidade = defeitos/KLOC

Custo = $/KLOCDocumentação = páginas de documentação/KLOC

KLOC = mil linhas.

II. Estimativa

2.1 Estimativas de Linhas de Código (LOC).

Problemas:• Depende da linguagem utilizada;• Requer um nível de detalhes que pode

ser difícil de mensurar, principalmente porque devem ser produzidas muito antes que a análise do projeto tenham sido concluídos.

II. Estimativa

2.2 Estimativas por Pontos-por-Função (FP).

Concentra-se na funcionalidade ou utilidade do programa, características:

• Número de Entradas: cada entrada do usuário que proporcione dados distintos.

• Número de Saídas: cada saída do usuário que proporcione informações orientadas à aplicação. (Relatórios, telas, mensagens de erro, etc).

II. Estimativa• Número de Consultas: uma consulta é

definida como uma entrada on-line que resulte na geração de alguma resposta.

• Número de arquivos: cada arquivo-mestre lógico, isto é, um agrupamento lógico de dados, que pode ser uma parte de um grande banco de dados ou um arquivo convencional, é contado.

• Número de interfaces externas: todas as interfaces legíveis por máquina (arquivos de dados) que sejam usadas para transmitir informações a outro sistema são contadas.

II. Estimativa

2.2 Estimativas por Pontos-por-Função (FP).

  Fator de Ponderação

 Parâmetro de Medida Contagem Simple

s MédioComplex

o

Número de Entradas   x 3 4 6 =  

Número de Saídas   x 4 5 7 =  

Número de Consultas   x 3 4 6 =  

Número de Arquivos   x 7 10 15 =  Número de Interfaces Externas   x 5 7 10 =  

Contagem Total    

Pontos por Função (Contagem Total):

II. Estimativa

  1) O sistema requer backup e recuperação confiáveis?  2) São exigidas comunicações de dados?  3) Há funções de processamento distribuídas?  4) O desempenho é crítico?

  5) O sistema funcionará num ambiente operacional existente, intensiamento utilizado?  6) O sistema requer entrada de dados on-line?

 7) A entrada de dados on-line exige que a transação de entrada seja elaborada em múltiplas telas ou operações?

  8) Os arquivos-mestres são atualizados on-line?  9) A entrada, saída, arquivos ou consultas são complexos?  10) O processo interno é complexo?  11) O código foi projetado de forma a ser reusável?  12) A conversão e a instalação estão incluídos no projeto?

  13) O sistema é projetado para múltiplas instalações em diferentes organizações?

  14) A aplicação é projetada de forma a facilitar mudanças e o uso pelo usuário?  <-- Total

0 - Sem influência1 - Incidental2 - Moderado3 - Médio

4 – Significativo5 - EssencialValores de Ajustes (Soma (Fi)):

II. Estimativa

Para computar os pontos-por-função:

FP = Contagem Total x (0,65 + 0,01 x Soma (Fi))

Produtividade = FP/pessoa mêsQualidade = defeitos/FP

Custo = $/FPDocumentação = páginas de documentação/FP

II. Estimativa

Estimativas de LOC e FP:

• O valor esperado para LOC ou FP deve ser calculado.

• O valor esperado para a variável de Estimativa (E) pode ser computado como uma média ponderada das estimativas:(a) otimistas,(m) mais provável e,(p) pessimista.

II. Estimativa

Estimativas de LOC e FP:

• E = a + 4m + b --------------

6

II. Estimativa

2.3 Estimativas do Esforço.

Técnica mais comum. • Um número de pessoas-dia, mês ou ano é

aplicado à solução de cada tarefa do projeto.

• Inicia-se com um delineamento das funções de software obtida a partir do escopo do projeto.

II. Estimativa

2.3 Estimativas do Esforço.

  Tarefas Análise dos Requisitos Projeto Código Teste TotalFunções            f 1 1 3 0,5 9 1 14,5f 2 2 2 3 10 1 18f 3 2,5 1 1 2 1 7,5f 4 2 2 3 5 1 13f 5 1 4 2 6 1 14f 6 3 5 2 7 1 18f 7 2 2 2 2 1 9f 8 5 1 2 1 1 10Total * 18,5 20 15,5 42 8 104Taxa (R$) valor/dia 559 1020 300 490 600 Custo (R$) 10341,5 20400 4650 20580 4800 60771,5

II. Estimativa

3. Modelo Empírico

Pode ser usado para complementar as técnicas de decomposição e para oferecer uma abordagem de estimativas potencialmente valiosa.

II. Estimativa

3. Modelo Empírico

Um modelo baseia-se na experiência (dados históricos) e assume a forma:

d = f(vi)

d – série de valores estimados (custo, esforço, etc).

Vi – parâmetros independentes selecionados (LOC, FP, etc).

II. Estimativa

3. Modelos Empíricos:

3.1 COCOMO (material anexo),3.2 PUTNAM (material anexo).

• Ambos se baseiam em estimativas do número de linhas de código (LOC).

II. Estimativa

4. Ferramentas de Estimativa

Implementam uma ou mais técnicas de decomposição ou modelos empíricos.

Exemplo: ABYL, SLIM, ESTIMACS, SPQR, entre outros.

Recommended