Engenharia de Software II



Documentos relacionados
Plano de projeto. Cronograma e Controle

Gerência e Planejamento de Projeto. SCE Engenharia de Software Profs. José Carlos Maldonado e Elisa Yumi Nakagawa 2 o semestre de 2002

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

Engenharia de Software II

Engenharia de Software II

Prof. Celia Corigliano. Unidade II GERENCIAMENTO DE PROJETOS

Gerência de Projetos

1) Objetivos. 3) Estabelecer o Escopo do Software. 2) Principais Atividades

ENGENHARIA DE SOFTWARE I

Redução no custo e prazo de desenvolvimento de novos produtos; Aumento no tempo de vida dos novos produtos; Aumento de vendas e receita; Aumento do

Engenharia de Software II

Gerenciamento de Projetos

Detalhamento da Fase de Planejamento e Programação de Projeto. Gerenciamento de Tempo

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Projectos de Software

Gerenciamento de Projetos

Ciência da Computação ENGENHARIA DE SOFTWARE. Planejamento e Gerenciamento

PMBOK 4ª Edição III. O padrão de gerenciamento de projetos de um projeto

Engenharia e Tecnologia Espaciais ETE Engenharia e Gerenciamento de Sistemas Espaciais

Engenharia de Software II

Gerenciamento de Projeto de Software

Universidade de Brasília Faculdade de Ciência da Informação Disciplina: Projeto de Implementação de Sistemas Arquivísticos Profa.

O padrão de gerenciamento de projetos

Modelos de Maturidade. Porque estudar um Modelo de Maturidade? Descrevem as características de processos efetivos;

1 Inicie um novo. Guia de Referência Rápida de Gerenciamento de Projeto para o Project projeto

Controle ou Acompanhamento Estratégico

FAQ EVA Análise de valor agregado EVA Análise de Valor Agregado FAQ

Gerenciamento de Projetos

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Método do Caminho Crítico PERT /CPM. Prof. Marcio Cardoso Machado

GTI Governança de TI

Gerenciamento de Custos do Projeto Orçamentação do Projeto

Metodologia de Gerenciamento de Projetos da Justiça Federal

Universidade de Pernambuco Escola Politécnica de Pernambuco Engenharia Civil. Planejamento Operacional de Obras. Custos

Engenharia de Software II

Engenharia de Software II

GERENCIAMENTO DA CONSTRUÇÃO CIVIL

Gerenciamento de Níveis de Serviço

Aula 2 GERÊNCIA E DIMENSÃO DO PROJETO

GARANTIA DA QUALIDADE DE SOFTWARE

Capítulo 13. Valor Agregado (Earned Value)

Planejamento e Controle de Projetos

ESTÁGIO DE NIVELAMENTO DE GERENCIAMENTO DE PROJETOS MACROPROCESSO DE GESTÃO DO PORTFÓLIO

Implantação de um Processo de Medições de Software

Processos de Gerenciamento de Projetos. Planejamento e Controle de Projetos 5 TADS FSR. Processos

Processos de gerenciamento de projetos em um projeto

Políticas de Qualidade em TI

FACULDADE DE TECNOLOGIA SENAC GOIÁS

Engenharia de Software Processo de Desenvolvimento de Software

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Introdução. Toda organização executa basicamente dois tipos de atividade: Projeto; e. Operação (execução).

F.1 Gerenciamento da integração do projeto

Resumo do BABok 2.0 O Guia de Referência de Análise de Negócio Curso de Analista de Negócio 3.0

Roteiro SENAC. Análise de Riscos. Monitoramento e Controle de Riscos. Monitoramento e Controle de Riscos. Monitoramento e Controle de Riscos

Engenharia de Software II: Definindo Projeto III. Prof. Msc Ricardo Britto DIE-UFPI

Pesquisa realizada com os participantes do 12º Seminário Nacional de Gestão de Projetos. Apresentação

PROJETO DE FÁBRICA DE SOFTWARE

UNIVASF - Universidade Federal do Vale do São Francisco Manutenção de Software

Engenharia de Software II

Gerenciamento de custos do projeto

