Cronograma de Projeto de Software - Natureza e Importância do Problema - Quem faz? - Produto Visível 1 Causas de Atrasos - Prazos estabelecidos por pessoas de fora ou programadores - Mudanças de Requisitos não previstas - Subestimativa de esforço - Riscos não considerados - Dificuldades técnicas não previstas - Dificuldades humanas não previstas - Falta de comunicação - Falha na gerência do projeto 2 Pressão de Mercado Como isto pode influenciar na elaboração de cronogramas irreais? Valor da Negociação Modelo Incremental 3 Elementos de Cronogramas - Compartimentalização: atividades e tarefas gerenciáveis - Interdependência: sequencia e paralelismo - Atribuição de Tempo / Pessoas - Validação do Esforço: compatibilidade de pessoas / equipes - Responsabilidades Definidas - Resultados Mesuráveis - Marcos de referência 4 Problema de aumento de equipes em fases finais - Falta de conhecimento do sistema - Opiniões diferentes - Aumento de canais de comunicação 5 Curva de Putam-Norden-Rayleigh (PNR) Ea=m(td4/(ta4) Custo Do Esforço Ea = esforço em pessoas-mês td = prazo de entrega nominal do cronograma to = tempo ótimo de desenvolvimento (em custo) ta = prazo de entrega real desejado Região Impossível Ed Eo td to Tempo de desenvolvimento Tmin= 0,75td 6 Distribuição de Trabalho 10% - Levantamento de Requisitos 15% - Análise 25% - Projeto 20% - Codificação 30% - Testes 7 Elaboração de Cronograma 8 Elaboração de Cronograma 9 Análise de Riscos 1. Estabelecer uma escala que reflete a probabilidade percebida de um risco - Negligível - Marginal - Crítica - Catastrófica 2. Delinear as consequencias do risco - Desempenho - Apoio - Custo - Cronograma 3. Estimar o impacto do risco no projeto e no produto 4. Anotar a precisão da previsão de risco, para evitar mal entendidos 10 Análise de Riscos Riscos Categoria Probabilidade Impacto A estimativa de tamanho pode ser significativamente baixa Tamanho de produto 60% Crítico Usuários finais resistem ao sistema Impacto de negócio 50% catastrófico Tamanho do produto 80% marginal Cliente modificará os requisitos 11 Estimativa de Custos 12 Exercício – Elaborar o cronograma, riscos e orçamento - Olá, sente-se por favor... - Muito obrigado. Este posto de gasolina é grande, parece bem movimentado... - Pois é... Vamos direto ao assunto: Minhas vendas aumentaram muito nos últimos meses, devido ao novo acesso que foi construído para a linha amarela, aqui do lado. Meu posto quase triplicou o volume de vendas e o meu sistema de gestão (manual, hehehe...) não suporta mais este fluxo. Preciso de um novo sistema. - Ok. Tenho três compartimentos subterrâneos para combustível: um para gasolina, outro para álcool e outro para diesel. Recebo quase todos os dias um caminhão de cada, para abastecer a reserva. Preciso de um sistema que controle todo meu fluxo de combustível e controle de caixa. Quando o caminhão abastecer, gostaria de poder colocar no sistema a quantidade colocada, em litros. Minhas bombas estão ligadas ao sistema, portanto quero que a saída de combustível seja retratada em tempo real no sistema. Quando o estoque estiver em apenas 10% (este valor seria configurado), gostaria de receber um aviso no computador central que a reserva está baixa. Quero atualizar o preço bruto do litro, os impostos e a margem de lucro e quero que o sistema controle meu fluxo de caixa. A qualquer momento gostaria de poder consultar quanto gastei, quanto tenho que pagar de impostos e qual foi meu lucro dentro de um período. Quero que o frentista possa cadastrar uma placa de um carro no sistema, de forma que posso ter conhecimento da freqüência de cada cliente, bem como o consumo de cada um dentro de um período. Desta forma poderei dar algumas promoções para os mais fiéis. Também é importante que eu possa ter uma idéia dos horários de maior fluxo. Portanto é importante que ao ser inserido um veículo, automaticamente o sistema coloque a hora em que foi feito o processo. Há um pequeno complicador nisto tudo: temos diversos tipos de gasolina: comum, especial e Premium. Há depósitos para os componentes que são misturados na gasolina pelas bombas. Estes produtos também são abastecidos 13 freqüentemente e o sistema precisa controlar também o seu fluxo, preço, recarga, etc. - E quanto aos demais serviços: troca de óleo, lavagem, etc? Por enquanto acho que não preciso que o sistema gerencie tudo isto. Futuramente, se eu ficar satisfeito com seu trabalho, posso pedir um upgrade neste sentido. Mais uma coisa, que estava me esquecendo: quero que no sistema possa colocar nomes de pessoas que me deram cheques sem fundo... Quando um carro que estiver com pendências de cheque sem fundo for pagar, não quero aceitar cheques destas pessoas... - Mas como identificará isto ao sistema? Simples: peço ao frentista que anote no verso de todos os cheques a placa do carro da pessoa. 14