160 likes | 267 Views
Planeamento Temporal e Monitorização do Projecto de SW. Aula 15. Sumário. Introdução O quê é? Quem faz? Porquê é importante? Qual é o produto? Como saber se está bem feita? Conceitos e princípios básicos Relação pessoas-esforço Tarefas, interdependências e planeamento temporal.
E N D
Planeamento Temporal e Monitorização do Projecto de SW Aula 15
Sumário • Introdução • O quê é? • Quem faz? • Porquê é importante? • Qual é o produto? • Como saber se está bem feita? • Conceitos e princípios básicos • Relação pessoas-esforço • Tarefas, interdependências e planeamento temporal
Introdução (I) • É a definição das datas de execução e dos responsáveis pelas tarefas • composição do Diagrama de Gantt • preencher detalhes das tarefas na ferramenta de apoio automatizado (MS Project, etc.) • Quem faz? • Gestores de Software • Porquê é importante? • Permite ver a interdependência entre tarefas • Permite ver o avanço do projecto • Qual o produto? • Planeamento temporal • Informes de avanço
Introdução (II) • Como fazer bem? • Todas as tarefas e as suas interligações devem aparecer • opcionalmente, montar uma rede de tarefas • O esforço, tempo e recursos devem ser atribuídos inteligentemente • Após serem realizadas as Métricas e Estimações do Projecto.. • Os produtos a entregar devem ser devidamente espacejados por um marco (landmark) • datas pré-definidas com intervalos “+/- constantes” • Marcos: entrega da especificação, da análise, do desenho, dos testes, do produto final..
Razões que levam ao atraso do projecto • Datas de entrega pouco realistas • Mudança nos requisitos sem actualização das datas de entrega • falta de actualização do Plano de Projecto • Riscos não considerados • Dificuldades técnicas ou humanas não previstas • Falta de comunicação na equipa de desenvolvimento • Falta de reconhecimento do atraso e ausência de medidas para o corrigir
O cliente pede a construção de uma classe X em no máximo 9 semanas Mas a Estimação e a Análise de Riscos sugerem 14 semanas O quê fazer? Realize uma estimação detalhada baseado em projectos anteriores Estabeleça uma estratégia de desenvolvimento incremental que forneça a funcionalidade crítica em 9 semanas e deixe as outras para depois Explique ao cliente a sua estratégia e porquê 9 semanas não é uma data realista Convença-o a receber o produto por incrementos.. Como agir bem em caso de atraso? - Exemplo
Compartimentação: o projecto deve subdividir-se em actividades e tarefas Interdependência Atribuição de tempo em unidades de trabalho Validação do esforço: comprovar não ter atribuído mais esforço que os recursos humanos disponíveis Definição de responsabilidades Resultados definidos: tipicamente um produto Definição de eventos importantes (milestone): todas as tarefas se associam a um evento revisão de qualidade, aprovação de um ou mais produtos, etc Princípios básicos
Relação pessoas-esforço • Mito • os atrasos corrigem-se com mais pessoas • Errado! • Pois o overhead adicional pela entrada de um novo membro na Equipa de Desenvolvimento atrasa ainda mais o projecto
Distribuição do Esforço • Após realizada a Estimação do Projecto de SW, divida o tempo estimado da seguinte maneira: • Planeamento: 2-3% • debitado da distribuição das actividades descrita abaixo.. • Requisitos-Análise-Desenho: 40% • Geração de Código: 20% • Testes: 40%
Refinação das tarefas – exemplo • Tarefa: descrever o âmbito do software • Identificação da necessidade, os benefícios e clientes potenciais • Definir o resultado desejado e as entradas • Definir funcionalidade/comportamento para cada função principal desenvolvida • Isolar os elementos da tecnologia a implementar em software • Investigar a disponibilidade de informação sobre o software existente • Definir viabilidade técnica • Estimar rapidamente o tamanho • Criar definição do âmbito
Planeamento temporal • Similar a qualquer esforço de engenharia • Baseado em trabalho prévio • Estimações de esforço (dias-pessoa) • utilização de métricas • Decomposição de funções (ou Classes) • Selecção do processo de desenvolvimento de sw adequado e do seu conjunto de tarefas • Decomposição de tarefas
Monitorização do projecto • Realização de reuniões periódicas • Avaliação dos resultados das revisões • Determinação de marcos para a elaboração dos produtos gerados durante a realização do projecto • Comparando datas previstas com as reais
Tabela de controlo do projecto A Tabela de Controlo pode ser gerada automaticamente, a depender da ferramenta de apoio (MS Project, etc) utilizada..
… • Análise e Gestão do Risco • Medições, Métricas e Estimação para Projectos de SW • Estimação de Projectos de SW OO • Como assegurar Qualidade de Software