Universidade de Pernambuco Escola Politécnica de Pernambuco Engenharia Civil. Planejamento Operacional de Obras. Gerenciamento de Prazo

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

Projeto de Sistemas I

Estabelecer o tempo necessário para preparar e servir um café!

Lista de verificação (Check list) para planejamento e execução de Projetos

Sistemas de Informação I

Sistema de Informações do Projeto

Ciência da Computação ENGENHARIA DE SOFTWARE. Recursos e Cronograma

Gerenciamento de Problemas

Engenharia de Software II

Gerenciamento de Projetos

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga

Planejamento e Gerência de Projetos de Software. Prof.: Ivon Rodrigues Canedo. PUC Goiás

CICLO DE EVENTOS DA QUALIDADE

17/02/2009. Curso Superior de Tecnologia: Redes de Computadores. Disciplina: Gestão de Projetos de TI Prof.: Fernando Hadad Zaidan. Unidade 2.

Existem três categorias básicas de processos empresariais:

NORMA ISO/IEC Isac Aguiar isacaguiar.com.br

Planejamento do Projeto. Projeto do Produto Engenharia de Produção

MASTER IN PROJECT MANAGEMENT

Tecnologia e Sistemas de Informações

Gerenciamento de Projeto: Criando a Declaração de Escopo II. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Gerenciamento de Projetos Modulo III Grupo de Processos

Universidade de Brasília Faculdade de Ciência da Informação Curso de Arquivologia Profa. Lillian Alvares

Tópicos da Aula. Que é são requisitos? Tipos de Requisitos. Requisitos Funcionais. Classificação de Requisitos. Requisitos de Software.

A Disciplina Gerência de Projetos

Manutenção desoftware. SCE 186- Engenharia de Software Profs. José Carlos Maldonado e Elisa Yumi Nakagawa 2 o semestrede2002

Monitoramento e Controle. Frases. Roteiro. 1. Processos de Controle 2. Relatório de Desempenho 3. Earned Value Management 4.

Exemplos: Análise de Valor Agregado (Ex_vagregado.SPRJ)

Modelos do Design de Software

Gerenciamento de Projeto: Monitorando e Controlando o Projeto II. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

AULA 3 PROF. DR. PAULO ROBERTO SCHROEDER DE SOUZA.

Para cada fase consideramos. Tempo para um projeto típico Tempo para um projeto Complexo. Arquitetura do Processo Unificado. A meta a ser atingida

Transcrição:

Engenharia de Software II Aula 22 http://www.ic.uff.br/~bianca/engsoft2/ Aula 22-07/07/2006 1

Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software Métricas para software Gestão de projetos de software Conceitos (Cap. 21) Métricas (Cap. 22 Seções 22.1 e 22.2) Estimativas (Cap. 23 Seções 23.1 a 23.7) Cronogramação (Cap. 24) Gestão de risco Gestão de qualidade Gestão de modificações Reengenharia e engenharia reversa Aula 22-07/07/2006 2

Definição de um Conjunto de Tarefas O modelo de processo escolhido é preenchido por um conjunto de tarefas. Tarefas de trabalho de engenharia de software Marcos de referência Produtos de trabalho Para desenvolver um cronograma, o conjunto de tarefas precisa ser distribuído pelo prazo do projeto. Nenhum conjunto de tarefas é apropriado para todos os tipos de projeto. O modelo de processo deve definir uma coleção de conjuntos de tarefas. Aula 22-07/07/2006 3

Definição de um Conjunto de Tarefas Tipos de projeto de software: Desenvolvimento conceitual Exploram uma novo conceito de negócio ou tecnologia. Desenvolvimento de novas aplicações Iniciados a partir de um pedido específico do cliente. Aperfeiçoamento de aplicações Quando um software existente passa por modificações significativas. Manutenção de aplicações Corrigem, adaptam ou ampliam um software existente. Reengenharia Reconstruir um sistema existente no seu todo ou em parte. Outros fatores influenciam o conjunto de tarefas: Tamanho, número de usuários, criticalidade, estabilidade dos requisitos, maturidade da tecnologia, desempenho, etc. Aula 22-07/07/2006 4

