Apresentação tcc - Leticia Moretti e Rafael Azevedo
1. LETICIA MORETTI RIBEIRO
RAFAEL DA SILVA PINTO AZEVEDO
QUANTUM: ferramenta para estimativa de projeto de
software baseado em pontos por caso de uso
Orientadora: Prof.ª Ma. Cristina Correa de Oliveira
São Paulo
2013
2.
Crise do software
Cronograma atrasado
Custos que ultrapassavam as previsões
Desempenho abaixo do esperado
Insatisfação por parte do cliente
3.
Durante a fase inicial de um projeto de
software, valores concisos e fundamentados
em estimativas servem como subsídio para
tomada de decisões intrínsecas à construção
de um sistema.
4.
Processos de software
Conjunto de atividades que auxiliam o
desenvolvimento de produtos de software de
qualidade, dentro do prazo e custo acordados.
Alguns exemplos: modelo cascata, modelo
iterativo incremental, modelo evolucionário etc.
Não existe o melhor processo de software!
5.
Processos de software
Segundo Sommerville (2007) 4 atividades são
comuns aos diversos modelos de processos de
software existentes:
1)
2)
3)
4)
Especificação
Projeto e Implementação
Validação e Verificação
Evolução de software
6.
A importância da modelagem no desenvolvimento de
sistemas de software
Princípios básicos da modelagem:
1) Abstrair a complexidade
2) Gerar um modelo gráfico simplificado
7.
O paradigma orientado a objetos
Década de 90: diversas técnicas de modelagem
de sistemas orientados a objetos surgem;
Problema: falta de padronização na
representação dos conceitos.
8.
A linguagem unificada de modelagem
Booch, Jacobson e Rumbaugh propuseram uma
notação gráfica orientada a objetos-padrão,
chamada UML
A UML permite que todos os seus símbolos
sejam entendidos universalmente
É composta por 13 diagramas
9.
Casos de uso
Segundo Bezerra (2007) o modelo de casos de uso
define os seguintes componentes: casos de uso,
atores e os relacionamentos entre eles.
10.
Métricas para estimativa de projeto de
software
“Uma estimativa de projeto inicial ajuda gestores,
desenvolvedores e testadores a planejar os recursos
que um projeto requer”. (CLEMMONS, 2006,
p.21).
A partir da estimativa de tamanho obtida é possível
definir cronograma, custo e esforço necessários.
11.
Métricas para estimativa de projeto de
software
Técnicas para elaboração de estimativas de
tamanho de projeto de software
Contagem de linhas de código
Análise de pontos de função
Pontos por caso de uso
12.
1993: Gustav Karner publica o artigo Resource
Estimation for Objectory Projects.
Proposta: Pontos por Caso de Uso
13.
Cálculo do peso não ajustado dos atores (UAW)
1) Atribuição das complexidades dos atores
Complexidade Definição
Peso
Simples
Representa um sistema externo acessado por 1
meio de API.
Médio
Representa um sistema externo acessado por 2
meio de protocolo de comunicação ou uma
interação humana por linha de comando.
Complexo
Representa atores que interagem com o 3
sistema por meio de uma GUI.
15.
Cálculo do peso não ajustado dos casos de
uso (UUCW)
1) Atribuição das complexidades dos casos de uso
Complexidade
Definição
Peso
Simples
Possui 3 transações ou menos, incluindo cenários 5
alternativos e sua realização acontece com menos de 5
objetos (classes de análise).
Médio
Possui de 4 a 7 transações, incluindo cenários 10
alternativos e sua realização acontece com 5 a 10 objetos
(classes de análise).
Complexo
Possui mais de 7 transações, incluindo cenários 15
alternativos e sua realização acontece com mais de 10
objetos (classes de análise).
17. Fatores técnicos que contribuem para a complexidade
Peso
Sistema distribuído
2
Objetivos de desempenho da aplicação
1
Eficiência para o usuário final (on-line)
1
Processamento interno complexo
1
Reusabilidade do código
1
Facilidade de instalação
0.5
Facilidade operacional, usabilidade
0.5
Portabilidade
2
Facilidade para mudanças
1
Concorrência
1
Recursos especiais de segurança
1
Prover acesso direto para sistemas/componentes externos
1
É necessário algum treino especial para os usuários
1
19. Fatores que contribuem para a eficiência
Peso
Familiaridade com o processo de desenvolvimento adotado
1.5
Colaboradores de meio período
-1
Capacidade de analista
0.5
Experiência com a aplicação
0.5
Experiência com orientação a objetos
1
Motivação
1
Linguagem de programação difícil
-1
Requisitos estáveis
2
21.
Cálculo dos pontos por caso de uso (UCP)
◦ O UCP é calculado a partir da seguinte
função:
UCP = UAW * UUCW* TCF * EF
22.
Derivando tempo
Karner (1993) concluiu que cada UCP
necessita, aproximadamente, de 20 homens/hora
para que seja realizado.
A partir do PF, o número de horas necessárias
para o projeto é calculado conforme a função:
Tempo Estimado = UCP * PF
29. Considerações sobre a técnica pontos por caso
de uso
Considerações sobre o desenvolvimento da
ferramenta
Considerações sobre os resultados da pesquisa
Desempenho;
Usabilidade;
Possíveis pontos de melhoria.
Pesquisas futuras