21
Pontos por Caso de Uso

2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Embed Size (px)

Citation preview

Page 1: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Page 2: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Foi proposto em 1993 por Gustav Karner;Baseou-se na Análise por Pontos de Função;Trata de estimar o tamanho de um sistema de acordo com:

o modo como os usuários o utilizarão;a complexidade de ações requerida por cada tipo de usuário;uma análise em alto nível dos passos necessários para a realização de cada tarefa;

Page 3: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento de Casos de Uso;Ele utiliza-se dos próprios documentos gerados nesta fase de análise como subsídio para o cálculo dimensional;

Page 4: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Sistema que será usado como exemplo:Site de suporte de produtos para uma grande companhia de software;A estimativa foi feita a partir dos casos de uso de nível muito alto (business modelling), que foram criados em tempo de levantamento de requisitos;Os atores, nessa vez, foram os diferentes tipos de usuários identificados nesses casos de uso;

Page 5: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 1: Cálculo do UAW (Unadjusted Actor Weight)

Um usuário interagindo através de uma interface gráfica

3Ator Complexo

Outro sistema acessado interagindo através da rede

2Ator Médio

Outro sistema acessado através de uma API de programação

1Ator Simples

DescriçãoPesoTipo de Ator

Page 6: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

No caso do exemplo:

002Ator Médio

001Ator Simples

Total UAW

4

Nº de atores

123Ator Complexo

12

ResultadoPesoTipo de Ator

Valores já calculados: UAW = 12

Page 7: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 2: Cálculo do UUCW (Unadjusted Use Case Weight)Para fins de cálculo, dividimos os casos de uso em trêsníveis de complexidade:

Simples (peso 5): Tem até 3 transações, incluindo os passos alternativos, e envolve menos de 5 entidades;Médio (peso 10): Tem de 4 a 7 transações, incluindoos passos alternativos, e envolve de 5 a 10 entidades;Complexo (peso 15): Tem acima de 7 transações, incluindo os passos alternativos, e envolve pelo menos de 10 entidades;

Page 8: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

No caso do exemplo:

1301310Médio

3575Simples

Total UUCW

3

Nº de Casos de Uso

4515Complexo

210

ResultadoPesoTipo

Valores já calculados: UAW = 12, UUCW = 210

Page 9: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 3: Cálculo do UUCP (Unadjusted Use Case Points)UUCP = UAW + UUCW

No caso do exemplo:UUCP = 12 + 210 = 222

Valores já calculados: UAW = 12, UUCW = 210, UUCP = 222

Page 10: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Calculando fatores de ajuste:O método de ajuste é bastante similar ao adotado pela Análise por Pontos de Função e é constituído de duas partes:

Cálculo de fatores técnicos: cobrindo uma série de requisitos funcionais do sistema;Cálculo de fatores de ambiente: requisitos não-funcionais associados ao processo de desenvolvimento;

Page 11: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 4: Cálculo do Tfactor

Para cada requisito listado na tabela, deve ser atribuído um valor que determina a influência do requisito no sistema, variando entre 0 e 5;

1Requer treinamento especialT13

1Acessível por terceirosT12

1Recursos de segurançaT11

1ConcorrênciaT10

1Facilidade de mudançaT9

2PortabilidadeT8

0.5Facilidade de usoT7

0.5Facilidade de instalaçãoT6

1Código reusávelT5

1Processamento complexoT4

1EficiênciaT3

2Tempo de respostaT2

2Sistema distribuídoT1

PesoRequisitoFator

Page 12: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

19,5Tfactor

1

1

1

1

1

2

0.5

0.5

1

1

1

2

2

Peso

0

0

0

0

3

0

5

0

0

3

3

3

1

Influência

0Requer treinamento especialT13

0Acessível por terceirosT12

0Recursos de segurançaT11

0ConcorrênciaT10

3Facilidade de mudançaT9

0PortabilidadeT8

2.5Facilidade de usoT7

0Facilidade de instalaçãoT6

0Código reusávelT5

3Processamento complexoT4

3EficiênciaT3

6Tempo de respostaT2

2Sistema distribuídoT1

ResultadoRequisitoFator

