Você está na página 1de 19

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

Engenharia de Software
ISCIM 2023
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)
VIRT – Virtual Machine Volatility (Volatilidade da máquina virtual)
Harware
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