Planejamento de Projeto

46
 Gerenciamento e Planejamento de Software

description

Planejamento de projeto

Transcript of Planejamento de Projeto

  • Gerenciamento e Planejamento de Software

  • Entendimento Modificao Revalidao

    Projeto Codificao

    Teste

    Anlise de SistemaPlanejamento

    Anlise de Requisitos

    Processo de Desenvolvimento de Software

    DEFINIO

    CONSTRUO

    MANUTENO

  • Processo de Desenvolvimento de Software

    Gerncia e Planejamento

    Entendimento Modificao Revalidao

    Anlise de SistemaPlanejamento

    Anlise de Requisitos

    DEFINIO

    Projeto Codificao

    Teste

    MANUTENOCONSTRUO

    Envolve planejamento, monitoramento e controle

  • Mtodos

    PessoasPolticas

    Ferramentas

    Importncia do Planejamento no Processo de Desenvolvimento

    Requisitos De SoftwareProduto

    Cumprimento De Prazo,Boa Previso De Custo,Boa Produtividade

    Responsabilidades

    Gerncia Eficaz Controle das Atividades

  • Por que Planejar?

    Criar propostas que sejam econmicas e realizadas com recursos financeiros pr-estabelecidos

    Que estejam de acordo com as necessidades requisitadas

    Representem especificamente o que se pode fazer

  • Gerncia de Projeto de Software Atividade guarda chuva - abrange todo o processo de

    desenvolvimento

    possibilita compreender o escopo do trabalho, riscos, recursos exigidos, tarefas a executar, programao(cronograma) a ser seguida, esforo despendido

    Enfoque principal: (4 Ps) Produto , Pessoa , Processo e Projeto

    atividade fundamental: planejamento

  • o tempo o bem mais valioso que est disponvel a um Engenheiro de Software.

    Se houver tempo disponvel, um problema pode ser adequadamente analisado, uma soluo pode ser compreensivamente projetada, o cdigo fonte cuidadosamente implementado e testado

    Nunca h tempo suficiente ...

  • Antes de comear um trabalho, necessrio despender tempo para organizar as aes.

    O planejamento de projeto de software obriga gerentes e profissionais a despender esse tempo

  • Preocupaes da Gerncia de Projeto

    qualidade do produto

    avaliao dos riscos

    medidas

    estimativa de custo

    cronograma do projeto

    equipe

    outros recursos

    monitoramento do projeto

  • Preocupaes da gerncia - os 4Ps

    Produto - software a ser construdo (objetivo, escopo, solues).

    Pessoa - elemento mais importante de um projeto bem sucedido (competncias).

    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 oramentos

    domnio da aplicao

    tecnologia a ser implantada

    restries do sistema

    requisitos do usurio

    recursos disponveis

  • Projetos de software

    Porque os projetos falham ?

    Data de entrega estabelecida no realstica

    Mudanas nos requisitos do cliente

    Esforo necessrio subestimado

    Riscos previsveis e/ou imprevisveis

    Dificuldades tcnicas

    Falta de comunicao entre a equipe de projeto

    Falha no gerenciamento do projeto

  • Tarefas do Planejamento

    determinar o alcance do trabalho a ser realizado: funo, desempenho, interface e segurana

    estimar recursos necessrios ao desenvolvimento do software: recursos humanos, de hardware e de software

    identificar tarefas a serem efetuadas elaborar cronogramas estimar esforo (custo) despendido

  • Atividades do Planejamento

    Combina

    2 Tarefas

    Pesquisa

    Estimativa

    define o alcance do software; utiliza a especificao 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 tcnico e ao cliente de software

    definir os riscos e sugerir tcnicas para evit-los

    definir custos e prazos para revises gerenciais

    oferecer uma abordagem geral ao desenvolvimento de software para todas as pessoas envolvidas no projeto

    definir como a qualidade ser garantida e mudanas gerenciadas

  • Plano de Projeto de Software

    inicie com uma declarao explcita do trabalho a ser feito e verifique se correspondeao que o cliente espera

    em projetos mdios e grandes, criam-se subprojetos menorese estima-os separadamente

    baseie suas estimativas em dados histricosde projetos semelhantes

  • Plano de Projeto de Software

    registre suas estimativas para compararcom os resultados reaisno final do projeto

    planejamento continuadurante desenvolvimento e manuteno

    planejamento inicial no suficiente

    planejamento detalhado mais cedo possvel (s possvel aps a especificao de requisitos)

  • O que um Plano?

    documento que define os recursosdisponveis para o projeto, o trabalhoque dever ser realizado e um cronogramapara a realizao desse trabalho

    apresenta estimativasde tempo e recursos exigidos e um contexto para gerenciamento de controle e revisopara cada tarefa maior

    serve de benchmarkpara comparar com projetos anteriores, quando documentado apropriadamente

  • Esboo do PlanoCapa

    Resumo

    I. ndice

    II. Introduo1. Motivao2. Objetivos3. Escopo4. Pblico alvo5. Restries e riscos

    III. Descrio da Arquitetura

    IV. Recursos do Projeto1. Pessoal2. Hardware 3. Software

    V. Estimativas de custo de desenvolvimento

    VI. Cronograma1. Rede de tarefas, 2. grficos de Grantt 3. tabela de recursos X tarefas

    VII. Concluses em processo

  • Plano de Projeto-IntroduoEnfoque:

    I- PRODUTOEstabelecer o escopo do software

    assegurar que o produto desenvolvido o produto solicitado

    Escopo

    contexto (negcio, restries, etc)

    informao objetiva (entrada, sada)

    funo e desempenho

    Decomposio: estabelecer o particionamento funcion al (ncleo da anlise de requisitos)

  • Plano de Projeto-RecursosIV. RECURSOS DO PROJETO

    1. Pessoal

    2. Hardware

    3. Software

    Especificar:habilidades exigidasdisponibilidadedurao das tarefasdata de incio

    Especificar:descriodisponibilidadedurao do usodata de entrega

    Pessoas

    Reutilizao de Software

    Ferramentas de Hardware/Software

    Menor customenor riscocuidado com mudanas

  • Plano de Projeto-RecursosPessoa: motivao, habilidades, conhecimento ...

    Projetos Pequenos: uma nica pessoa

    Projetos Grandes: participao vrias pessoas atravs do ciclo de vida

  • Plano de Projeto-RecursosRecursos Humanos:

    Mito: Se sairmos fora do cronograma, adicionamos

    mais programadores e recuperamos o atraso.

    Isso pode fazer com que o cronograma atrase ainda ma is!

    Motivo: a comunicao absolutamente essencialpara o desenvolvimento do software.Todo novo caminho de comunicao exigeesforo adicional e portanto, tempo adicional.

  • Plano de Projeto-RecursosRecursos Humanos:

    Anlise derequisitos

    baixo

    alto

    Grau departicipaono projeto

    Planejamento Projetopreliminar

    Pessoaltcnico senior

    Pessoaltcnico junior

    Administrador

    Projetodetalhado

    CodificaoTeste deunidade

    Administrador

    Pessoal Tcnico Senior

    Pessoal Tcnico Jnior

  • Plano de Projeto-Organizao do Pessoal

    Estrutura de Equipe:

    Deve ser considerado o fator humano em seus aspectos psicolgicos, individuais e grupais e o reflexo deles no desempenho da equipe

    Principais estruturas de equipe: Equipe Convencional Equipe Democrtica descentralizada Equipe de Programador Chefe Equipe Hierrquica

  • Plano de Projeto-Organizao do Pessoal

    Estrutura de Equipe:

    Equipe Convencional Composta pelo pessoal disponvel

    designado um gerente de desenvolvimento do projeto

    O trabalho dividido pelos componentes da equipe

    Cada um responsvel pelo projeto e implementao da sua parte no trabalho

    Traz um certo sentimento de posse Tendncia a esconder e mesmo no ver os prprios erros

  • Plano de Projeto-Organizao do Pessoal

    Estrutura de Equipe:

    Equipe Democrtica descentralizada Relaes e comunicaes informais entre os seus componentes

    No tem um lder permanente

    A liderana fica com o indivduo que tiver maior capacitao para resolver o problema em pauta

    Todos os programas so examinados por outros programadores, alm daquele que o escreveu

  • Plano de Projeto-Organizao do Pessoal

    Estrutura de Equipe:

    Equipe Programador Chefe

    Pequeno nmero de componentes

    Comunicaes centralizadas no programador chefe

    Decises tomadas nos nveis mais elevados

    O programador chefe tem que ser muito experiente e capacitado para a funo

  • Plano de Projeto-Organizao do Pessoal

    Estrutura de Equipe:

    Equipe Hierrquica Proposta de estrutura intermediria

    um lder de projeto dirige programadores experientes

    cada um desses programadores dirige grupo de programadores menos experientes

    comunicao descentralizada nos subgrupos e centralizada nos nveis superiores

    o chefe de subgrupo transmite informaes para seu subgrupo (elemento de ligao com os outros subgrupos)

  • Exerccio

    Pessoas:

    Em grupo elaborar resumo de aptides pessoais

    Definir o papel de cada integrante do grupo baseado nas aptides listadas anteriormente

    Tempo: 10 minutos

  • Plano de Projeto-Recursos

    Recursos de Hardware:

    Hardware de desenvolvimento: usado durante o desenvolvimento (pode ser mais robusto)

    Mquina alvo: hardware em que o sistema vai rodar depois de pronto

    Outros elementos: hardware que interage com o novo sistema

  • Exerccio

    Recursos de Hardware:

    Definir os recursos de Hardware que ser utilizado para o desenvolvimento do projeto de controle de conferncias Desenvolvimento Teste Mquina alvo Outros elementos

    Tempo: 5 minutos

  • Plano de Projeto-RecursosRecursos de Software:

    Banco de Dados CASE

    FERRAMENTAS DE:

    Planejamento de Sistemas de Informao

    Gerenciamento de Projetos

    Apoio

    Anlise e Projeto

    Programao

    Integrao e Teste

    Construo de Prottipos e Simulao

    Manutano

  • Plano de Projeto-Recursos

    Recursos de Software:

    Se o software existente cumprir os requisitos, adquira-o; em geral mais barato.

    Se o software existente exigir alguma modificao, cuidado!Pode ficar mais caro que desenvolver.

    Comprar (reutilizar) X Desenvolver

  • Exerccio

    Definir recursos de software utilizados para o sistema de controle de conferncias

    O que se vai comprar / sw livre

    O que se vai desenvolver

    Software de apoio (ferramentas desenvolvimento, gerenciamento, etc..)

    Tempo: 5 minutos

  • Tarefas

    Dividir para conquistar

    Normalmente atribuda a uma pessoa

    Maior facilidade para estimativas

    Pode-se associar especialidades necessrias para sua realizao

    Podem gerar (parte de) resultados desejveis (milestones)

  • Exemplos de Tarefas

    Entrevistar Clientes

    Reunies

    Projetar Interfaces

    Criar Relatrio

    Atualizar o Site

    Testar Classe

  • Exerccio

    Com o objetivo de elaborar o site do projeto de controle de conferncias pede-se:

    Quais as tarefas principais Estimativa de tempo Definir os milestones de cada tarefa

    (ponto final de uma atividade marco no cronograma)

    Definir os deliverables (resultado a ser entregue ao cliente)

    Tempo: 15 minutos

  • Cronograma do Projeto

    Decompor o projeto em tarefas e estimar o tempo e recursos necessrios para completar cada tarefa

    Organizar as tarefas concorrentemente de forma a obter maior eficincia da fora de trabalho

    Minimizar as dependncias entre tarefas para evitar atrasos

  • Cronograma do Projeto

    Tabela de Tarefas

    Tarefas Durao (dias) Dependncias

    T1 8 ----

    T2 10 ----

    T3 5 T1

    T4 8 T2 e T3

  • Cronograma do Projeto

    Rede de Atividade

  • Tempo de Desenvolvimento

    Pode ser extrado da Rede de Atividades

    Determinao do Caminho Crtico (caminho que leva mais tempo para ser concludo)

    Gerente deve dar especial ateno ao Caminho Crtico

    crucial ter folgas no Caminho Crtico

  • Custo do Projeto

    Recursos Humanos (R$ / Hora)

    Instalaes (fone, luz, etc)

    Reunies (tempo, pessoa, etc)

    Material (escritrio, informtica, etc)

  • Exerccio

    Fazer o planejamento do sistema de hotel onde conste:

    Tarefas principais (tempo, milestones) Recursos (Humanos, Hw e Sw) Alocao de Recursos s tarefas Previso de Compras (Hw, Sw, materiais) Caminho Crtico

    Tempo: 10/10/2011 (Turma B) ou

    19/10/2011 (Turma A)

  • Pontos-Chaves

    Gerenciamento de Projeto est estreitamente relacionado Qualidade de Processo

    O Gerenciamento concentra-se em atividades que tm por objetivo assegurar que o software seja liberado no prazo, de acordo com o cronograma, e atenda aos requisitos das organizaes envolvidas

    Atividade principal - Planejamento

    Projetos bem gerenciados algumas vezes falham; projetos mal gerenciados falham inevitavelmente.

  • Planejamento e Gerenciamento

    O que e como faremos? Quem far o qu? Quanto tempo levaremos? O que poder d errado (riscos)? O que usaremos? Quanto custar? Como estamos indo? Estamos documentando (tempo, etc.)?