metodologia e gerenciamento de projetos de software
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