Você está na página 1de 19

Instituto Superior de Comunicação e Imagem de Moçambique

Engenharia de Software
ISCIM 20.03.2019
• Docente: Eng. Edvaldo
Mahesh
Sumário

Estimativas
• Estimativas de esforço;

• Estimativas de tempo e alocação de recursos;

• Estimativas de tempo;

• Estimativas de custos;

• Modelo COCOMO
Objectivos

• Identificar os diferentes tipos de custos em um projecto de


desenvolvimento de software

• Usar um mecanismo algoritmico para a determinação do


tamanho de um software.
Estimativas

Estimativas de esforço
 Para a realização de estimativas de tempo e custos é fundamental
estimar antes o esforço necessário para completar o projecto ou
cada uma das suas actividades.
 Podem ser obtidas directamente pelo julgamento de um
especialista, tipicamente usando técnicas de decomposição ou a
partir de dados de tamanho ou ainda a partir de dados históricos

 Quando uma organização não tem ainda dados suficientes para


definir seus próprios factores de produtividade, é aconselhável que
se utilize modelos algorítmicos ou empíricos.
Estimativas

Estimativas de esforço
 Existem vários modelos que derivam estimativas de esforço a partir
de dados de LOC’s (Lines Of Code) ou PF’s (Pontos de Função).
De maneira geral, todos têm a seguinte estrutura:

𝐸 = 𝐴 + 𝐵 ∗ 𝑇𝐶 𝑂𝑛𝑑𝑒:
E: Esforço em pessoas por mês;
A, B e C: São constantes derivadas empiricamente;
T: Estimativa de Tamanho em LOC’s
Estimativas

Estimativas de tempo e alocação de recursos


 Quando falamos de recursos, estamos englobando pessoas,
hardware e software. Em todos casos é necessário observar a
disponibilidade do recurso.

 Assim, é importante definir a partir de que data o recurso será


necessário, por quanto tempo ele será necessário e qual é a
quantidade de horas necessárias por esse período.

 De posse da estimativa de esforço e da alocação de recursos, é


possível estimar o tempo de cada actividade e, por conseguinte, do
projecto.
Estimativas

Estimativas de tempo e alocação de recursos


 Se a estimativa de esforço tiver sido feita para o projecto como um
todo, então ela deve ser distribuída pelas actividades do projecto.

 Embora as características do projecto sejam determinantes para a


distribuição de esforço, uma diretriz inicial útil consiste em
considerar a proposta de PRESSMAN para a distribuição de esforço
apresentada na tabela seguinte:

Fase Planeamento Especificação Projecto Implementação Testes e Entrega


Esforço Fase/Total Até 3% 10% à 25% 20% à 25% 15% à 20% 30% à 40%
Estimativas

Estimativas de custos
 Custos relativos ao esforço empregado pelos membros das equipas
para o desenvolvimento.

 Custos de hardware (incluindo custos de manutenção);

 Outros custos relacionados ao projecto, tais como custos de


viagens e treinamentos realizados no âmbito do projecto;

 Despesas gerais, incluindo gastos com água, luz, telefone, pessoal


de apoio administrativo, pessoal de suporte e outros.
Modelo COCOMO (Constructive Cost Model)

 É um modelo desenvolvido para estimar o esforço, prazo, custo e


tamanho da equipa para um projecto de software.
 COCOMO é apresentado na forma de um conjunto de modelos
hierarquicamente em três níveis: básico, intermediário e avançado.
COCOMO básico
 Calcula o esforço de desenvolvimento de um software em função do
tamanho estimado em linhas de código.
COCOMO intermediário
• Calcula o esforço de desenvolvimento de software em função do
tamanho e de um conjunto atributos ou factores de software que
incluem avaliações sobrejectivas do produto, hardware, pessoal e
atributos do projecto conforme mostra a tabela seguinte:
Modelo COCOMO (Constructive Cost Model)

Atributos dirreccionadores de custos

Categorias Atributos

Produto RELY - Required Software Reliability(Confiabilidade exigida do Sistema)

DATA – Data Base Size (Tamanho da Base de Dados)

CPLX – Product Complexity (Complexidade do Sistema)

TIME – Execution Time Constraint (Restrições do tempo de execução)

STOR – Main Storage Constraint (Restrições de memória)

Harware VIRT – Virtual Machine Volatility (Volatilidade da máquina virtual)

