Upload
duongtram
View
215
Download
0
Embed Size (px)
Citation preview
Pontos por Caso de Uso
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;
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;
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;
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
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
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;
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
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
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;
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
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
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
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
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
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
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
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
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
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;
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.