metodologia e gerenciamento de projetos de software

Upload: murilopeterson

Post on 07-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    1/69

    1

    Gerenciamento de Projetopara Desenvolvimento de

    Sistema

    CICC

    Centro de Cooperao Internacional para Computao

    Metodologia deDesenvolvimento de Software

    SDEM90

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    2/69

    2

    O que MetodologiaConjunto sistematizado de tarefas necessrias

    para completar um projeto de desenvolvimento desoftware.

    formalizar os principais processos do projeto determinar todas as tarefas para cada processo

    organizar as tarefas considerando sequncia esimultaneidade

    organizar a estrutura de entradas e sadas dastarefas

    mapear um amplo gerenciamento e estrutura desuporte

    Problemas Tpicos Atraso no trmino do desenvolvimento

    Deteriorizao da qualidade Diminuio dos lucros

    Insatisfao dos clientes Dificuldades com terceirizaes

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    3/69

    3

    CausasFalha de Comunicao entre usurios e

    desenvolvedores (50%)

    Falta de clareza nas especificaes Estimativas erradas

    Condies e termos contratuais severos Diviso de trabalho entre usurios e

    desenvolvedores no definida Conhecimento insuficiente da complexidade

    da converso

    Causas (cont.)Problemas de desenvolvimento de software

    (18%)

    Falta de controle sobre as terceirizaes

    Consideraes insuficientes sobre a performance

    Impacto no uso de novos softwares e hardwares

    Outros (32%)

    Gerencimento deficiente da evoluo do trabalho Padres e Documentaes inconsistentes

    Problemas nas definies das condies finais dosprocessos

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    4/69

    4

    SDEM 90Software Development Engineering Methodology

    Objetivos

    Melhorar a comunicao entre usurio edesenvolvedor

    Sistematizar e padronizar os itens de trabalho

    Auxiliar o gerenciamento do projeto

    Resultados

    Tarefas so agrupadas pelo tipo de pessoaenvolvida: usurio, lder do projeto, engenheiros

    de hardware e software Usurio sente-se dono do sistema porque ele

    baseado nos requisitos do negcio e teve seuenvolvimento durante todo o desesenvolvimento

    Estrutura SDEM90

    Planejamento Projeto Construo Testes Implemento

    Operaes

    Negcio

    Especificao

    do Sistema

    Software

    Hardware

    Suporte ao

    Desenvolv.

    Gerenciam.

    Projeto

    FasesCategoria

    Negcio

    Computador

    Logsitca

    Projeto

    Interface

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    5/69

    5

    Focos das Categorias Negcio: atividades de negcio,operaes e

    estratgias da organizao, procedimentosdos funcionrios

    Interface: especificaes do sistemapermitindo sua informatizao

    Computador: hardware e software doequipamento a ser uilizado

    Logstica: assegurar que os itens bsicosque garantem um projeto eficiente foramprovidenciados

    Sub-Categorias Operaes do Negcio

    Especificao do Sistema Hardware

    Software Suporte ao Desenvolvimento

    Gerenciamento do Projeto

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    6/69

    6

    Operaes do Negcio Analisar situao do negcio

    Produzir requisitos do sistema e do usurio

    Preparar testes operacionais

    Produzir manual de operaes Gerenciar mudanas nas especificaes

    (Grande envolvimento dos usurios)

    Especificao do Sistema Funo do Sistema: projeto das

    especificaes funcionais, testes do sistema,manual do usurio

    Estrutura de Dados: modelo de dados,telas, relatrios, padronizao de nomes

    Performance: requisitos, estimativas

    Confiabilidade e Segurana: procedimentosde recuperao

    Operao e Manuteno: procedimentospara o ambiente de desenvolvimento eproduo, manual do operador

    Converso: migrao para novo sistema

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    7/69

    7

    Hardware Equipamento hospedeiro: configurao do

    processador, memria e dispositivos de E/S

    Mquinas clientes: configurao dasmquinas

    Rede: configurao da rede

    Facilidades: espao fsico, fornecimento de

    energia, ar-condicionado, equipamento deescritrio

    Software Aplicao: projeto, codificao e teste de

    programas, anlise de pacotes e conversode sistemas

    Dado: projeto das estruturas de dados edados para testes

    Sistema: sistema operacional, banco de

    dados, rede, etc Ambiente: arquivos fsicos, ambientes de

    testes

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    8/69

    8

    Suporte ao Desenvolvimento Padres: metodologia, padres para testes,

    revises e relatrios

    Tcnicas e Ferramentas: gerenciamento doprojeto e suas atividades

    Educao: treinamento do grupo dedesenvolvimento nos aspectos tcnicos e de

    negcio do projeto Configurao do Sistema: recursos de hw esw, documentao do sistema

    Materiais: suprimento de insumos

    Gerenciamento do Projeto Mtricas: medidas quantitativas e

    estatsticas para avaliao do progresso doprojeto

    Organizao e Funcionrios: definio detimes, responsabilidades e liderana

    Custo: estimativas, revises e

    gerenciamento do oramento

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    9/69

    9

    Fases da Metodologia Planejamento: Planejamento do Sistema,

    Anlises dos Sistemas

    Projeto: Interface do Usurio, Estrutura doSistema, Estrutura do Programa

    Contruo: Programao

    Testes: Programa, Integrao, Sistema

    Implementao: Testes Operacionais,Manuteno e Avaliao

    Planejamento Planejamento do Sistema: Atravs do

    planejamento estratgico de informtica daempresa e do planejamento de projetos produzido o Plano de Desenvolvimento deSistemas de Informao, envolvendo aanlise do negcio, a estratgia da empresa

    e a estratgia de processamento deinformaes

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    10/69

    10

    Planejamento (cont.) Anlise do Sistema:

    anlise do Sistema atual

    novos requisitos (usurios, funcionalidade,dados, performance, segurana)

    estrutura do projeto (hardware, software,padres, ferramentas, tcnicas, mtricas)

    de acordo com as estratgias da faseanterior

    Projeto Interface do Usurio:

    especificaes

    planejamento do teste operacional

    Estrutura do Sistema:

    processos lgicos, decomposio em programas gerao de arquivos fsicos

    procedimentos de recuperao, performance especificaes de testes (sistema, performance,mdulos)

    ambiente de desenvolvimento (software,hardware, ferramentas)

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    11/69

    11

    Projeto (cont.) Estrutura do Programa

    lgica do programa

    especificaes de testes de integrao ambiente de teste para o programa

    manual de converso

    Construo Programao:

    projeto, codificao e testes de mdulos instalar hardware, software, rede,

    mquinas clientes e facilidades para oambiente de produo

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    12/69

    12

    Testes Programa:

    integrao de mdulos

    validao de interfaces testes de operaes, converses e

    performance

    incio dos manuais do Usurio e do

    Operador preparao do ambiente de negcio

    Testes (cont.) Integrao

    integrao dos programas em processos validao das interfaces com outros

    sistemas

    verificao de aspectos operacionais gerao do ambiente de teste (dados para

    teste de performance) treinamento dos usurios

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    13/69

    13

    Testes (cont.) Sistema

    processos so integrados em sistemas

    testes de funcionalidade, performance,confiabilidade e operao

    testes de converso de dados

    criao de dados para testes operacionais

    treinamento dos usurios

    Implementao Teste Operacional

    certificao de todos os aspectos dosistema

    converso

    produo

    Manuteno e Avaliao

    monitoramento do sistema acerto de pequenos erros

    planejamento de novas funes avaliao do projeto e documentao

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    14/69

    14

    Decomposio e Integrao

    Planejamento Projeto Construo Testes Implementao

    Mundo

    Real

    Interface

    Computer

    Fases

    Categoria

    Corporao

    SP SA UI SS PS PG PT IT ST OT ME

    Negcio

    Sistema

    Processo

    Programa

    Mdulo

    Programa

    Processo

    Sistema

    Negcio

    Corporao

    Certificao

    Validao

    Verificao

    WBSWork Breakdown StructureRepresentao dos itens de trabalho:

    Processo

    Atividades

    Tarefas

    Ex: Definir os requisitos de dados

    Ex: Determinar E/S, Anlise de dados,Projetar Modelo de dados

    Ex: (Anlise de Dados) Verificar dadosrelevantes, agrupar dados, definir,revisar

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    15/69

    15

    Planejamento Projeto Construo Testes Implementao

    Fases

    Categoria

    Usurio SP SA UI SS PS PG PT IT ST OT ME

    Usurio final

    Proj. Aplic.

    Desenv. Sw

    Hardware

    Espec. ferr.

    Ger. Proj.

    Negcio

    Espec. Sist.

    Sofware

    Hardware

    Sup. Des.

    Ger. Proj.

    DesenvolvimentoUsurio final Usurio final

    Pessoas Envolvidas

    Benefcios SDEM90 Padronizao: lista detalhada e clara dos

    itens de trabalho, documentao Garantia da Qualidade: requisitos analisados

    e atendidos, testes a cada etapa, aspectosoperacionais analisados (performance,segurana, manuteno e operao)

    Facilidades na estimativa de custo, tempo ealocao de pessoal

    Facilidades na negociao: justificar custos,escopo, delimitar responsabilidades

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    16/69

    1

    Conceitos deGerenciamento de Projeto

    O que um projeto Conjunto de atividades inter-

    relacionadas Incio e fim pr-determinados Objetivo de gerar produtos com

    especificaes pr-definidas

    Conjunto de pequenos projetos

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    17/69

    2

    O que Gerenciamento de Projeto

    Planejar, organizar e gerenciar asatividades do projeto

    Destinar e controlar os recursos doprojeto para que ele atinja seusobjetivos: tempo, custo, resultados,qualidade e satisfao do cliente

    Gerenciar mudanas

    Poltica de Gerenciamento deProjeto da Fujitsu Responsabilidades do Gerente de

    Projeto Gerenciamento do Grupo Direcionamento e Organizao Desenvolvimento do Indivduo

    Prticas de Gerenciamento de Projeto Interface com o Usurio Gerenciamento de Risco

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    18/69

    3

    Poltica de Gerenciamento deProjeto da Fujitsu (cont.)

    Certificao Auditoria Gerenciamento dos fornecedores Revises, relatrios Testes

    Aderncia s politicas da Fujitsu

    Poltica de Gerenciamento deProjeto da Fujitsu (cont.) Planejar cuidadosamente com

    antecedncia Evitar a ocorrncia de problemas Manter a mxima organizao

    Minimizar chance de falhas Maximizar chance de sucesso

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    19/69

    4

    Papel do Gerente de Projeto Preparar um oramento e cronograna

    preliminares Ajudar na escolha dos membros do

    projeto Conhecer o cliente

    Providenciar os recursos Cuidar da rotina durante a execuo doprojeto

    Papel do Gerente de Projeto(cont.) Definir objetivos Obter recursos Denifir regras Estabelecer bom nvel de comunicao Manter uma viso ampla

    Garantir a execuo do projeto

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    20/69

    5

    Papel dos Membros doProjeto

    Conciliador Lder Criativo Crtico Extrovertido

    Implementador Construtor de times Finalizador

    Gerente de Projeto e seu time Reunies curtas Objetivos claros Promessas cumpridas Infra-estrutura de trabalho Boa comunicao

    Participao e Comprometimento

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    21/69

    6

    Funes do Gerente deProjeto

    Planejamento Organizao Alocao de pessoal Gerenciamento Controle

    Motivao

    Planejamento Definir as metas do projeto Verificar os objetivos do projeto Estabelecer pontos de controle,

    atividades, tarefas, relacionamentos eestimativas de tempo

    Preparar um cronograma geral doprojeto

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    22/69

    7

    Organizao Combinar recursos (humanos, materiais

    e financeiros) para alcanar as metas eobjetivos do projeto

    Delimitar responsabilidades Manter bom nvel de comunicao

    Considerar mudanas nas tarefas aolongo da durao do projeto

    Alocao de pessoal Conseguir pessoas adequadas Alto potencial tcnico Bom senso poltico Vivncia na resoluo de problemas Orientadas a objetivos e metas

    Auto-estima

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    23/69

    8

    Gerenciamento Facilitar cooperao entre os membros Generalista Conseguir entendimento a partir do

    desentendimento Incentivador

    Conciliador

    Controle Monitorar o progresso reduzindo a

    diferena entre o plano e a realidade Performance Custos Tempo

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    24/69

    9

    Motivao Propsito: importncia do trabalho Valorizao dos resultados obtidos Auto-estima Reconhecimento profissional

    Planejamento de ProjetoContrato Regras para solicitao e certificao

    do trabalho realizado Padres de qualidade Penalidades por atrasos Necessidades do cliente

    Objetivos do projeto Escopo do trabalho

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    25/69

    10

    Planejamento de ProjetoRelao das Necessidades

    Funcionalidade Performance Interfaces e integrao de sistemas Mtodos, tcnicas e ferramentas

    utilizadas

    Ambiente operacional Recuperao e segurana Manuteno e suporte

    Planejamento de ProjetoCritrio de Aceitao Objetivo e mensurvel Aceitao passo-a-passo Dados de entrada e de verificao Ambiente operacional

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    26/69

    11

    Planejamento de ProjetoEstimativa

    Pessoas envolvidas Pontos de controle, eventos e

    atividades Ordem de execuo Fluxo das tarefas

    Impacto das necessidades tcnicas edos recursos no fluxo das tarefas Relacionamento entre as tarefas

    Planejamento de ProjetoEstimativa (cont.) Fatores impactantes

    Caractersticas dos produtos

    Caractersticas das pessoas envolvidas

    Caractersticas do projeto Consideraes sobre os recursos

    envolvidos

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    27/69

    12

    Planejamento de ProjetoEstimativa de tempo

    Atravs de uma representao grfica dosrelacionamentos entre tarefas, atividades eeventos

    Identificao de tarefas crticas e tarefas quepodem ser atrasadas sem prejuzo

    Tarefas paralelas Viso da comunicao entre departamentos tempo=(otimista+ 4*provvel+pessimista)/6

    Planejamento de ProjetoEstimativa de custo Custos diretos Custos fixos Custos indiretos Salrios Custos variveis

    Varincia

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    28/69

    13

    Planejamento de Projeto

    Cronograma - Plano Principal Viso Geral Objetivos Estratgia Responsabilidades Cronogramas Recursos

    Pessoal Mtodos de avaliao Problemas potencias

    Planejamento de ProjetoOramento Top-down: Projeto geral, tarefas

    especficas Bottom-up: Tarefas elementares

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    29/69

    14

    Planejamento de Projeto

    Criando grupos de trabalho Selecionar membros certos Trabalhar em conjunto Cuidar da moral do grupo Manter objetivos claros Procurar desenvolvimento auto-

    regulado

    Procurar concordncia dosparticipantes

    Aceitar ajudas externas

    Planejamento de ProjetoCriando grupos de trabalho (cont.)

    Aprender com os erros Consultar sempre Encorajar discusses sobre princpios e

    prticas Ser realstico com prazos

    Praticar o que prega Enfrentar problemas polticos e

    organizacionais

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    30/69

    15

    Controle do Projeto Gerenciamento dos produtos do

    projeto: cdigo fonte, telas, ambiente desoftware, planos de desenvolvimento,especificaes, manuais, material deteste

    Gerenciamento de problemas:documentao, verificao e soluodo problema, negociao com o cliente

    Controle do Projeto (cont.) Alocao de tarefas Gerenciamento de risco: identificar

    fontes de riscos, determinar seusimpactos e verificar como reduz-los,desenvolver um plano de controle de

    riscos

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    31/69

    16

    Monitoramento do Projeto Avaliao do progresso Registro do tempo gasto Reunies para avaliao (tardes,

    publicao imediata das atas) Relatrios disponveis a todos os

    envolvidos Controle do oramento

    Monitoramento do Projeto

    Medidas de progressoFeedback efetivo de/para grupo do projeto

    (coleta de informaes semanalmente): Porcentagem de realizao de cada tarefa Status corrente de cada tarefa Estimativa para o trmino

    Diferenas entre datas de incio e trmino Razes para alteraes no cronograma Obstculos que possam impedir o

    cumprimento de alguma tarefa

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    32/69

    17

    Auditoria do Projeto Checar se a estrutura est correta Monitorar e controlar os procedimentos

    aplicados Verificar o cronograma geral e plano de

    controle

    Analisar as alocaes de pessoal Checar a contabilidade e oramento doprojeto

    Auditoria do Projeto(Relatrio) Introduo Status (Custo, Cronograma, Progresso,

    Qualidade) Status futuro Itens crticos

    Anlise de riscos Cuidados, limitaes e premissas

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    33/69

    18

    Controle de Qualidade

    Poltica da Fujitsu Qualidade esperada de nossos clientes Produtos e servios: atender suas

    necessidades, entregues no tempo, semcusto adicional

    Futuro da compania depende de todosdedicarem tempo para entender e satisfazer

    as necessidades dos nossos clientes Gerenciamento est totalmentecomprometido em providenciar o alcance decada meta de qualidade

    Controle de QualidadePadres de Qualidade Definio das necessidades do projeto,

    planejamento e desenvolvimento Documentao da estrutura de

    gerenciamento, time eresponsabilidades

    Procedimentos de gerenciamento daconfigurao (hardware e software) Procedimentos de checagem e

    inspeo do trabalho

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    34/69

    19

    Controle de QualidadePadres de Qualidade (cont.)

    Procedimentos de Verificao eValidao dos produtos

    Especificaes de testes para todos osprodutos

    Sistema de auditorias de projeto

    Manuteno e controle de todos osregistros do projeto

    Finalizao do Projeto Planejamento da transio Aceitao dos produtos do usurio Treinamento do usurio Definir um limite de corte Definir compromisso de suporte e

    manuteno

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    35/69

    20

    Finalizao do Projeto

    Critrios de Aceitao Requisitos do usurio Funcionalidade Performance Qualidade Uso Robustez e confiabilidade

    Segurana Facilidades de Instalao Facilidades de Manuteno

    Finalizao do ProjetoImplementao

    Estratgia de converso de dados Ferramentas de converso Treinamento Manuais de operao Manuteno e Suporte

    Comit de implementao Gerente de implementao Plano de implementao

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    36/69

    1

    Metodologias deGerenciamento de Projeto

    ProjetoConjunto de pessoas e recursosreunidos temporariamente paraalcanar objetivos especficos dentro deum limite de tempo e custo

    Sujeito a mudanas

    Restries de qualidade nico

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    37/69

    2

    Gerenciamento de Projeto Direcionamento e controle de pessoas

    alocadas de diversos departamentospara atingir os objetivos do projeto

    Organizar os dados do projeto Estabelecer um sistema de

    gerenciamento de dados que permita atomada de decises

    Utilizar metodologia

    Atributos do Gerente deProjeto Resoluo de problemas: analisar a

    situao e reconhecer o padro,realizar o trabalho para atingir osobjetivos desejados

    Energia e Iniciativa: enfrentar presso

    Lder confiante: delega baseado naconfiana no seu time Perspectiva: viso do projeto na

    organizao (big picture)

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    38/69

    3

    Atributos do Gerente deProjeto (cont.)

    Comunicao: todos os nveis, pares,gerentes departamentais,embaixadores do projeto

    Negociao: recursos dos gerentesdepartamentais

    Conhecimento Tecnolgico Geral

    Papel do Gerente de Projeto Motivar e Recompensar Manter perspectiva do time Encorajar decises em grupo Supervisionar o comportamento do

    grupo

    Assegurar que todos ganhem (win-winapproach)

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    39/69

    4

    Definio do Projeto

    Definir objetivos e escopo: cenrio donegcio e como os objetivos serosatisfeitos

    Desenvolver um modelo do projeto:restries de custo, tempo eperformance. Atravs dos objetivos aserem alcanados so definidos o custo

    e o perodo mximo Definir organizao do projeto:

    contratao de servios, definio dogerente

    Ciclo de vida de um projeto Formao e Planejamento:definio do projeto,

    escopo e objetivos, viabilidade, especificaesfuncionais, planejamento inicial, cronograma eestimativa

    Design e Estimativa: refinamento e detalhamentodo planejamento, cronograma e estimativa, alocaode recursos, plano principal, bases, aprovao

    Maturidade: estutura de comunicao edocumentao, controle, monitoramento, alocao

    de tarefas Avaliao e Trmino: trmino do trabalho, testes,

    verificao dos objetivos e benefcios, recompensa edissoluo do grupo, auditoria e revises,arquivamento

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    40/69

    5

    Planejamento do ProjetoPropsito:

    Facilitar, subsidiar e encorajar oalcance dos objetivos e metas doprojeto.

    Proper planning prevents poorperformance

    Planejamento do Projeto:Plano Inicial

    Definir metas do projeto: claras,mensurveis, viveis (tempo)

    Determinar e verificar objetivos doprojeto

    Estabelecer pontos de controle,

    atividades, tarefas, relacionamentos,estimativas Desenhar o cronograma do projeto

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    41/69

    6

    Planejamento do Projeto:

    Padres(Necessidades do Usurio)

    Especificao clara Uso de padres definidos Experincias dos projetos anteriores Recursos de qualidade

    Revises imparciais

    Planejamento do Projeto:Oramento

    Custos e Recursos planejados para umperodo especfico

    Requer muita ateno Comparao entre planejado e

    efetivamente gasto

    Funciona como um mecanismo decontrole

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    42/69

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    43/69

    8

    Planejamento do Projeto:Alocao de Pessoal - Dicas

    Visibilidade dos Gerentes Departamentais

    Valorizao da participao no projeto

    Valorizao do trabalho com o Gerente Toda promessa deve ser documentada

    Incentive conflitos no incio do projeto Reunio com os Gerentes superiores (nivelar

    polticas de recompensa, subordinao erelacionamentos paralelos)

    Planejamento do Projeto:Alocao de Recursos Identificar o que deve ser alcanado Identificar as habilidades necessrias Identificar as pessoas disponveis Analisar a capacidade destas pessoas Identificar o treinamento necessrio

    Negociar com os provedores derecursos

    Providenciar equipamentos, espaofsico, softwares, telefone, etc..

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    44/69

    9

    Planejamento do Projeto:Treinamento

    Habilidades necessrias para o projeto Tcnicas de gerenciamento do projeto Concincia da impostncia estratgica

    do projeto Trabalho dentro de um time

    Estimativa do Projeto Quanto menores e mais especficas

    forem as tarefas, mais fceis sero dese estimar

    Quanto maior o risco do projeto, maiora possibilidade de erros na estimativa

    Estimativa do time Assuma que cada tarefa ser realizada

    por uma pessoa

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    45/69

    10

    Estimativa do ProjetoTipos de Recursos

    Pessoas Infra-estrutura Dinheiro Hardware e Software: manter a

    integridade durante o projeto

    Recursos: servios, horas deequipamentos, computadores

    Estimativa do ProjetoMtodos para estimativa Contagem de passos: baseado no

    nmero de funes: dados, processos Exponencial: baseado no tamanho do

    produto do projeto. Ex: COCOMO(Constructive,Cost Model) - nmero de

    dados Parametrizado: baseado em custosbsicos: itens, comisso vendedor

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    46/69

    11

    Estimativa do ProjetoFatores a considerar

    Inflao Mudanas diferentes nos itens de custo Desperdcio Reposio de pessoal Contingncias para dificuldades no

    esperadas

    Controle de Mudana Associar nmero ao pedido de

    mudana Avaliao do impacto Estimar o custo da implementao ou

    indicar uma pessoa para avaliar o custo

    Aprovar a mudana Divulgar aos envolvidos Documentar

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    47/69

    12

    Relatrios

    Coerentes com o plano Critrios definidos Ferramentas simples e atraentes (menos de

    uma hora) Intervalos pr-definidos (tamanho, estgio,

    risco) Discutidos em reunies: identificao de

    problemas e alocao de pessoas pararesolv-los (no tentar resolv-lo na reunio) Reunies de problemas na sexta-feira e de

    progressos na segunda-feira

    Controle de Qualidade Planejamento de Qualidade: especificarcomo a qualidade ser alcanada,quais procedimentos da empresa quesero eficazes, garantias do Gerente edo time

    Assegurar a Qualidade: medidaspreventivas para evitar problemas:

    padres, experincia, recursosqualificados Controle da Qualidade: diagnosticar e

    recuperar

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    48/69

    13

    Implementao Habilidade para coordenar e organizar Conscientizar o cliente do seu papel

    nesta fase (aceitao) Eleger um comit de implementao Gerente de implementao

    Implementao

    Antecipando Problemas Os objetivos e restries vistos pelo time do

    projeto so os mesmos vistos pelo cliente? O plano de implementao atenta para as

    funes e fatores crticos do projeto

    Os recursos para esta fase estoprovidenciados?

    Os processos vitais esto protegidos contraperigos, sabotagens e falhas?

    Os padres operacionais esto definidos?

    As possveis dificuldades entre funes,departamentos esto resolvidas?

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    49/69

    14

    Implementao - Plano Planeje a transio Certifique-se que o usurio aceitou o

    produto Treine o usurio na operao do

    produto (refinamento e manuteno):curso, cbt, vdeo, etc..

    Defina o limite do projeto Determine compromisso de suporte e

    manuteno

    Implementao - PlanoPara cada tarefa:

    Descrio detalhada Responsabilidades Procedimentos e responsabilidades de

    teste

    Equipamento necessrio Software necessrio

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    50/69

    15

    ImplementaoMonitoramento

    Checagem do progresso Contabilidade dos gastos Performance Reaes do cliente

    Comit de Implementao Gerente de Projeto, Representante da

    Empresa, Cliente Trabalhar em equipe Delegar responsabilidades Cronograma

    Acompanhamento

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    51/69

    1

    Gerenciamento de Risco

    RiscoExposio ou chance de prejuzo ou

    perda

    Risco Especulativo: ganho ou perda Risco Puro: perda

    Depende do ponto de vista Viso construtiva

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    52/69

    2

    Gerenciamento de Risco Identificar os eventos que podem ocorrer,

    analisar seus impactos e planejar comocontrol-los de modo a minimizar amagnitude da perda

    Responsabilidade de todo o time

    Benefcios:

    Pensamento sistematizado Identificao do problema

    Planos de Contingncia Exposio do Projeto a riscos

    Custos de implementao

    Dinheiro, Tempo e Envolvimento doGerente

    XSatisfao, Reputao e Prestgio da

    Empresa

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    53/69

    3

    Tipos de RiscoDesenvolvimento de Aplicaes

    Projeto cancelado Atraso Oramento Funcionalidade Corresponder s expectativas do

    cliente Dificuldade

    Tipos de Risco Pessoal: doena, insatisfao,

    motivao, treinamento Tecnolgico: avano na indstria de

    software e hardware, maturidade,integrao com outros sistemas, falta

    de conhecimento Mercado: Constantes mudanastecnolgicas considerando o tempo dedesenvolvimento do sistema

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    54/69

    4

    Componentes do Risco Ameaa: causas Recursos: bens, pessoas afetadas Fatores modificadores: fatores que

    variam a probabilidade da ameaa setornar realidade

    Consequncias: modo e exteno dosefeitos sobre os recursos

    Fatores modificadoresProjetos de Desenvolvimento de Software Fatores Estratgicos e de Negcio Tamanho e Escopo do Projeto Organizao Usurios Planejamento

    Tcnicas de Desenvolvimento Implementao Operao e Suporte

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    55/69

    5

    Grau de ImpactoSeveridade X Frequncia

    Impacto

    Frequncia

    Grande

    Mdio

    Pequeno

    Menor

    (Severidade)

    Gerenciamento de Risco Avaliao do Risco

    Identificao: descobrir e reconhecer ameaas

    Anlise: identificar a severidade do risco

    Qualificao: priorizar riscos

    Controle do Risco

    Planejamento da Contingncia: aes a seremtomadas Controle: identificar fatores para evitar riscos

    Monitoramento: resoluo

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    56/69

    6

    Identificao do Risco O que pode dar errado? O que acontecer se ? Identificar os possveis acontecimentos

    no desenvolvimento ou implementaodo Sistema que impeam ocumprimento dos objetivos do cliente

    Riscos remotos e bvios

    Identificao do Risco (cont.) Levantamento de informaes:

    conhecimento, dados histricos,benchmark (simulao, prototipao)

    Check lists: levantar questes quepossam ser utilizadas na identificao

    do risco Categorizao: conhecidos, previsveise no previsveis

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    57/69

    7

    Anlise do Risco Quo srio ele pode ser? Qual a probabilidade de ocorrncia? Estimativa:

    Determinar Variveis ligadas a ocorrncia Identificar Consequncias do evento

    Determinar Magnitude das consequncias Eliminar Surpresas: probabilidade deocorrer

    Qualificao (Priorizao) Criao do nvel de referncia do risco:

    classificar se o risco aceitvel Determinar o nvel de referncia do

    risco do Sistema: nvel do risco emrelao ao projeto e a organizao

    Comparar o risco calculado com o riscodo sistema: decidir se o sistema deveparar, ser revisto, etc..

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    58/69

    8

    Planos de ContingnciaAtividades: pr-ocorrncia (Preveno) ocorrncia (Emergncia): minimizar a

    durao do evento, maximizando o quepuder ser salvo

    ps-ocorrncia (Recuperao):minimizar a interrupo das atividades

    Planos de Contingncia(cont.) Plano de Emergncia: Uma vez iniciada

    a emergncia tarde para planejar atomada de deciso

    Plano de Recuperao: Desenvolvidoatravs de uma reunio com os

    responsveis dos departamentos Componentes comuns: informao,responsabilidades, prtica (simulao)

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    59/69

    9

    Controle do Risco Reduo do risco: reduzir a

    probabilidade de ocorrncia do erro oude suas consequncias. Reduz-lo a umnvel aceitvel

    Transferncia do risco; reduzir oimpacto do risco, realocando o mesmoentre os componentes do projeto

    Monitoramento do Risco Atividade realizada independentemente

    da preveno Coleta de informaes Anlise da origem e ocorrncia do risco

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    60/69

    10

    Vantagens Adicionais Gerenciamento de Risco: Melhorar a

    capacidade de estimativa de trabalhodo projeto

    Prototipao: reduzir o risco do produtono atender s expectativas do cliente

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    61/69

    1

    Tcnicas para estimar Projetos

    Function Point Analysis - FPA

    (A. J. Albrecht)

    Referncia: Controlling Software Projects,

    Tom Demarco, Yourdon Press Computing

    Services, 1982

    Baseia-se nas informaes do Modelo de

    Entidade, Diagrama de Fluxo de Dados e

    Dicionrio de Dados

    O tamanho do sistema medido em termos das

    suas funes contabilizando o nmero de

    entradas, sadas, consultas, arquivos e

    interfaces

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    62/69

    2

    FPA

    Function Points= Unadjusted Function

    Points * Complexity Adjustment

    Complexity Adjustment = 0.65 + (Degree of

    Influence)

    Benefcios: os dados podem ser coletados

    no incio do projeto e no requer muito

    tempo para ser aplicado

    Unadjusted Function Points

    Complexidade Total

    Si mpl e A ve ra ge C om pl ex

    External

    Input

    x 3 = x 4= x 6=

    External

    Output

    x 4= x 5= x 7 =

    Logical

    Internal

    x 7= x 10= x 15 =

    External

    Interface

    x 5= x 7= x 10=

    External

    Enquiry

    x 3= x 4= x 6 =

    Total Unadjusted Function Points=

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    63/69

    3

    Degree of InfluenceCaracterstica Grau de influncia

    Data comunications

    Distributed functions

    Performance

    Heavily used configuration usage

    Transaction rate

    Online data entry

    End user efficiency

    Online update

    Complex processing

    Reusability

    Installation ease

    Operational ease

    Multiple sitesFacilitate change

    Total

    Funes Bsicas

    External Input

    External Output

    Logical Internal Files

    External Interface Files

    External Enquiry

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    64/69

    4

    Complexidade da Aplicao

    Data Comunications

    Distributed Functions

    Performance

    Heavily Used Configuration Usage

    Transaction Rate

    Online Data Entry

    End User Efficiency

    Complexidade da Aplicao(cont.)

    Online Update

    Complex Processing

    Reusability

    Installation Ease

    Operational Ease

    Multiple Sites

    Facilitate Change

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    65/69

    5

    Fatores Adicionais

    Other Applications

    Security, privacy, auditability

    User training needs

    Use by third parties

    Documentation

    Others ?

    Constructive Cost Model -

    COCOMOBarry W. Boehm

    Referncia: Software Engineering

    Economics, Barry W. Boehm, Prentice

    Hall, 1981, 1990

    Baseia-se no relacionamento entre os

    recursos e o esforo de desenvolvimento do

    projeto

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    66/69

    6

    COCOMO

    Identificar as funes do projeto

    Para cada funo, estimar as linhas de

    cdigo

    Calcular o total de linhas de cdigo do

    projeto

    Decidir o modo de desenvolvimento:Organic, Semi-detached, Embedded

    Calcular homens-ms usando frmulas

    COCOMO (cont.)

    Ajustar a estimativa pelos atributos

    relacionados ao Produto, Computador,

    Pessoal e Projeto

    Calcular estimativa de tempo usando

    frmulas

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    67/69

    7

    AtributosProduto

    RELY: Required software reliability

    DATA: Database size

    CPLX: Product complexity

    Computador

    TIME: Execution time constraint

    STOR: Main Storage constraint

    VIRT: Virtual machine volability

    TURN: Computer turnaround time

    Atributos (cont.)

    Pessoal

    ACAP: Analyst capability

    AEXP: Application experience

    PCAP: Programming experience

    VEXP: Virtual machine experience

    LEXP: Programmimg language experience

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    68/69

    8

    Atributos (cont.)

    Projeto

    MODL: Use of modern programming

    practices

    TOOL: Use of software tools

    SCED: Required development schedule

    Classificao dos Atributos: Very Low, Low, Nominal, High, Very High

    Before You Leap - BYL

    Baseia-se nas estimativas FPA e COCOMO

    Estimativa de trabalho

    Tempo necessrio

    Nmero de instrues

    Nmero mdio e custo do pessoal

  • 8/3/2019 Metodologia e Gerenciamento de Projetos de Software

    69/69

    Utilizao Fornecer dados FPA

    Escolher o compilador a ser utilizado

    Especificar tipo de desenvolvimento,

    nmero de linhas de cdigo (novas e

    adaptadas, convertidas)

    Fornecer dados COCOMO (atributos do

    produto, computador, pessoal e projeto)

    Relatrios: Custos, Linhas de cdigo,

    Esforos por fase