TURN – Computer Turnaround Time (Tempo de rotatividade do computador)


Modelo COCOMO (Constructive Cost Model)

Atributos dirreccionadores de custos

Categoria Atributos

Pessoal ACAP – Analist Capability

AEXP – Application Experience

VEXP - Virtual Machine Experience

PCAP – Programmer Capability

LEXP – Programming Language Experience

Projecto MODP – Modern Programming Practices

TOOL – Use of Software Tools

SCED – Required Development Schedule (Cronograma)


Modelo COCOMO (Constructive Cost Model)

Classificação dos Atributos dirreccionadores de custos


Atributo Valor
Muito baixo Baixo Nominal Elevado Muito elevado Extra elevado

Produto
RELY 0,75 0,88 1 1,15 1,4 -
DATA - 0,94 1 1,08 1,16 -
CPLX 0,7 0,85 1 1,15 1,3 1,65

Hardware
TIME - - 1 1,11 1,3 1,66
STOR - - 1 1,06 1,21 1,56
VIRT - 0,87 1 1,15 1,3 -
TURN - 0,87 1 1,07 1,15 -
Modelo COCOMO (Constructive Cost Model)

Classificação dos Atributos dirreccionadores de custos


Atributo Valor
Muito baixo Baixo Nominal Elevado Muito elevado Extra elevado

Pessoal
ACAP 1,46 1,19 1 0,86 0,71 -
AEXP 1,29 1,13 1 0,91 0,82 -
PCAP 1,42 1,17 1 0,86 0,7 -
VEXP 1,21 1,1 1 0,9 - -
LEXP 1,14 1,07 1 0,95 - -

Projecto
MODP 1,24 1,1 1 0,91 0,82 -
TOOL 1,24 1,1 1 0,91 0,83 -
SCED 1,23 1,08 1 1,04 1,1 -
Modelo COCOMO (Constructive Cost Model)

COCOMO avançado
 Incorpora todas as características da versão intermediária, incluindo
a avaliação do impacto dos atributos do software e da equipa
desenvolvedora em cada passo do processo da Engenharia de
Software.

 Depois da análise de requisitos funcionais do software, o tamanho


da aplicação deve ser estimado em milhares de linhas de código
(KLOC) e o projecto deve ser classificado em um dos três modos de
desenvolvimento: orgânico, semi-destacado e embutido.
Modelo COCOMO (Constructive Cost Model)

Modo orgânico
• Equipas relativamente pequenas
• Sistemas desenvolvidos num ambiente familiar
• A maior parte das pessoas engajadas têm experiência prévia com
sistemas similares e entendimento completo do sistema
• Uso de algoritmos simples
• Pouca necessidade de inovação,
• Requisitos não variam,
• Tamanho relativamente pequeno de até 50KLOC’s.
Modelo COCOMO (Constructive Cost Model)

Modo embutido
• O produto a ser desenvolvido deverá operar dentro de um contexto
complexo.
• São caracterizados por serem relativamente grandes ultrapassando
os 300KLOC’s,
• com muita necessidade de inovação,
• altos custos de verificação e validação.
Modelo COCOMO (Constructive Cost Model)

Modo semi-destacado
• Projectos com características entre o orgânico e o embutido
• As equipas podem ser constituídas por pessoas com pouca assim
como grande experiência,
• O tamanho do software pode ir até 300KLOC’s.
Modelo COCOMO (Constructive Cost Model)

Equações
 De uma forma geral, utilizando o modelo COCOMO, o esforço, o
tempo de desenvolvimento e o tamanho da equipa não calculados
de acordo com as fórmulas e tabelas seguintes:
𝐸
𝐸 =𝐴∗ 𝑇𝐵 ∗ 𝐹𝑎𝑐𝑡𝑜𝑟𝑒 𝑑𝑒 𝑎𝑗𝑢𝑠𝑡𝑒 𝑇𝑒𝑚𝑝𝑜 = 𝐶 ∗ 𝐸 𝐷 𝑁𝑃 =
𝑇𝑒𝑚𝑝𝑜

Básico / Intermediário Básico Intermediário


T C D E A B A B
Orgânico 2,5 0,38 Orgânico 2,4 1,05 3,2 1,05
SemiDestacado 2,5 0,35 SemiDestacado 3,0 1,12 3,0 1,12
Embutido 2,5 0,32 Embutido 3,6 1,2 2,8 1,2
FIM

Obrigado……

Você também pode gostar