View
219
Download
0
Category
Preview:
Citation preview
Introdução ao Planejamento de
Projetos
Leonardo Gresta Paulino Murta leomurta@ic.uff.br
Exercício mo>vacional (sério!!!)
• Em grupo, imaginem que estão em 2.500 AC
• Um Faraó lhes disse: – Quero uma pirâmide para mim!!!
• Como vocês fariam para concre>zar o desejo do Faraó?
Leonardo Murta 2 Introdução ao Planejamento de Projetos
Outro exercício mo>vacional (sério também!)
• Em grupo, imaginem que vamos fazer um churrasco
• Como vocês fariam para concre>zar o nosso churrasco?
Leonardo Murta 3 Introdução ao Planejamento de Projetos
Análise dos exercícios • O que teve em comum em fazer pirâmide no Egito an>go e fazer churrasco em Niterói? – Ambos podem ser vistos como projetos, e projetos precisam ser gerenciados!
“Um projeto é um esforço temporário, realizado para criar um produto ou serviço único”
(PMI, 2004)
Leonardo Murta 4 Introdução ao Planejamento de Projetos
Quais desses são projetos? • Criar o logo para uma camisa desta disciplina • Produzir 50 camisas com esse logo • Passar nesta disciplina • Estudar • Arrumar um(a) namorado(a) • Ficar com alguém • Idealizar um novo modelo de casa pré-‐moldada • Produzir milhares de casas pré-‐moldadas • Desenvolver um novo so`ware • Dar manutenção nesse so`ware
Leonardo Murta 5 Introdução ao Planejamento de Projetos
Mas os que não são projetos não importam?
• Importam! Eles são operações permanentes, e também precisam ser gerenciados, contudo... – São repe66vos – Têm um grau mais alto de previsibilidade – Exigem pouca cria6vidade – Em alguns casos, podem ser automa6zados
• Em suma: são mais fáceis de serem gerenciados!
Leonardo Murta 6 Introdução ao Planejamento de Projetos
Operações Permanentes x Projetos
Operação 1 Operação 2 ... Operação N Operação N + 1
Projeto
Leonardo Murta 7 Introdução ao Planejamento de Projetos
Voltando ao exercício... • Mas fazer pirâmide ou churrasco é um projeto ou uma operação permanente?
• Depende... – A primeira pirâmide construída sem dúvida é um projeto
– Um churrasco feito por uma churrascaria sem dúvida é uma operação permanente
A resposta está associada ao grau de inovação da tarefa!
Leonardo Murta 8 Introdução ao Planejamento de Projetos
Tarefa de Casa • Um dos maiores projetos da humanidade foi a ida à lua
• O Discovery Channel e a NASA fizeram um documentário sobre esse projeto – “When We Le` Earth” – São 6 episódios de 45 minutos cada
• Assistam ao vídeo!!! – Tragam comentários para as próximas aulas
Leonardo Murta Introdução ao Planejamento de Projetos 9
Projeto de So`ware • Então, fazer so`ware é igual a fazer pirâmide, churrasco, hambúrguer, ponte ou prédio? Não!!! – So`ware é intangível – So`ware não está sujeito a leis externas ou normas aceitas universalmente
– So`ware não tem economia de escala
• Mas... Quando pensamos em uma ponte inédita, como a ponte Rio-‐Niterói quando foi construída, podemos encontrar sim algumas semelhanças!!!
Leonardo Murta 10 Introdução ao Planejamento de Projetos
So`ware como produto intangível • Um hambúrguer, um prédio ou uma ponte são produtos concretos
• So`ware é invisível – Em alguns casos, vemos uma possível interface do so`ware, em outros casos, nem isso!
• So`ware é pouco repe>>vo – Um prédio de 100 andares pode ter a mesma planta em cada andar
– Cada parte do so`ware será (deveria ser!) diferente Leonardo Murta 11 Introdução ao Planejamento de Projetos
So`ware e as leis da natureza • Na construção civil, o espaço da solução é restringido por – Leis da natureza (e.g., gravidade) – Normas (obrigatórias) internacionais (e.g., ISO)
• Na construção de so`ware, o espaço de opções se assemelha ao das artes – Não existem leis – Normas são adotadas por opção
Leonardo Murta Introdução ao Planejamento de Projetos 12
Economia de escala • Quanto maior for a compra, mais barato será proporcionalmente
• Quais desses produtos estão sujeitos a economia de escala: – Refrigerante (350 ml, 600 ml ou 2 litros) – Ações na bolsa de valores (100 ou 100.000 ações) – Disco rígido de computador (40, 80, 120 ou 500 Gb) – Diamante (1, 10, 100 ou 1000 gramas) – Prato no restaurante (para 1 ou 2 pessoas) – So`ware (10, 100 ou 1000 KLOCS)
Leonardo Murta Introdução ao Planejamento de Projetos 13
Economia de escala em so`ware
200 ml R$ X
2 litros Menos que 10 x R$ X
10 KLOC R$ X
100 KLOCs Mais que 10 x R$ X
Leonardo Murta 14 Introdução ao Planejamento de Projetos
O que torna um projeto complexo? • Número de sub-‐sistemas e elementos relacionados no contexto do projeto
• Número de empresas envolvidas na execução do projeto
• Número de áreas do conhecimento relacionadas ao projeto
• Número de fases necessárias na execução do projeto
Leonardo Murta Introdução ao Planejamento de Projetos 15
Quais fatores dificultam um projeto?
• Especificações incompletas ou imprecisas • Domínio de conhecimento volá>l • Troca ou heterogeneidade tecnológica • Mão de obra insuficiente ou incapacitada • Alta rota>vidade da equipe • Verbas inexistentes ou intermitentes • Influências polí>cas contradizendo decisões técnicas
Leonardo Murta 16 Introdução ao Planejamento de Projetos
Gerência de Projetos • Gerência de Projetos visa “aplicar conhecimentos, habilidades, ferramentas e técnicas nas a>vidades do projeto de maneira a a6ngir os obje6vos estabelecidos” (PMI, 2004)
• Etapas:
Leonardo Murta Introdução ao Planejamento de Projetos 17
Planejamento
Execução
Monitoramento e Controle
Iniciação Encerramento
Planejamento • Planejar é uma a>vidade fundamental para prever problemas e se preparar para lidar com eles
Leonardo Murta Introdução ao Planejamento de Projetos 18
Questões básicas a serem tratadas no Planejamento
• O que precisa ser feito (escopo)? • Quanto tempo vai levar para fazer (prazo)? • Quanto vai custar para fazermos (custo)? • Quais pessoas e equipamentos vão estar disponíveis (recursos)?
• É possível ou viável executar o trabalho com um grau de qualidade aceitável (qualidade)?
Leonardo Murta Introdução ao Planejamento de Projetos 19
Principais forças
Leonardo Murta Introdução ao Planejamento de Projetos 20
Conflito entre forças
Leonardo Murta Introdução ao Planejamento de Projetos 21
Exercício • Imagine as seguintes alterações no planejamento e diga o efeito colateral nos outros elementos do plano (escopo, prazo, custo, qualidade) – Aumento do escopo: “por favor, permita também que o so`ware faça venda parcelada”
– Diminuição do prazo: “preciso do so`ware funcionando 1 mês antes do combinado”
– Diminuição dos recursos: “infelizmente somente poderemos pagar 80% do valor acertado”
– Aumento da qualidade: “O so`ware deve funcionar em Linux e Mac, além de Windows”
Leonardo Murta Introdução ao Planejamento de Projetos 22
Etapas do planejamento (Métodos Clássicos)
Especificar o escopo
Detalhar o escopo
Definir as a>vidades
Definir a sequência das a>vidades
Es>mar a duração das a>vidades
Es>mar os custos das a>vidades
Definir o cronograma
Definir o orçamento Integrar planos
Leonardo Murta Introdução ao Planejamento de Projetos 23
Passo 1: especificar o escopo • Escopo do produto: caracterís6cas e funcionalidades que o produto deve ter quando es>ver pronto
• Escopo do projeto: trabalho que deve ser feito para construir o produto
Leonardo Murta Introdução ao Planejamento de Projetos 24
Problema!!!
• Especificar o escopo do produto (sem planejamento) para posteriormente especificar o escopo do projeto
• Especificar o escopo do projeto (impreciso) e uma das a>vidades ser a especificação do escopo do produto
Leonardo Murta Introdução ao Planejamento de Projetos 25
Problema!!!
Leonardo Murta Introdução ao Planejamento de Projetos 26
Escopo do produto primeiro • Custo não orçado para o projeto • Provável prejuízo caso o projeto não se concre>ze
Escopo do projeto primeiro • Alto grau de incerteza no planejamento • Elevação do risco de prejuízo caso o projeto se concre>ze (erro para baixo)
• Elevação do risco do projeto não se concre>zar (erro para cima)
Solução... • Para a especificação do escopo do projeto, é possível iniciar com
o escopo do produto • O nível de refinamento e detalhe será diretamente
proporcional ao risco envolvido • Existem diferentes opções para especificar o escopo do produto:
– Documento de Visão (RUP) – Histórias (Métodos Ágeis) – Casos de uso – Cenários – Narra>va livre – Etc.
• O plano deve ser refinado sempre que mais conhecimento for adquirido
Leonardo Murta Introdução ao Planejamento de Projetos 27
Passo 2: detalhar o escopo • Planejar em granularidade grossa é uma a>vidade propensa a erros
• Para evitar esses erros, devemos aplicar a técnica dividir para conquistar – Quebrar o problema em problemas menores – Planejar em granularidade fina – Inferir o planejamento completo a par>r das partes
• Documento resultante (Métodos Clássicos): – Estrutura analí>ca do projeto (EAP, do inglês, WBS – Work Breakdown Structure)
Leonardo Murta Introdução ao Planejamento de Projetos 28
EAP • Técnica criada pelo Departamento de Defesa (DoD) e NASA, nos EUA, em 1962
• Oficializada pelo PMI em 1987 • Define elementos e suas decomposições
Leonardo Murta Introdução ao Planejamento de Projetos 29
Todo
1 Parte A
1.1 Parte X
1.2 Parte Y
...
2 Parte B 3 Parte C
Caracterís>cas da EAP • Não determina sequência entre elementos (somente decomposição)
• Precisa ter 100% de cobertura – A decomposição do todo é 100% equivalente às partes – Nenhuma parte se repete em diferentes todos
• O somatório do trabalho das partes deve ser equivalente ao todo
Leonardo Murta Introdução ao Planejamento de Projetos 30
∑ =
Caracterís>cas da EAP • No primeiro nível, é representado o produto completo
• No segundo nível podem ser representados – Fases do desenvolvimento – Produtos parciais
• Nos demais níveis são representadas – Decomposições de fases ou produtos parciais – Pacotes de trabalho
• Cada nível deve ser numerado: 1, 2.3, 5.3.4, etc.
Leonardo Murta Introdução ao Planejamento de Projetos 31
Exemplos de EAP
Leonardo Murta Introdução ao Planejamento de Projetos 32
Churrasco
1 Local
1.1 Visitar Local
1.2 Escolher local
1.3 Limpar local
2 Bebidas
2.1 Escolher bebidas
2.2 Comprar bebidas
2.3 Gelar bebidas
3 Convidados
3.1 Escolher Convidados
3.2 Enviar convite
Churrasco
1 Planejamento
1.1 Escolher local
1.2 Escolher bebidas
1.3 Escolher convidados
2 Preparação
2.1 Visitar local
2.2 Comprar bebidas
2.3 Convidar pessoas
2.4 Gelar bebidas
3 Finalização
3.1 Limpar local
Os pacotes de trabalho se repetem, independentemente da organização (por fases, produtos parciais, etc)
Como construir a EAP • Abordagem top-‐down – Pense no panorama geral – Insira as grandes fases ou produtos parciais – Repita a decomposição para os demais níveis
• Abordagem bo*om-‐up – Faça um brainstorming com a equipe, visando iden>ficar tarefas pontuais necessárias
– Organize as tarefas ob>das gerando fases ou produtos parciais de mais alto nível
Leonardo Murta Introdução ao Planejamento de Projetos 33
Quando parar de decompor a EAP? • Quando for possível es6mar com segurança o pacote de trabalho
• Pacotes de trabalhos muito grandes – Imprecisão nas es>ma>vas – Incapacidade de monitoramento e controle precisos
• Pacotes de trabalho muito pequenos – Ineficiência no planejamento, monitoramento e controle
Leonardo Murta Introdução ao Planejamento de Projetos 34
Exercício • Faça uma EAP para o churrasco editando e complementando a EAP parcial abaixo
Leonardo Murta Introdução ao Planejamento de Projetos 35
Churrasco
1 Local
1.1 Visitar local
1.2 Escolher local
2 Compras
2.1 Comprar bebidas
3 Convidados
3.1 Convidar Professor
Possível resposta...
Leonardo Murta Introdução ao Planejamento de Projetos 36
h�ps://www.facebook.com/ComputacaoDepressao
Passo 3: definir as a>vidades • Para cada pacote de trabalho da EAP, definir: – As a>vidades necessárias para gerar o pacote de trabalho
– Os recursos necessários para executar as a>vidades
• Exemplo para o pacote de trabalho 2.1 comprar bebidas – A>vidade: ir ao supermercado adquirir as bebidas – Recurso: uma pessoa, um carro, dinheiro
Leonardo Murta Introdução ao Planejamento de Projetos 37
Passo 4: definir a sequência das a>vidades
• Para executar uma determinada a>vidade, outras a>vidades precisam já terem sido concluídas
• Assim, é necessário estabelecer as dependências (ou sequência) das a>vidades
• Dependências para a a>vidade ir ao supermercado adquirir as bebidas – Definir quan>dade de bebidas a serem compradas – Escolher supermercado com melhor preço
Leonardo Murta Introdução ao Planejamento de Projetos 38
Exercício • Estabeleça as a>vidades necessárias para cada pacote de trabalho
• Estabeleça a lista de dependências de cada a>vidade
Leonardo Murta Introdução ao Planejamento de Projetos 39
Passo 5: es>mar a duração das a>vidades
• Cada a>vidade tem uma duração esperada • Caso a a>vidade seja ainda muito grande, será complexo determinar a sua duração – Neste caso, decomponha a a>vidade
• Existem diferentes técnicas para es>pular a duração da a>vidade, dentre elas: – Opinião de especialista – Es>ma>va por analogia (projeto anterior) – Planning Poker (Métodos Ágeis) – PERT -‐ Program Evalua:on and Review Technique – Es>ma>va paramétrica (fórmula)
Leonardo Murta Introdução ao Planejamento de Projetos 40
Es>ma>va via Planning Poker • Técnica que visa o comprome6mento dos membros da equipe – Todos par>cipam do processo de es>ma>va – Todos são responsáveis pela sua concre>zação
• Permite rapidamente chegar a uma es>ma>va • Normalmente ca>va os envolvidos por ter uma dimensão lúdica
• É baseada em consenso!
Leonardo Murta Introdução ao Planejamento de Projetos 41
Es>ma>va via Planning Poker (artefatos necessários)
• Elementos a serem es>mados – Histórias – Casos de Uso – Pacotes de trabalho – A>vidades – Etc.
Leonardo Murta Introdução ao Planejamento de Projetos 42
Título: Pagamento em cartão de créditoDescrição: O usuário será capaz de pagar a compra em cartão de crédito VISA.
Es>ma>va via Planning Poker (artefatos necessários)
• Um deque, usualmente de 13 cartas, para cada membro da equipe – As cartas representam esforço (pontos, homens-‐dia, homem-‐hora, etc.)
– Ex.: 3 = 3 pessoas em 1 dia ou 1 pessoa em 3 dias
Leonardo Murta Introdução ao Planejamento de Projetos 43
Es>ma>va via Planning Poker (processo)
1. Coloque o elemento a ser es>mado no centro da mesa
2. Cada membro coloca a sua carta de es>ma>va na mesa, virada para baixo – A es>ma>va não é só codificação, mas inclui também
modelagem, testes, integração, etc. – Nenhum membro deve argumentar a razão da sua
escolha 3. As cartas são virada para cima ao mesmo tempo – Raramente cartas iguais aparecem. Isso é normal!!!
4. Calcula-‐se a média das es>ma>vas
Leonardo Murta Introdução ao Planejamento de Projetos 44
Es>ma>va via Planning Poker (processo)
5. As es>ma>vas são analisadas – Os membros com es>ma>vas distantes da média
explicam seus raciocínios (eles podem ser os certos!!!) – Se a média está muito alta, pode ser necessário
decompor o elemento sendo es>mado e es>mar as partes
– Se as es>ma>vas es>verem baseadas em hipóteses não fundamentadas, essas hipóteses devem ser discu6das com o usuário
6. O processo se repete até que o consenso seja ob>do Leonardo Murta Introdução ao Planejamento de Projetos 45
Es>ma>va via PERT • Coleta de es>ma>vas de tempo (usando diferentes técnicas) – Melhor caso -‐ O>mista (O) – Caso mais Provável -‐ Normal (N) – Pior Caso -‐ Pessimista (P)
• Cálculo do Tempo Esperado (TE) – Baseado em distribuição Beta – Pior e melhor casos a 3 desvios-‐padrão da média – TE = (O + 4 x N + P) / 6
Leonardo Murta Introdução ao Planejamento de Projetos 46
Es>ma>va paramétrica • A par>r da execução de diversos projetos semelhantes, é possível construir fórmulas via regressão que representem esses projetos
• Essas fórmulas normalmente levam em consideração o contexto para aumentar a precisão – Linguagem de programação – Nível de qualidade – Domínio do problema – Etc.
Leonardo Murta Introdução ao Planejamento de Projetos 47
Es>ma>va paramétrica • Cada organização deve adaptar as fórmulas para a suas situação específica!!!
• Não é necessária a decomposição das a>vidades do projeto para sua u>lização
• Não permite um entendimento analí6co da es>ma>va ob>da
• Normalmente são u>lizadas como complemento a outras técnicas, com intuito compara>vo
• Alguns modelos paramétricos para es>ma>vas: COnstruc>ve COst Model (COCOMO) e Análise de pontos de função (APF)
Leonardo Murta Introdução ao Planejamento de Projetos 48
Es>ma>va via COCOMO • Modelo paramétrico criado por Berry Boehm • O modelo é dividido em níveis de complexidade • Está implementado em diversas ferramentas
– h�p://csse.usc.edu/tools/COCOMOII.php – h�p://cost.jsc.nasa.gov/COCOMO.html
• Fórmula básica: – Projetos simples: fácil entendimento e equipe pequena
– Projetos de complexidade media: experiência limitada da equipe
– Projetos complexos: so`ware crí>co, interagindo com hardware
• Esforço calculado em homem-‐mês!
Leonardo Murta Introdução ao Planejamento de Projetos 49
05,14,2 KLOCEsforço ×=
12,10,3 KLOCEsforço ×=
20,16,3 KLOCEsforço ×=
Es>ma>va via COCOMO • Duração – Projetos simples: fácil entendimento e equipe pequena
– Projetos de complexidade media: experiência limitada da equipe
– Projetos complexos: so`ware crí>co, interagindo com hardware
• Duração calculada em meses! Leonardo Murta Introdução ao Planejamento de Projetos 50
38,05,2 EsforçoDuração ×=
35,05,2 EsforçoDuração ×=
32,05,2 EsforçoDuração ×=
Mas como saber o número de LOC antes de ter o produto?
• Análise de Pontos de Função (APF) visa contar a quan6dade de funcionalidades de um sistema – É independente da linguagem de programação – Permite dar uma noção de tamanho do so`ware – Ú>l para es6ma6vas e normalização de outras métricas
• APF ocorre baseado em informações de análise • Existem constantes de transformação entre pontos de função e LOC
Leonardo Murta Introdução ao Planejamento de Projetos 51
Es>ma>va via APF (algoritmo)
1. Contar os elementos do so`ware – Número de Entradas Externas (EE): conjunto de dados únicos
que entram na fronteira do sistema – Ex.: tela de cadastro de produtos
– Número de Saídas Externas (SE): conjunto de dados únicos que saem da fronteira do sistema – Ex.: relatório de vendas
– Número de Consultas Externas (CE): combinação de entrada e saída onde a saída ocorre em função da entrada
– Número de Arquivos Lógicos Internos (ALI): en>dades únicas manipuladas pelo sistema – Ex.: en>dade pedido
– Número de Arquivos de Interface Externos (AIE): en>dades compar>lhadas por diferentes sistemas externos – Ex.: estoque sendo compar>lhado pelos sistemas de vendas e financeiro
Leonardo Murta Introdução ao Planejamento de Projetos 52
Es>ma>va via APF (algoritmo)
2. Determinar o nível de complexidade de cada elemento do so`ware – Para Número de Arquivos Lógicos Internos (ALI) e
Número de Arquivos de Interface Externos (AIE)
Leonardo Murta Introdução ao Planejamento de Projetos 53
Campos de Dados
1 a 19 20 a 50 51 ou mais
En>d
ades
Agrupadas 1 Baixa Baixa Média
2 a 5 Baixa Média Alta
6 ou mais Média Alta Alta
Es>ma>va via APF (algoritmo)
2. Determinar o nível de complexidade de cada elemento do so`ware – Para Número de Saídas Externas (SE) e Número de
Consultas Externas (CE)
Leonardo Murta Introdução ao Planejamento de Projetos 54
Campos de Dados
1 a 5 6 a 19 20 ou mais
En>d
ades
Afetadas 0 ou 1 Baixa Baixa Média
2 a 3 Baixa Média Alta
4 ou mais Média Alta Alta
Es>ma>va via APF (algoritmo)
2. Determinar o nível de complexidade de cada elemento do so`ware – Para Número de Entradas Externas (EE)
Leonardo Murta Introdução ao Planejamento de Projetos 55
Campos de Dados
1 a 4 5 a 15 16 ou mais
En>d
ades
Afetadas 0 ou 1 Baixa Baixa Média
2 Baixa Média Alta
3 ou mais Média Alta Alta
Es>ma>va via APF (algoritmo)
3. Atribuir peso para as contagens de cada elemento do so`ware
Leonardo Murta Introdução ao Planejamento de Projetos 56
Elemento\Complexidade Baixa Média Alta
Entradas Externas (EE) 3 4 6
Saídas Externas (SE) 4 5 7
Consultas Externas (CE) 3 4 6
Arquivos Lógicos Internos (ALI) 7 10 15
Arquivos de Interface Externos (AIE) 5 7 10
Es>ma>va via APF (algoritmo)
4. Obter Pontos de Função não Ajustados (PFNA)
5. Ajustar os pontos de função – Responder a 14 questões – Menor nota: 0 (não importante ou não aplicável) – Maior nota: 5 (absolutamente essencial)
Leonardo Murta Introdução ao Planejamento de Projetos 57
∑ ×= PesoElementoPFNA
Es>ma>va via APF (questões de ajuste)
1. Necessita de backup? 2. Necessita de mecanismos especializados de comunicação? 3. Tem processamento distribuído? 4. Precisa de alto desempenho? 5. Terá grande número de usuários em paralelo? 6. Precisará de entrada de dados on-‐line? 7. No caso de entradas on-‐line, exis>rão múl>plas telas? 8. A atualização das en>dades será feita on-‐line? 9. As entradas e saídas de dados serão complexas? 10. O processamento interno será complexo? 11. O código será projetado para ser reu>lizado? 12. Migração e instalação estarão incluídos? 13. O sistema será instalado em diversas organizações? 14. O projeto pretende facilitar mudanças e operação do usuário?
Leonardo Murta Introdução ao Planejamento de Projetos 58
Es>ma>va via APF (algoritmo)
6. Obter Pontos de Função Ajustados (PF)
7. Converter PFNA em LOC – 1 PFNA é igual a...
Leonardo Murta Introdução ao Planejamento de Projetos 59
∑×+×= )01,065,0( RespostaPFNAPF
Linguagem LOC
Assembly 320
C 128
C++ 55
COBOL 91
Linguagem LOC
FORTRAN 77 107
Java 53
PASCAL 91
PERL 27
Linguagem LOC
Prolog 64
Shell Script 107
Visual Basic 5 29
Visual C++ 34
Exemplo • Orçar um sistema de automação residencial
Leonardo Murta Introdução ao Planejamento de Projetos 60
Fonte: Pressman
Exemplo • Contagem de PFNA – Entradas Externas (EE): 3 x 3 = 9 – Saída Externa (SE): 2 x 4 = 8 – Consultas Externas (CE): 2 x 3 = 6 – Arquivos Lógicos Internos (ALI): 1 x 7 = 7 – Arquivos de Interface Externos (AIE): 4 x 5 = 20
• PFNA = 50 • Desenvolvimento em Java – Tamanho ≈ 2,6 KLOC – Esforço ≈ 6,5 homem-‐mês – Duração ≈ 5 meses – Custo da mão de obra (R$ 3.000,00 por pessoa) ≈ R$ 19.500,00
Leonardo Murta Introdução ao Planejamento de Projetos 61
Exercício • Estabeleça a duração das a>vidades u>lizando a técnica de Planning Poker
Leonardo Murta Introdução ao Planejamento de Projetos 62
Passo 6: es>mar os custos das a>vidades
• Tendo em mãos... – Os recursos necessários para a execução das a>vidades – A duração es>mada das a>vidades
• ... é possível es>mar os custos das a6vidades • Recursos diferentes influenciam diferentemente nos custos: – Recursos humanos: valor por hora do recurso x duração em horas
– Recursos de capital (e.g., carro): valor do recurso x número de recursos (esses recursos podem ser reu6lizados em a>vidades que não estejam em paralelo)
– Recursos de consumo (e.g., combus�vel): valor do recurso x quan>dade necessária para a a>vidade
Leonardo Murta Introdução ao Planejamento de Projetos 63
Exercício • Defina o valor dos recursos necessários – Humanos – Capital – Consumo
• Defina o custo das a>vidades
Leonardo Murta Introdução ao Planejamento de Projetos 64
Passo 7: definir o cronograma • Um elemento chave do planejamento é o cronograma
• O cronograma define – O que deve ser feito – Em que ordem deve ser feito – Quanto tempo leva para fazer – Quanto custa para fazer
• Cronogramas existem sempre, mas em diferentes graus de detalhamento – Métodos Clássicos: cronograma detalhado com a>vidades – Métodos Ágeis: cronograma em alto nível, com iterações
Leonardo Murta Introdução ao Planejamento de Projetos 65
Marcos de cronograma • Além das a>vidades, os cronogramas definem marcos (do inglês, milestones) – Representam o encerramento de alguma etapa – São um bom momento para uma avaliação geral do andamento do projeto
• Pense em uma viagem longa...
Leonardo Murta Introdução ao Planejamento de Projetos 66
Tarefa de casa • Analise algum projeto open-‐source e traga na próxima aula – O seu cronograma (chamado de roadmap por alguns projetos)
– Os marcos (chamado de release milestones por alguns projetos)
Leonardo Murta Introdução ao Planejamento de Projetos 67
Gráfico de Gan� • Cronogramas são usualmente representados por meio de gráficos de Gan� – Eixo X: tempo – Eixo Y: a>vidades
• Gráficos de Gan� contém – As a>vidades – A dependência entre as a>vidades – A duração das a>vidades
Leonardo Murta Introdução ao Planejamento de Projetos 68
Exemplo (Gan� resumido)
Leonardo Murta Introdução ao Planejamento de Projetos 69
Caminho crí>co • Um cronograma define a ordem e duração de a>vidades
• Com isso, algumas a>vidades podem ser executadas em paralelo
• Mas determinadas a>vidades são mais crí>cas que outras, pois podem impactar no atraso de todo o projeto
Leonardo Murta Introdução ao Planejamento de Projetos 70
CPM • CPM (Cri:cal Path Method) é uma técnica clássica criada nos anos 50 para encontrar o caminho crí6co
• O caminho crí>co contém as a>vidades que, caso atrasem, atrasarão o projeto como um todo
• As a>vidades que não estão no caminho crí>co têm folga – Que também é calculada via CPM
• As a>vidades que estão no caminho cri>co, quando o>mizadas, melhoram o desempenho do projeto como um todo!!!
Leonardo Murta Introdução ao Planejamento de Projetos 71
Exercício • Encontre o caminho crí>co e as folgas das a>vidades do Churrasco.
• Qual algoritmo você usou para encontrar esses valores?
Leonardo Murta Introdução ao Planejamento de Projetos 72
Algoritmo CPM 1. Construa um grafo onde as a>vidades são nós e
as dependências são arestas direcionadas 2. Coloque um nó “início” e um nó “fim” no grafo 3. Conecte todas as a>vidades sem dependência de
entrada com uma dependência vindo de “início”, e sem dependência de saída com dependência indo para “fim”
4. Escreva a duração de cada a>vidade sobre a a>vidade
Leonardo Murta Introdução ao Planejamento de Projetos 73
Algoritmo CPM
Leonardo Murta Introdução ao Planejamento de Projetos 74
Escolher local
Escolher bebidas
Escolher convidados
Visitar local
Comprar bebidas
Convidar pessoas
Contratar local
Gelar bebidas
Limpar local
Início
Fim
2
3
2
1 1
1
1
1
1
Algoritmo CPM 5. Encontre todos os caminhos entre o início e o fim via
busca em profundidade 6. Para cada caminho encontrado, some a duração das
a>vidades • O caminho com a maior duração é o caminho crí6co • A folga das a>vidades do caminho crí>co é zero
(assumindo que o projeto deve terminar o quanto antes) • A folga das a>vidades fora do caminho crí>co é a duração
do caminho crí>co menos a duração do seu caminho mais longo
Leonardo Murta Introdução ao Planejamento de Projetos 75
Algoritmo CPM
Leonardo Murta Introdução ao Planejamento de Projetos 76
Escolher local
Escolher bebidas
Escolher convidados
Visitar local
Comprar bebidas
Convidar pessoas
Contratar local
Gelar bebidas
Limpar local
Início
Fim
2
3
2
1 1
1
1
1
1
4
5
4
5
Algoritmo CPM
Leonardo Murta Introdução ao Planejamento de Projetos 77
Escolher local
Escolher bebidas
Escolher convidados
Visitar local
Comprar bebidas
Convidar pessoas
Contratar local
Gelar bebidas
Limpar local
Início
Fim
2
3
2
1 1
1
1
1
1
Folga=0
Folga=0
Folga=0
Folga=0
Folga=0 Folga=0
Folga=0
Folga=1
Folga=1
Exercício • Refaça o exercício anterior e verifique se o caminho crí>co e as folgas >nham sido encontradas corretamente
• Além disso, determine para cada a>vidade a sua data mínima e máxima de início e término imaginando que queremos o churrasco para daqui a 2 semanas
Leonardo Murta Introdução ao Planejamento de Projetos 78
Exemplo de CPM (ou Gan� detalhado)
Leonardo Murta Introdução ao Planejamento de Projetos 79
Tarefa de Casa • U>lize alguma ferramenta para gerar o gráfico de Gan�, o caminho crí>co e as folgas para o trabalho do curso – No nosso laboratório temos o MS Project instalado – Outras ferramentas podem ser encontradas em h�p://en.wikipedia.org/wiki/List_of_project_management_so`ware
Leonardo Murta Introdução ao Planejamento de Projetos 80
Passo 8: Definir o orçamento • Orçamento = ∑ custos das a>vidades + margem de lucro • Custos podem ser maiores ou menores que o Orçamento – Custos < Orçamento (é o mais comum) à visa lucro – Custos > Orçamento à visa aumentar a probabilidade de ganhar o projeto (para projetos estratégicos)
• O orçamento deve conter também o cronograma de desembolsos – Ex.: Orçamento de R$ 100.000,00, com 4 desembolsos semestrais de R$ 25.000,00
– Normalmente os desembolsos são associados a marcos do projeto!
Leonardo Murta Introdução ao Planejamento de Projetos 81
Custo x Preço x Valor • Custo: gastos na produção de um bem ou serviço • Preço: o quanto é esperado receber por esse bem ou serviço
• Valor: o quanto o bem ou serviço é importante para quem compra
• Qual é o custo, preço e valor de um guarda-‐chuva no centro do Rio... – Em um dia de sol – Em um dia de chuva
Leonardo Murta Introdução ao Planejamento de Projetos 82
Exercício • Defina o orçamento do churrasco • Especifique as formas de desembolso
Leonardo Murta Introdução ao Planejamento de Projetos 83
Passo 9: integrar planos • O plano do projeto envolve, além do planejamento de escopo, custo e cronograma, o planejamento das demais prá>cas de ES: – Plano de comunicação – Plano de testes – Plano de gerência de configuração – Plano de segurança – Plano de implantação – Plano de reu>lização – Etc.
Leonardo Murta Introdução ao Planejamento de Projetos 84
Exemplo: plano de comunicação
Leonardo Murta Introdução ao Planejamento de Projetos 85
Fonte: h�p://www.blogcmmi.com.br/gestao/plano-‐de-‐comunicacao-‐passo-‐a-‐passo
Exemplo: plano de riscos • O propósito do processo Gerência de Riscos é iden6ficar, analisar, tratar, monitorar e reduzir con>nuamente os riscos em nível organizacional e de projeto (SOFTEX, 2009)
• Visa: – Iden>ficar os riscos do projeto – Estabelecer a probabilidade de ocorrência, o impacto e a exposição (probabilidade x impacto) de cada risco iden>ficado
– Priorizar os riscos (ordenar decrescentemente por exposição) – Mi>gar os riscos (definir planos de contenção e con>ngência) – Monitorar periodicamente – Tomar ações corre>vas quando necessário
Leonardo Murta Introdução ao Planejamento de Projetos 86
Exemplo ilustra>vo • Cenário: subida de serra na terra • Risco 1: colisão com carro vindo na outra direção
Leonardo Murta Introdução ao Planejamento de Projetos 87
Exemplo ilustra>vo • Probabilidade: 20% (pouca neblina) • Impacto: 0,8 (ferimentos graves) • Exposição: 0,16 • Prioridade: média
Leonardo Murta Introdução ao Planejamento de Projetos 88
Impacto
Prob
abilida
de
0 0,2 0,4 0,6 0,8 1
100% 0 0,2 0,4 0,6 0,8 1
80% 0 0,16 0,32 0,48 0,64 0,8
60% 0 0,12 0,24 0,36 0,48 0,6
40% 0 0,08 0,16 0,24 0,32 0,4
20% 0 0,04 0,08 0,12 0,16 0,2
0% 0 0 0 0 0 0
Exemplo ilustra>vo • Mi>gação – Contenção: dirigir em baixa velocidade, carro com ABS – Con>ngência: uso de cinto de segurança, carro com Air Bag
Leonardo Murta Introdução ao Planejamento de Projetos 89
Exemplo ilustra>vo • Monitoramento – A cada 10 minutos – Verificar mudanças climá>cas – Verificar condições da pista e claridade (dia/noite) – Atualizar avaliação de probabilidade e impacto do risco
Leonardo Murta Introdução ao Planejamento de Projetos 90
Exercício • Defina os riscos relacionados ao trabalho do curso – Iden>fique a probabilidade e o impacto desses riscos – Calcule a exposição ao risco – Priorize os riscos – Mi>gue (medidas de contenção e con>ngência) os riscos com maior prioridade
– Determine o período de monitoramento e execute o monitoramento nesse período
Leonardo Murta Introdução ao Planejamento de Projetos 91
Referências • Greene, J.; Stellman, A.; 2007. Head First PMP. O’Reilly Media
• Orth, A. I., Prikladnicki, R., “Planejamento e Gerência de Projetos”, ediPUCRS, Porto Alegre, 2009.
• Pilone, D.; Miles, R.; 2008. Head First So`ware Development. O’Reilly Media.
• Pressman, R. S.; 2004. So`ware Engineering: A Prac>>oner’s Approach. 6 ed. McGraw-‐Hill.
• SOFTEX, 2009. Guia de Implementação – Parte 5: Nível C. h�p://www.so`ex.br/mpsbr
Leonardo Murta 92 Introdução ao Planejamento de Projetos
Introdução ao Planejamento de
Projetos
Leonardo Gresta Paulino Murta leomurta@ic.uff.br
Recommended