Exemplo de Conjunto de Tarefas Tarefas macroscópicas para um projeto de desenvolvimento conceitual: Determinação de escopo conceitual Determina o escopo global do projeto Planejamento conceitual preliminar Estabelece a capacidade de a organização assumir esse trabalho de desenvolvimento. Avaliação do risco da tecnologia Avalia o risco associado à tecnologia a ser implementada. Prova de conceito Demonstra a viabilidade da nova tecnologia Implementação conceitual Implementa a representação conceitual de um modo que possa ser revisado por um cliente e possa ser usado para marketing. Reação do cliente Realimentação sobre o novo conceito. Aula 22-07/07/2006 5

Exemplo de Refinamento de Tarefa Tarefa: Determinação de escopo conceitual. Identificar necessidades, benefícios e clientes em potencial. Definir entrada/saída/controle para a aplicação. Definir o comportamento de cada função principal. Isolar os elementos da tecnologia a ser implementados em software. Pesquisar a disponibilidade de software existente. Definir viabilidade técnica. Fazer estimativa rápida de tamanho. Criar uma Definição de Escopo. Aula 22-07/07/2006 6

Definição de uma Rede de Tarefas Tarefas e subtarefas têm interdependências baseadas na sua seqüência. Quando mais de uma pessoa faz parte do projeto, tarefas devem ser executadas em paralelo. As tarefas devem ser coordenadas para que sejam completadas quando tarefas posteriores precisarem do seu produto de trabalho. Aula 22-07/07/2006 7

Definição de uma Rede de Tarefas Uma rede de tarefas é uma representação gráfica do fluxo de tarefas de um projeto. A rede serve como uma precursora do cronograma. Determinação do escopo conceitual Avaliação do risco tecnológico a Implementação do conceito a Planejamento conceitual Avaliação do risco tecnológico b Prova do conceito Implementação do conceito b Integração a,b,c Avaliação do risco tecnológico c Implementação do conceito c Reação do cliente Aula 22-07/07/2006 8

Cronogramação A cronogramação de um projeto de software não difere muito da cronogramação de qualquer esforço de engenharia. Técnicas gerais de cronogramação podem ser aplicadas. PERT = Program Evaluation and Review Technique. CPM = Critical Path Method. Aula 22-07/07/2006 9

Cronogramação Ambas as técnicas PERT e CPM São guiadas por: Estimativas de esforço Decomposição da função do produto Seleção de modelo de processo e conjunto de tarefas adequado Decomposição de tarefas Fornecem métodos quantitativos para: Determinar o caminho crítico Cadeia de tarefas que determina a duração do projeto. Estabelecer estimativas de tempo mais prováveis para tarefas individuais aplicando modelos estatísticos. Calcular limites de tempo que definem uma janela de tempo para uma tarefa específica. Aula 22-07/07/2006 10

Gráfico de Tempo Gráfico de Tempo = Gráfico de Gantt Permite a visualização da duração de tempo das tarefas. Todas as tarefas são listadas na coluna mais à esquerda Barras horizontais indicam a duração de cada tarefa. Quando várias barras ocorrem ao mesmo tempo, o paralelismo fica implícito. Os losangos indicam marcos de referência. Aula 22-07/07/2006 11

Exemplo: Gráfico de Tempo Aula 22-07/07/2006 12

Tabela de Projeto A maioria das ferramentas de cronogramação de projetos produz tabelas de projeto. Lista tabular de todas as tarefas, de suas datas iniciais e finais, planejadas e reais, além de outras informações. Usadas em conjunto com os gráficos de tempo, as tabelas permitem ao gerente acompanhar o progresso. Aula 22-07/07/2006 13

Acompanhamento do Cronograma O cronograma é um roteiro para o gerente de projeto de software. O acompanhamento do projeto pode ser feito de diversas maneiras: Conduzir reuniões periódicas sobre o estado do projeto. Cada membro da equipe relata o progresso e problemas. Avaliar os resultados de todas as revisões conduzidas. Determinar se os marcos de referência foram atingidos na data prevista. Comparar a data de início real com a data de início prevista pra cada tarefa. Reunir os profissionais para uma avaliação subjetiva do progresso. Usando análise do valor agregadao, avaliar o progresso quantitativamente. Aula 22-07/07/2006 14

