Estimativa de Software em Pontos de Caso de Uso

12.516 visualizações

Publicada em

0 comentários
10 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
12.516
No SlideShare
0
A partir de incorporações
0
Número de incorporações
37
Ações
Compartilhamentos
0
Downloads
295
Comentários
0
Gostaram
10
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Estimativa de Software em Pontos de Caso de Uso

  1. 1. Estimativa de Software Baseada em Ponto de Caso de Uso
  2. 2. Apresentação • Fabio Pinheiro Abreu – Bacharel em Ciência da Computação – Mestre em Informática Aplicada – Certificado PMP – Implementador Oficial MPS.BR – Consultor em Gestão e Processos – Professor na Área de Gestão de Projetos – Conselheiro de 2006 a 2009 e Diretor em 2010 do PMI-CE – Mais de 10 anos de experiência na área de TI tendo trabalhado no BANCO DO NORDESTE, UNISYS BRASIL, INSTITUTO ATLÂNTICO gerenciando projetos e portfólios para clientes como CPQD, EPSON, FORD/TROLLER, DÍGITRO, PADTEC, TOLEDO e TRIBUNAL DE JUSTICA DO CEARÁ
  3. 3. Agenda 1 - Motivação 2 - Tipos de Estimativas 3 - Ponto de Caso de Uso 4 - Quem utiliza 5 – Ponderação de Atores 6 – Ponderação de Casos de Uso 7 – Contagem de Transações 8 – Pontos de Casos de Uso Não-Ajustados 9 – Ponderação de Fatores Técnicos 10 – Ponderação de Fatores Ambientais 11 – Estimativa de Tamanho 12 – Estimativa de Esforço
  4. 4. Motivação • Estimativas são um dos grandes desafios para contratantes e fornecedores de serviços de desenvolvimento de software pois afetam a análise de viabilidade, elaboração de propostas, o planejamento e acompanhamento dos projetos;
  5. 5. Tipos de Estimativas • Estimativa de Tamanho – Grandeza física medida através dos requisitos, análise & projeto ou código do software com base nas suas funções e complexidade do problema • Estimativa de Esforço – Trabalho necessário para desenvolvimento do projeto obtido a partir da estimativa de tamanho • Estimativa de Prazo – Tempo necessário para desenvolvimento do projeto obtido a partir da estimativa de esforço e quantidade de recursos envolvidos no projeto
  6. 6. Ponto de Caso de Uso • Técnica de estimativa de tamanho de projeto de software orientado a objetos • Explora o modelo e a descrição dos casos de uso • Depende de uma padronização dos casos de uso pois a contagem se baseia em transações identificadas nos fluxos de eventos • É uma técnica simples e aplicável desde o início do processo de desenvolvimento de software
  7. 7. Quem utiliza • Banco do Nordeste do Brasil – BNB; • Instituto Atlântico • Centro de Gestão e Desenvolvimento Tecnológico – CGDT • E-NOVAR Soluções Tecnológicas
  8. 8. Ponderação de Atores Complexidade Descrição Fator Simples Aplicação com API definidas 1 Intermediário Aplicação com interface baseada 2 em protocolo ou interação de usuário baseado em linhas de comando Complexo Interação de usuário através de 3 interface gráfica ∑ UAW (Unadjusted Actor Weight) = ∑ Fator dos Atores
  9. 9. Ponderação de Casos de Uso Complexidade Descrição Fator Simples Até 3 transações incluindo fluxos 5 alternativos Intermediário De 4 a 7 transações incluindo 10 fluxos alternativos Complexo De 8 a 11 transações incluindo 15 fluxos alternativos N-Complexo Acima de 11 transações Fx Fx = 15*(transações/11) + Fator(resto da divisão de transações/11) ∑ UUCW (Unadjusted Use Case Weight) = ∑ Fator dos UCs
  10. 10. Contagem de Transações • O que é uma transação? – “É um conjunto de atividades atômicas, as quais são executadas completamente ou não”; – “É um evento que ocorre entre o ator e o sistema”; – “São passos dos fluxos de eventos de casos de uso, que deve ser executado por completo, ou a realização de algum processamento complexo”;
  11. 11. Contagem de Transações • O que contar? – passos que contenham campos de entrada possuindo valores passíveis de escolha originados de leitura de dados (listas de opções, combos e grids); – passos que apresentem retorno de consultas com filtros preenchidos por buscas em bancos de dados;
  12. 12. Contagem de Transações • O que contar? – passos que proporcionem validações complexas de negócio; – passos que contenham uma geração de relatório são considerados como uma transação, e cada filtro originado da leitura de dados das consultas será considerado uma outra transação;
  13. 13. Contagem de Transações • O que contar? – passos que apresentem funcionalidades de consultas auxiliares como casos de uso a parte (pop-up);
  14. 14. Contagem de Transações • O que contar? – passos onde existirem validações simples de campo de entrada de dados são considerados como uma única transação se a quantidade de validações for menor ou igual a 10. Se a quantidade de validações for maior que 10, conta-se uma transação a cada grupo de 5 validações;
  15. 15. Contagem de Transações • O que NÃO contar? – passos que descrevam o início e o fim do caso de uso, por exemplo, “O caso de uso se inicia...” ou “o caso de uso se encerra...” ; – passos que detalhem a interação entre o sistema e o ator, por exemplo, “O usuário pressiona confirmar” ou “o sistema solicita ao usuário informar a operação (incluir, alterar, excluir)”;
  16. 16. Contagem de Transações • O que NÃO contar? – passos que solicitem escolhas com valores fixos (sem leitura de dados); – passos que façam leituras auxiliares de dados que já tenham sido realizadas em outros fluxos do mesmo caso de uso; – fluxos alternativos que contenham mensagens de erro.
  17. 17. Pontos de Casos de Uso Não-Ajustados UUCP = ∑UAW + ∑UUCW UUCP: Unadjusted Use Case Points UAW: Unadjusted Actor Weight UUCW: Unadjusted Use Case Weight
  18. 18. Ponderação de Fatores Técnicos Descrição Peso Fator T1 – Sistemas Distribuídos 2 X1 T2 – Tempo de Resposta / Desempenho 1 X2 T3 – Eficiência Online 1 X3 T4 – Processamento Interno Complexo 1 X4 T5 – Código reutilizável 1 X5 T6 – Facilidade de Instalação 0,5 X6 T7 – Usabilidade 0,5 X7 T8 – Portabilidade 2 X8 T9 – Facilidade de Manutenção 1 X9 T10 – Acessos simultâneos 1 X10 T11 – Aspectos Especiais de Segurança 1 X11 T12 – Acesso Direto para Terceiros 1 X12 T13 – Facilidades Especiais de Treinamento 1 X13
  19. 19. Ponderação de Fatores Técnicos TCF = 0,6 + (0,01 * ∑ Peso*Fator Ti) TCF: Technical Complexity Factor Peso: Ponderação de cada T no modelo de estimativas Fator: Valor de 0 a 5 atribuído para cada T, onde: 0 – Não, 1 – Pouco, 2 – Razoável, 3 – Médio, 4 – Muito e 5 - Elevado
  20. 20. Ponderação de Fatores Ambientais Descrição Peso Fator E1 – Familiaridade com o Processo de Desenvolvimento 1,5 X1 E2 – Experiência na Aplicação 0,5 X2 E3 – Experiência em Orientação a Objetos 1 X3 E4 – Experiência do Líder do Projeto 0,5 X4 E5 – Motivação 1 X5 E6 – Estabilidade dos Requisitos 2 X6 E7 – Membros da Equipe com Dedicação Parcial -1 X7 E8 – Dificuldade da Linguagem de Programação -1 X8
  21. 21. Ponderação de Fatores Ambientais EF = 1,4 + (-0,03 * ∑ Peso*Fator Ei) EF: Enterprise Factor Peso: Ponderação de cada E no modelo de estimativas Fator: Valor de 0 a 5 atribuído para cada E, onde: 0 – Não, 1 – Pouco, 2 – Razoável, 3 – Médio, 4 – Muito e 5 - Elevado
  22. 22. Estimativa de Tamanho UCP = UUCP*TCF*EF UCP: Use Case Points UUCP: Unadjusted Use Case Points TCF: Technical Complexity Factor EF: Enterprise Factor
  23. 23. Estimativa de Esforço Esforço = UCP*Produtividade*Gestão*Risco UCP: Use Case Points Produtividade: Horas necessárias para produzir 1 UCP Gestão: Fator de gestão do processo de desenvolvimento Risco: Fator de risco do projeto
  24. 24. Referências • Pontos de Casos de Uso Técnicos (TUCP): Uma Extensão da UCP – Tatiana Cavalcanti Monteiro; • Estimating Object-Oriented Software Projects With Use Cases – Kirsten Ribu; • Metrics for Objectory – Gustav Karner;
  25. 25. Obrigado!fabio.abreu@enovar.com.br (85) 9996.9510 (85) 9154.5974

×