Post on 22-Apr-2015
UNIBRATEC
CTD
Planejamento e Gerenciamento de Projetos
Gerencia e Planejamento de Projetos
Roteiro
Processo de Desenvolvimento de Software Importância do Planejamento Gerência de Projeto de Software
Preocupações Projeto de Software
Tarefas do PlanejamentoAtividades do PlanejamentoPlano de Projeto
Entendimento Modificação
Revalidação
Projeto Codificação
Teste
Análise de Sistema Planejamento Análise de Requisitos
Processo de Desenvolvimento Processo de Desenvolvimento de Softwarede Software
CONSTRUÇÃO
MANUTENÇÃO
DEFINIÇÃO
Processo de Desenvolvimento Processo de Desenvolvimento de Softwarede Software
Gerência e Planejamento
Entendimento Modificação
Revalidação
Análise de Sistema Planejamento
Análise de Requisitos
DEFINIÇÃO
Projeto Codificação
Teste
MANUTENÇÃOCONSTRUÇÃO
Envolve planejamento, monitoramento e controle
Métodos
PessoasPolíticas
Ferramentas
Importância do Planejamento no Importância do Planejamento no Processo de DesenvolvimentoProcesso de Desenvolvimento
Requisitos de Software Produto
Cumprimento de Prazo, Boa Previsão de Custo, Boa Produtividade
Responsabilidades
Gerência Eficaz Controle das Atividades
Gerência de Projeto de Gerência de Projeto de SoftwareSoftware
Atividade guarda chuva - abrange todo o processo de desenvolvimento
Possibilita compreender o escopo do trabalho, riscos, recursos exigidos, tarefas a executar, programação(cronograma) a ser seguida, esforço despendido
Enfoque principal: (4 P´s) Produto, Pessoa, Processo e Projeto
Atividade fundamental: planejamento
“ O tempo é o bem mais valioso que está disponível a um Engenheiro de Software.
Se houver tempo disponível, um problema pode ser adequadamente analisado, uma solução pode ser compreensivamente projetada, o código fonte cuidadosamente implementado e testado
Nunca há tempo suficiente ... ”
Antes de começar um trabalho, é necessário despender tempo para organizar as ações.
O Planejamento de Projeto de Software obriga gerentes e profissionais a despender esse tempo
Preocupações da Gerência de Projeto
• Qualidade do produto
• Avaliação dos riscos
• Medidas
• Estimativa de custo
• Cronograma do projeto
• Equipe
• Outros recursos
• Monitoramento do projeto
Preocupações da gerência - os 4P´s
Produto - software a ser construído (objetivo, escopo, soluções).
Pessoa - elemento mais importante de um projeto bem sucedido (competências).
Processo - conjunto de atividades e tarefas da engenharia de software.
Projeto - todo trabalho exigido para tornar o produto uma realidade.
Projetos de Software Fatores que influenciam o resultado final:
• Tamanho
• Data de entrega
• Custos e orçamentos
• Domínio da aplicação
• Tecnologia a ser implantada
• Restrições do sistema
• Requisitos do usuário
• Recursos disponíveis
Projetos de Software Porque os projetos falham ?
• Data de entrega estabelecida não realística
• Mudanças nos requisitos do cliente
• Esforço necessário subestimado
• Riscos previsíveis e/ou imprevisíveis
• Dificuldades técnicas
• Falta de comunicação entre a equipe de projeto
• Falha no gerenciamento do projeto
Tarefas do PlanejamentoTarefas do Planejamento
Determinar o alcance do trabalho a ser realizado: função, desempenho, interface e segurançaEstimar recursos necessários ao desenvolvimento do software: recursos humanos, de hardware e de softwareIdentificar tarefas a serem efetuadasElaborar cronogramasEstimar esforço (custo) despendido
Atividades do PlanejamentoAtividades do Planejamento
Combina
2 Tarefas
Pesquisa
Estimativa
Define o alcance do software; utiliza a especificação do sistema
como guia
Incerteza
PLANO DE PROJETO DE SOFTWARE
Plano de Projeto de Software
Objetivos
• Comunicar o escopo e os recursos de gerenciamento de software, ao pessoal técnico e ao cliente de software
• Definir os riscos e sugerir técnicas para evitá-los
• Definir custos e prazos para revisões gerenciais
• Oferecer uma abordagem geral ao desenvolvimento de software para todas as pessoas envolvidas no projeto
• Definir como a qualidade será garantida e mudanças gerenciadas
Esboço do PlanoEsboço do Plano
Capa
Resumo
I. Índice
II. Introdução 1. Motivação 2. Objetivos 3. Escopo 4. Público alvo 5. Restrições e riscos
III. Descrição da Arquitetura
IV. Recursos do Projeto 1. Pessoal 2. Hardware 3. Software
V. Estimativas de custo de desenvolvimento VI. Cronograma 1. Rede de tarefas, 2. gráficos de Grantt 3. tabela de recursos X tarefas
VII. Conclusões em processo
Plano de ProjetoPlano de ProjetoIntroduçãoIntrodução
Enfoque:
I- PRODUTO
II - RISCOS
I - PRODUTO
• Estabelecer o escopo do software
• assegurar que o produto desenvolvido é o produto solicitado
• Escopo
•contexto (negócio, restrições, etc)
•informação objetiva (entrada, saída)
• função e desempenho
• Decomposição: estabelecer o particionamento funcional (núcleo da análise de requisitos)
Plano de ProjetoPlano de ProjetoRiscosRiscos
II. RISCOS DO PROJETO
1. Análise dos riscos
2. Administração dos riscos
“O fundamental é que os Riscos assumidos sejam os Riscos certos”
Passos para atacar os riscos:
• Identificação
• Avaliação
• Disposição por ordem de prioridade
• Estratégias de administração
• Resolução
• Monitoração
Identificação dos Riscos
Plano de ProjetoPlano de ProjetoRiscosRiscos
Projeto Técnicos Negócio•Problemas orçamentários
• cronograma
•Pessoal
•Recursos
•Clientes
•Requisitos
•impacto no projeto do software
identificam potenciais problemas de:
•Projeto
•Implementação
•Interface
•Verificação
•manutenção
podem destruir até os melhores projetos:
• produto que ninguém quer; ou que não se encaixe mais na estratégia da empresa;
• perder o apoio da administração
•compromisso Orçamentário
“Se você não atacar ativamente os riscos técnicos e de projeto, eles lhe atacarão ativamente.”
Descrição da ArquiteturaDescrição da Arquitetura
A arquitetura Trata de Vários Aspectos “Espinha Dorsal do Sistema” “Organização Do Sistema em termos de
Componentes”. “Protocolos de Comunicações”. “Interação entre Componentes”. “Distribuição Física”. “Escalabilidade e Desempenho”. “Evolução do Sistema”.
Plano de ProjetoPlano de ProjetoRecursosRecursos
IV. RECURSOS DO PROJETO
1. Pessoal
2. Hardware
3. Software
Especificar: •Habilidades exigidas •Disponibilidade •Duração das tarefas •Data de início
Especificar: •Descrição •Disponibilidade •Duração do uso •Data de entrega
Pessoas
Ferramentas de hardware/software
Plano de ProjetoPlano de ProjetoRecursosRecursos
Pessoa: motivação, habilidades, conhecimento ...
Projetos Pequenos: uma única pessoa
Projetos Grandes: participação varia através do ciclo de vida
Plano de ProjetoPlano de ProjetoRecursosRecursos
Recursos Humanos:
Mito: “Se sairmos fora do cronograma, adicionamos
mais programadores e recuperamos o atraso”.
Isso faz o cronograma atrasar ainda mais!
Motivo: a comunicação é absolutamente essencial para o desenvolvimento do software. Todo novo caminho de comunicação exige esforço adicional e portanto, tempo adicional.
Plano de ProjetoPlano de ProjetoRecursosRecursos
Recursos Humanos:
Análise derequisitos
baixo
alto
Grau departicipaçãono projeto
Planejamento Projetopreliminar
Pessoaltécnico senior
Pessoaltécnico junior
Administrador
Projetodetalhado
CodificaçãoTeste deunidade
ProgramadoresSenior
ProgramadoresJr. e Estagiários
Gerentes e Analistas
Plano de ProjetoPlano de ProjetoOrganização do PessoalOrganização do Pessoal
Estrutura de Equipe:Deve ser considerado o fator humano em seus aspectos psicológicos, individuais e grupais e o reflexo deles no desempenho da equipe
Principais estruturas de equipe: Equipe Convencional Equipe Democrática descentralizada Equipe de Programador Chefe Equipe Hierárquica
Plano de ProjetoOrganização do Pessoal
Estrutura de Equipe: Equipe Convencional
Composta pelo pessoal disponível É designado um gerente de desenvolvimento do
projeto O trabalho é dividido pelos componentes da equipe Cada um é responsável pelo projeto e implementação
da sua parte no trabalho Traz um certo sentimento de posse Tendência a esconder e mesmo não ver os próprios
erros
Plano de ProjetoOrganização do Pessoal
Estrutura de Equipe: Equipe Democrática descentralizada
Relações e comunicações informais entre os seus componentes
Não tem um líder permanente A liderança fica com o indivíduo que tiver maior
capacitação para resolver o problema em pauta Todos os programas são examinados por outros
programadores, além daquele que o escreveu
Plano de ProjetoOrganização do PessoalEstrutura de Equipe:
Equipe Programador Chefe
Pequeno número de componentes
Comunicações centralizadas no programador chefe
Decisões tomadas nos níveis mais elevados
O programador chefe tem que ser muito experiente e
capacitado para a função
Plano de ProjetoOrganização do Pessoal
Estrutura de Equipe: Equipe Hierárquica
Proposta de estrutura intermediária um líder de projeto dirige programadores
experientes cada um desses programadores dirige grupo
de programadores menos experientes comunicação descentralizada nos subgrupos
e centralizada nos níveis superiores o chefe de subgrupo transmite informações
para seu subgrupo (elemento de ligação com os outros subgrupos)
Plano de ProjetoPlano de ProjetoRecursosRecursos
Recursos de Hardware:
Hardware de desenvolvimento: usado durante o desenvolvimento (pode ser mais robusto)
Máquina alvo: hardware em que o sistema vai rodar depois de pronto
Outros elementos: hardware que interage com o novo sistema
Plano de ProjetoPlano de ProjetoRecursosRecursos
Recursos de Software:
Banco de Dados CASE
FERRAMENTAS DE:
Planejamento de Sistemas de Informação
Gerenciamento de Projetos
Apoio
Análise e Projeto
Programação
Integração e Teste
Construção de Protótipos e Simulação
Manutenção
Plano de ProjetoPlano de ProjetoRecursosRecursos
Recursos de Software:
Se o software existente cumprir os requisitos, adquira-o; em geral é mais barato.
Se o software existente exigir alguma modificação, cuidado!Pode ficar mais caro que desenvolver.
Comprar (reutilizar) X Desenvolver
Pontos Principais
Gerenciamento de Projeto está estreitamente relacionado à Qualidade de Processo
O Gerenciamento concentra-se em atividades que têm por objetivo assegurar que o software seja liberado no prazo, de acordo com o cronograma, e atenda aos requisitos das organizações envolvidas
Atividade principal - Planejamento
Projetos bem gerenciados algumas vezes falham; projetos mal gerenciados falham inevitavelmente.