Apresentação tcc - Leticia Moretti e Rafael Azevedo

29
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

Transcript of Apresentação tcc - Leticia Moretti e Rafael Azevedo

Page 1: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 2: Apresentação tcc - Leticia Moretti e Rafael Azevedo

Crise do software

Cronograma atrasado

Custos que ultrapassavam as previsões

Desempenho abaixo do esperado

Insatisfação por parte do cliente

Page 3: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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.

Page 4: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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!

Page 5: Apresentação tcc - Leticia Moretti e Rafael Azevedo

Processos de software

Segundo Sommerville (2007) 4 atividades são

comuns aos diversos modelos de processos de

software existentes:

1) Especificação

2) Projeto e Implementação

3) Validação e Verificação

4) Evolução de software

Page 6: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 7: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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.

Page 8: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 9: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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.

Page 10: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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.

Page 11: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 12: Apresentação tcc - Leticia Moretti e Rafael Azevedo

1993: Gustav Karner publica o artigo Resource

Estimation for Objectory Projects.

Proposta: Pontos por Caso de Uso

Page 13: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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 pormeio de API.

1

Médio Representa um sistema externo acessado pormeio de protocolo de comunicação ou umainteração humana por linha de comando.

2

Complexo Representa atores que interagem com osistema por meio de uma GUI.

3

Page 14: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 15: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

alternativos e sua realização acontece com menos de 5

objetos (classes de análise).

5

Médio Possui de 4 a 7 transações, incluindo cenários

alternativos e sua realização acontece com 5 a 10 objetos

(classes de análise).

10

Complexo Possui mais de 7 transações, incluindo cenários

alternativos e sua realização acontece com mais de 10

objetos (classes de análise).

15

Page 16: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 17: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 18: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 19: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 20: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 21: Apresentação tcc - Leticia Moretti e Rafael Azevedo

Cálculo dos pontos por caso de uso (UCP)

◦ O UCP é calculado a partir da seguinte

função:

UCP = UAW * UUCW* TCF * EF

Page 22: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 23: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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

Page 24: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 25: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 26: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 27: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 28: Apresentação tcc - Leticia Moretti e Rafael Azevedo
Page 29: Apresentação tcc - Leticia Moretti e Rafael Azevedo

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