Page 13: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 5: Cálculo do TCF (Technical Complexity Factor)TCF = 0.6 + (0.01 × Tfactor)

No caso do exemplo:TCF = 0.6 + (0.01 × 19.5) = 0.795

Valores já calculados: UUCP = 222, Tfactor = 19.5, TCF = 0.795

Page 14: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 6: Cálculo do Efactor

Para cada requisito listado na tabela, deve ser atribuído um valor que determina a influência do requisito no sistema, variando entre 0 e 5;

2Linguagem de programação difícilE8

-1Desenvolvedores em meio-expedienteE7

2Requisitos estáveisE6

1MotivaçãoE5

0.5Presença de analista experienteE4

1Experiência em Orientação a ObjetosE3

0.5Experiência com a aplicação em desenvolvimentoE2

1.5Familiaridade com RUP ou outro processo formalE1

PesoDescriçãoFator

Page 15: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

26Efactor

0

0

3

5

5

5

0

5

Influência

2

-1

2

1

0.5

1

0.5

1.5

Peso

0Linguagem de programação difícilE8

0Desenvolvedores em meio-expedienteE7

6Requisitos estáveisE6

5MotivaçãoE5

2.5Presença de analista experienteE4

5Experiência em Orientação a ObjetosE3

0Experiência com a aplicação em desenvolvimentoE2

7.5Familiaridade com RUP ou outro processo formalE1

ResultadoDescriçãoFator

Valores já calculados: UUCP = 222, TCF = 0.795, Efactor = 26

Page 16: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 7: Cálculo do ECF (Environmental ComplexityFactor)

ECF = 1.4 + (-0.03 × Efactor)

No caso do exemplo:ECF = 1.4 + (-0.03 × 26) = 0.62

Valores já calculados: UUCP = 222, TCF = 0.795, Efactor = 26, ECF = 0.62

Page 17: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 8: Cálculo dos UCP (Use Case Points)UCP = UUCP × TCF × ECF

No caso do exemplo:ECF = 222 × 0.795 × 0.62 = 109.42 ou 109 Use Case

Points

Valores já calculados: UUCP = 222, TCF = 0.795, ECF = 0.62

Page 18: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Pontos por Caso de Uso

Passo 9: Cálculo do tempo de trabalho estimadoPara simplificar, utilizaremos a média de 20 horas porPonto de Casos de Uso

No caso do exemplo:Tempo estimado = 109 * 20 = 2180 horas de

trabalho

Valores já calculados: UCP = 109

Page 19: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Quadro comparativo: APF X PCU

Ainda não oferece treinamentos e certificaçãoOferece treinamento e certificação

Em fase de amadurecimentoAlto nível de maturidade

Há dúvidas de qual o nível apropriado de detalhe que cada caso de uso deve possuirPossui regras de contagem padronizadas

Ainda não possui bons históricos de produtividade

É suportada pelo IFPUG e diversos grupos nacionais de usuários e bases históricas de medidas realizadas

Tem aumentado o uso e a publicação de estudos na literaturaLargamente discutida na literatura

Baseada no modelo de casos de usoNão requer o uso de notação padrão, mas ébaseada no modelo funcional e independente de tecnologia

Ainda não alcançou o nível de padronização e nem foi incorporada em ferramentas populares

Padrão internacional desde 2002

Relativamente nova e pouco utilizadaMais antiga e mais utilizada no mundo

PCUAPF

Page 20: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Conclusões

Devido à amplitude do assunto tratado, vários temas não foram abordados;O método de Use Case Points parece ser muito bom para quem precisa de dados de estimativa em um curto espaço de tempo;Tanto APF quanto PCU são métricas muito subjetivas;

Page 21: 2c-Pontos de Caso de Uso - ufpa.br · Pontos por Caso de Uso O Método de Use Case Points foi criado para que seja possível estimar o tamanho de um sistema já na fase de levantamento

Conclusões

É evidente o problema de que a granularidade de cada caso de uso varia muito entre analistas, causando uma significativa variação nos resultados de PCU;As métricas específicas para OO apresentadas servem mais para controle de qualidade do que para cálculo de tamanho.