uenp - falm análise e projeto de sistemas iii prof. josé reinaldo merlin
TRANSCRIPT
UENP - FALMAnálise e Projeto de Sistemas III
Prof. José Reinaldo Merlin
Ementa
Planejamento de Projeto de Software Garantia de Qualidade de Software Testes de Software Manutenção Reengenharia e Gerenciamento de
Configuração
Livro texto:
Engenharia de Software – Ian Sommerville
1ª Prova: 28/03/2008 Capítulos 4 e 24 Norma ISO 9126 e CMMI
2ª Prova: 06/06/2008 Teste de software Manutenção e reengenharia Gerenciamento de configuração
Capítulo 4 – Gerenciamento de Projetos
Sumário: Atividades de Gerenciamento Planejamento de Projeto Programação de Projeto Gerenciamento de Riscos
Ponto de vista da disciplina:
Projetos médios e grandes
Vistos sob a óptica gerencial
Foco na qualidade do software (produto e processo)
Introdução
Crise do software (década de 60 e 70): evidenciou necessidade de gerenciamento Custo – os projetos custavam mais do que o previsto Prazo – os projetos duravam mais do que o previsto Qualidade – muito abaixo do esperado
Razão do fracasso: mau gerenciamento Problemas foram resolvidos?
16,2% dos projetos foram entregues no prazo
(Chaos Report, 2004) Os problemas continuam presentes no
desenvolvimento de software
Introdução
Papel do gerente:
Planejar e programar o desenvolvimento Supervisionar o trabalho
Introdução
O que é um projeto de software? Empreendimento temporário que resulta no produto de
software Dificuldades no gerenciamento de projetos de
software: O produto é intangível
Difícil “ver” (medir, quantificar) o progresso Não há processo de software padrão
ES é uma disciplina “nova” Grandes projetos de software são, geralmente,
projetos únicos
Atividades de Gerenciamento
O trabalho do gerente varia de acordo com a organização e o produto a ser desenvolvido
No entanto, algumas atividades são básicas: Elaboração de propostas Planejamento e programação de projetos Custo do projeto Monitoramento e revisões Seleção e avaliação de pessoal Elaboração de relatórios e apresentações
Planejamento de projeto
Gerenciamento eficaz depende de um bom planejamento
Início do planejamento: avaliação das restrições Prazo, pessoal disponível, orçamento, outros
Uma programação é traçada e o projeto começa
Periodicamente o andamento é monitorado e as discrepâncias são examinadas e corrigidas
Planejamento de projeto
Plano de projeto Documento resultado do planejamento Deve conter:
Introdução Organização: equipe e o papel de cada um Análise de riscos Requisitos de hardware e software Estrutura analítica: atividades, marcos e produtos Programação: dependências, tempo, alocação
de pessoas Mecanismos de monitoramento
Planejamento de projeto
Marcos e produtos a serem entregues: Marco é um ponto final em uma atividade do
processo Produto a ser entregue: resultado do projeto
entregue ao cliente ao final de uma fase importante (especificação, projeto)
Produto é um marco Um marco nem sempre é um produto (pode
ser resultado interno do projeto que pode ser utilizado para verificação do andamento sem ser entregue ao cliente)
Planejamento de projeto
Marcos e produtos a serem entregues:
Evaluationreport
Prototypedevelopment
Requirementsdefinition
Requirementsanalysis
Feasibilityreport
Feasibilitystudy
Architecturaldesign
Designstudy
Requirementsspecification
Requirementsspecification
ACTIVITIES
MILESTONES
Programação do projeto
Os gerentes estimam o tempo e os recursos para completar as atividades e os organizam em uma seqüência coerente.
Programação do projeto: Dividir o trabalho total em atividades distintas Avaliar o tempo necessário para completar
essas atividades
Programação do projeto
Os gerentes devem ser pessimistas ao fazerem estimativas
Programação geralmente é apresentada em um conjunto de diagramas (Microsoft Project, jxProject)
Estimate resourcesfor activities
Identify activitydependencies
Identifyactivities
Allocate peopleto activities
Create projectcharts
Softwarerequirements
Activity chartsand bar charts
Programação do projeto
Diagramas de barras e redes de atividades: Notações gráficas utilizadas para ilustrar a
programação do projeto Diagrama de barras: quem é o responsável e
quando é o início e término Redes de atividades: mostram as
dependências entre as atividades
Programação do projeto
Diagramas de barras e redes de atividades:A tarefa 3
depende da conclusão da
tarefa
Programação do ProjetoRede de
atividades
Programação do Projeto
flexibilidade
Programação do Projeto Alocação de pessoas às
tarefas
Programação do ProjetoTarefas e
dependências
Gerenciamento de riscos
Identificar os riscos e traçar planos para minimizar seus efeitos
Risco: probabilidade de que um alguma circunstância adversa venha a ocorrer
Riscos relacionados ao projeto: Programação e recursos
Riscos relacionados ao produto: Qualidade e desempenho
Riscos para os negócios: Afetam a organização
Gerenciamento de riscos
Por que é importante? Incertezas inerentes a maioria dos projetos Requisitos mal definidos Dificuldade em se estimar os prazos
Processo de gerenciamento de riscos Identificação de riscos Análise de riscos Planejamento de riscos Monitoramento de riscos
Para finalizar...
Com relação ao planejamento [de projeto] de software, a definição das atividades do negócio do cliente que serão suportadas pelo software e os dados quantitativos, tais como o tempo de resposta e o número de usuários, deve ocorrer:a) na estimativa do custob) no estabelecimento do escopo a ser realizadoc) no estabelecimento do cronogramad) na estimativa dos recursos necessáriose) no planejamento organizacional