Acompanhamento do Cronograma Quando ocorrem problemas, o gerente de projeto deve exercer controle pra resolvê-los o mais cedo possível. Diagnosticar o problema Alocar recursos adicionais Redistribuir o pessoal Redefinir o cronograma Técnica de encaixotamento de tempo Uma caixa de tempo é colocada em volta de cada tarefa. Quando a tarefa passa do tempo máximo, o trabalho é interrompido e a tarefa seguinte começa. O restante da tarefa fica para o próximo incremento Ao invés de ficar empacado, o projeto prossegue em direção à data de entrega. Aula 22-07/07/2006 15

Acompanhamento em Projetos OO O paralelismo de tarefas no projeto OO, torna o acompanhamento do projeto difícil. O gerente pode encontrar dificuldades em definir marcos de referência significativos. Aula 22-07/07/2006 16

Acompanhamento em Projetos OO Os seguintes marcos principais são utilizados: Análise OO completada Todas as classes e sua hierarquia foram definidas e revisadas. Atributos e operações de classe foram definidos e revisados. Relacionamento de classes foram estabelecidos e revisados. Um modelo comportamento for criado e revisado. Classes reusáveis foram anotadas. Projeto OO completado O conjunto de subsistemas foi definido e revisado. Classes foram alocadas a subsistemas e revisadas. A alocação de tarefas foi estabelecida e revisada. Responsabilidades e colaborações foram identificadas. Classes de projeto foram criadas e revisadas. O modelo de comunicação foi criado e revisado Aula 22-07/07/2006 17

Acompanhamento em Projetos OO Programação OO completada Cada nova classe foi implementada em código a partir do modelo de projeto. Classes extraídas de uma biblioteca de reuso foram implementadas. Protótipo ou incremento foi construído. Teste OO completado A correção e completude dos modelos de análise e projeto OO foram revisadas. A rede de responsabilidade-colaboração de classes foi desenvolvida e revisada. Casos de teste foram projetados e os teste intra-classe foram conduzidos para cada classe. Casos de teste foram projetados, o teste de integração foi completado e as classes estão integradas. Testes de sistema foram completados. Aula 22-07/07/2006 18

Análise do Valor Agregado É uma técnica quantitativa para avaliar o progresso do projeto. Fornece uma escala comum de valor para cada tarefa, independentemente do tipo de trabalho que está sendo realizado. Avalia a porcentagem de execução do projeto. Aula 22-07/07/2006 19

Análise do Valor Agregado 1. O custo orçado do trabalho cronogramado (BCWS) é determinado para tarefa. BCWS i é o esforço planejado para a tarefa i em pessoa-mês. BCWS é a soma dos valores BCWS i de todas as tarefas que deveriam ter sido completadas até um dado momento. 2. Os valores BCWS i são somados para derivar o orçamento na conclusão do projeto (BAC). BAC = Σ (BCWS i ) para todas as tarefas i. 3. O valor do custo orçado do trabalho realizado (BCWP) é calculado. Soma dos valores BCWS de todas as tarefas de trabalho que foram efetivamente completadas. Aula 22-07/07/2006 20

Análise do Valor Agregado Índice de desempenho do cronograma SPI = BCWP/BCWS SPI próximo de 1,0 indica execução eficiente do cronograma do projeto. Variância do cronograma SV = BCWP - BCWS Porcentagem programada para conclusão = BCWS/BAC Porcentagem completada = BCWP/BAC Aula 22-07/07/2006 21

Análise do Valor Agregado Custo real do trabalho realizado (ACWP) Soma do esforço realmente despendido nas tarefas que foram completadas. Diferente de BCWP que é o esforço orçado. Índice de desempenho do custo CPI = BCWP/ACWP CPI próximo de 1,0 indica que o projeto está dentro do orçamento definido. Variância do custo CV = BCWP - ACWP. Indicação absoluta das economias ou dos excessos de custo em um estágio específico do projeto. Aula 22-07/07/2006 22