ENGENHARIA DO SOFTWARE I Manuel Menezes de Sequeira DCTI, ISCTE-IUL [email protected], D6.02 As apresentações desta série baseiam-se nas apresentações disponibilizadas por Ian Sommerville , tendo sido alteradas e adaptadas primeiro por Anders Lyhne Christensen e finalmente por Manuel Menezes de Sequeira.
Gestão de projectos. Unidade de Engenharia do Software I para o curso de METI no ISCTE-IUL no 2.º semestre do ano lectivo de 2009/2010.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
As apresentações desta série baseiam-se nas apresentações disponibilizadas por Ian Sommerville, tendo sido alteradas e adaptadas primeiro por Anders Lyhne Christensen e finalmente por Manuel
Gestão de projectosActividades de gestãoPlaneamento de projectosCalendarização de projectosGestão do risco
2009/2010
Engenharia do Software I 5
Objectivos Explicar tarefas principais executadas por gestores de
projecto
Apresentar gestão de projectos e descrever suas características distintivas
Discutir planeamento de projectos e processo de planeamento
Mostrar como gestão de projectos usa representações gráficas da calendarização
Discutir noção de risco e o processo de gestão de risco
2009/2010
Engenharia do Software I 6
Gestão de projectos de software Preocupa-se com actividades garantindo
Entrega atempada do software (de acordo com calendarização)
Respeito dos requisitos das organizações que desenvolvem e adquirem o software
Necessária porque desenvolvimento sujeito a restrições orçamentais e de calendário definidas por organização que o desenvolve
2009/2010
Engenharia do Software I 7
Particularidades da gestão de projectos de software
ProdutoIntangívelUnicamente flexível
Menos reconhecida que outras engenharias
Processo não normalizado Muitos projectos únicos
2009/2010
Engenharia do Software I 8
Actividades da gestão de projectos Elaboração de propostas Planeamento e calendarização Custeio Monitorização e revisão Selecção e avaliação de pessoal Elaboração de relatórios e
apresentações
2009/2010
Engenharia do Software I 9
Aspectos genéricos da gestão de projectos Actividades não específicas da gestão de
software
Muitas técnicas de gestão de projectos de engenharia aplicam-se também à gestão de projectos de software
Sistemas de engenharia tecnicamente complexos tendem a ter mesmos problemas que sistemas de software
2009/2010
Engenharia do Software I 10
Pessoal
Pode acontecerNão se consegue as pessoas ideaisOrçamento impossibilita pessoal bem pagoOrganização deseja desenvolver
competências de pessoal usando um projecto
Gestores têm de lidar com estes limites, especialmente quando escasseia pessoal com treino adequado
2009/2010
Engenharia do Software I 11
Planeamento de projectos Provavelmente actividade mais morosa da
gestão de projectos
Actividade contínuaDa concepção inicial à entrega do sistemaPlanos revistos regularmente quando surge nova
informação
Vários tipos de plano suportam plano principal do projecto de software (focado em calendarização e orçamentação)
2009/2010
Engenharia do Software I 12
Tipos de plano de projectoTipo de plano Descrição
Plano de qualidade Descreve procedimentos e normas de qualidade a usar.
Plano de validação Descreve a abordagem, recursos e calendarização a usar para validação do sistema.
Plano de gestão de configurações
Descreve os procedimentos e estruturas de gestão de configuração a usar.
Plano de manutenção Prevê os requisitos, os custos e o esforço de manutenção do sistema.
Plano de desenvolvimento do pessoal
Descreve forma de desenvolvimento das competências e experiência do pessoal.
2009/2010
Engenharia do Software I 13
Processo de planeamento de projectos Estabelecer restrições do projecto Aferir parâmetros do projecto Definir marcos e entregáveis do projecto Enquanto o projecto não terminar ou for cancelado
Desenhar calendário do projectos Iniciar actividades de acordo com o calendário Esperar (algum tempo) Analisar progresso do projecto Rever estimativas de parâmetros do projecto Actualizar calendário do projecto Renegociar restrições e entregáveis do projecto Se surgirem problemas
○ Iniciar análise técnica e possível revisão
2009/2010
Engenharia do Software I 14
Plano (principal) do projecto Estabelece
Recursos disponíveisDivisão do trabalhoCalendário do trabalho
2009/2010
Engenharia do Software I 15
Estrutura do plano do projecto
Introdução Organização Análise de risco Requisitos de recursos de hardware e
software Divisão do trabalho Calendário Mecanismos de monitorização e reporte
2009/2010
Engenharia do Software I 16
Organização de actividades De modo a produzir resultados tangíveis
para gestão poder aferir progresso
Marcos ocorrem no final de actividades
Entregáveis são resultados fornecidos aos clientes
Processo em cascata facilita definição de marcos de progresso
2009/2010
17Engenharia do Software I
Marcos do processo de eliciação de requisitos
Estudo de viabilidade
Análise de requisitos
Desenvolvimento de protótipo
Estudo de desenho
Especificação de requisitos
Relatório de viabilidade
Requisitos do utilizador
Relatório de avaliação
Desenho arquitectural
Requisitos do sistema
Actividades
Marcos (e entregáveis)
2009/2010
Engenharia do Software I 18
Calendarização do projecto Dividir projecto em tarefas com duração e
recursos estimados
Organizar tarefas em paralelo optimizando ocupação do pessoal
Minimizar dependência entre tarefas evitando que tarefas esperem por outras
Assenta na intuição e experiência de gestores de projecto
2009/2010
19Engenharia do Software I
Processo de calendarização de projectos
Identificar actividades
Identificar dependências
Estimar recursos
Afectar pessoal
Criar gráficos
Requisitos do software
Gráficos de actividades e de
barras
2009/2010
Engenharia do Software I 20
Problemas de calendarização Difícil estimar dificuldade de problemas e
custo de desenvolvimento
Produtividade não proporcional a número de pessoas envolvidas em tarefa
Mais pessoas em projecto atrasado pode atrasá-lo mais (custos de comunicação)
Inesperado acontece: prever contingências
2009/2010
Engenharia do Software I 21
Gráficos de barras e redes de actividades Notações gráficas ilustrando calendário do projecto
Mostram divisão em tarefasNão definir tarefas demasiado pequenasDe uma a duas semanas
Gráficos de actividades mostram dependências e caminho crítico
Gráficos de barras mostram calendário ao longo do tempo
2009/2010
Engenharia do Software I 22
Duração e dependênciasActividade Duração (dias) Dependências
Componentes a reutilizar têm defeitos limitativos.
Moderada Sério
Alterações de requisitos exigem redesenho completo.
Moderada Sério
Reestruturação altera gestão do projecto. Alta Sério
Insuficiente desempenho da base de dados. Moderate Sério
Tempo para desenvolver software subestimado.
Alta Sério
2009/2010 Engenharia do Software I
35
Análise de riscoRisco Probabil. Impacte
Ferramentas CASE não se podem integrar. Alta Tolerável
Cliente não entende impacte de alterações pedidas.
Moderada Tolerável
Indisponível formação necessária para pessoal.
Moderada Tolerável
Ritmo de reparação de defeitos subestimado.
Moderada Tolerável
Dimensão do software subestimada. Alta Tolerável
Código gerado por ferramentas CASE é ineficiente.
Moderada Insignificante
2009/2010 Engenharia do Software I
Engenharia do Software I 36
Estratégias de planeamento de riscoPrevenção Reduzir probabilidade de ocorrência do risco.
Minimização Reduzir impacte do risco sobre o projecto ou o produto.
Planos de contingência
Elaborar planos para lidar com o risco no caso de este ocorrer.
2009/2010
Engenharia do Software I 37
Estratégias de planeamento de riscoRisco Estratégia
Problema financeiro organizacional
Preparar um documento destinado à gestão de topo com informação essencial mostrando que o projecto está a dar contributos importantes para os objectivos do negócio.
Problema de recrutamento
Alertar cliente sobre potenciais dificuldades e possíveis atrasos; investigar aquisição de componentes.
Doença de pessoal
Reorganizar equipa para o trabalho se sobreponha mais e, por isso, os colaboradores conheçam o trabalho uns dos outros.
Componentes defeituosos
Substituir componentes potencialmente defeituosos por componentes adquiridos com fiabilidade conhecida.
2009/2010
Engenharia do Software I 38
Estratégias de planeamento de riscoRisco Estratégia
Alterações nos requisitos
Obter informação de rastreamento para aferir o impacte das alterações nos requisitos; maximizar ocultação de dados no desenho.
Reestruturação organizacional
Preparar um documento destinado à gestão de topo com informação essencial mostrando que o projecto está a dar contributos importantes para os objectivos do negócio.
Desempenho da base de dados
Investigar possibilidade de adquirir uma base de dados com maior desempenho.
Tempo de desenvolvimento subestimado
Investigar a aquisição de componentes; investigar a utilização de um gerador de programas.
2009/2010
Engenharia do Software I 39
Monitorização de risco
Aferir regularmenteProbabilidade dos riscos identificadosImpacte dos riscos identificados
Discutir cada um dos riscos durante reuniões de gestão sobre progresso do projecto
2009/2010
Engenharia do Software I 40
Indicadores de riscoTipo de risco Indicadores potenciais
Tecnológico Fornecimento tardio de hardware ou de software de suporte; muitos reportes de problemas tecnológicos.
De pessoal Moral do pessoal em baixo; fraco relacionamento entre membros da equipa; disponibilidade de ofertas de trabalho.
Organizacional Intrigas organizacionais; gestão de topo não age.
De ferramentas Membros da equipa relutantes em usarem ferramentas; queixas acerca de ferramentas CASE; pedidos de estações de trabalho mais poderosas.
De requisitos Muitos pedidos de alteração de requisitos; reclamações do cliente.
De estimativa Ultrapassagem de prazos calendarizados; defeitos reportados não são resolvidos.
2009/2010
Engenharia do Software I 41
A reter Sucesso do projecto implica boa gestão
Software intangível gera problemas de gestão
Gestores com diferentes papéis; actividades mais significativasPlaneamentoEstimaçãoCalendarização
Planeamento e estimação iterativos e durante todo o projecto
2009/2010
Engenharia do Software I 42
A reter Marcos são estados previsíveis nos quais
relatórios formais de progresso são entregues à gestão
Calendarização envolve preparar gráficos mostrando actividades, suas durações e dependências, e afectação de recursos
Gestão do risco Identifica riscos que podem afectar projectoPlaneia para garantir que riscos não se tornam ameaças
sérias
2009/2010
Engenharia do Software I 43
A ler
Ian Sommerville, Software Engineering, 8.ª edição, Addison-Wesley, 2006