Apresentação tcc - Leticia Moretti e Rafael Azevedo

496 visualizações

Publicada em

Apresentação feita para o tcc

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

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

Nenhuma nota no slide

Apresentação tcc - Leticia Moretti e Rafael Azevedo

  1. 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. 2.  Crise do software  Cronograma atrasado  Custos que ultrapassavam as previsões  Desempenho abaixo do esperado  Insatisfação por parte do cliente
  3. 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. 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. 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. 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. 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. 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. 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. 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. 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. 12.  1993: Gustav Karner publica o artigo Resource Estimation for Objectory Projects.  Proposta: Pontos por Caso de Uso
  13. 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.
  14. 14.
  15. 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).
  16. 16.
  17. 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
  18. 18.
  19. 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
  20. 20.
  21. 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. 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
  23. 23.  Tecnologias utilizadas: ◦ Eclipse IDE ◦ Subversion ◦ Assembla ◦ Apache Tomcat 7.0.32 ◦ MySQL 5.5.30 ◦ Hibernate 4.1.8 ◦ JDK 7.15 ◦ JSF 2.0 ◦ Raphäel ◦ JavaScript ◦ JQuery UI ◦ JSON ◦ GSON
  24. 24. 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

×