Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 PLANEJAMENTO DE SOFTWARE Profa Sandra Fabbri Parte 1 - Contexto2 Profa. Sandra Fabbri 2 Engenharia de Software 3 DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Entendimento Modificação Revalidação Projeto Codificação Teste Análise de Sistema Planejamento do Projeto Análise de Requisitos • Gerenciamento de Configuração • Aplicação de Métricas • Acompanhamento e Controle do Projeto • Revisão e Inspeção • Produção e Preparação de Documentos • Gerenciamento de Risco ATIVIDADES PARA GARANTIR A QUALIDADE Profa. Sandra Fabbri Melhoria de Processo de Software Profa. Sandra Fabbri 4 Processo Avaliação do Processo Melhoria do Processo é examinado pela conduz à identifica mudanças no 3 Modelos de Qualidade de Processo de Software Profa. Sandra Fabbri 5 � São diversas as iniciativas de modelos que podem subsidiar a melhoria do processo: CMM SW SPICE ISO 12207 MR-mpsBR Etc. ISO 15504 O Modelo CMM Profa. Sandra Fabbri 6 INICIAL Organizações Caóticas REPETÍVEL Organizações Disciplinadas DEFINIDO Organizações Padronizadas GERENCIADO Organizações Previsíveis OTIMIZADO Organizações com Melhoria Contínua 4 O Modelo CMM Profa. Sandra Fabbri 7 INICIAL Organizações Caóticas REPETÍVEL Organizações Disciplinadas DEFINIDO Organizações Padronizadas GERENCIADO Organizações Previsíveis OTIMIZADO Organizações com Melhoria Contínua6- Gerenciamento da Configuração de Software 5- Garantia da Qualidade de Software 4- Gerenciamento de Subcontrato de Software 3- Acompanhamento de Projeto de Software 2- Planejamento de Projeto de Software 1- Gerenciamento de Requisitos Como sair do nível caótico e passar para o nível repetível? O Modelo SPICE – ISO 15504 Profa. Sandra Fabbri 8 Parte 2 Modelo de Gerenciamento de Processo Parte 5 Construção, Seleção e Uso das Ferramentas para Avaliação Parte 3 Medidas do Processo Parte 7 Guia para Melhoria de Processo Parte 4 Guia para Conduzir uma Avaliação Parte 8 Guia para a Determinação da Capacidade do Processo do Fornecedor Parte 6 Qualificação e Treinamento dos Avaliadores Parte 1 Conceitos e Guia Introdutório Parte 9 Dicionário 5 O Modelo SPICE – ISO 15504 Profa. Sandra Fabbri 9 Parte 2 Modelo de Gerenciamento de Processo Parte 5 Construção, Seleção e Uso das Ferramentas para Avaliação Parte 3 Medidas do Processo Parte 7 Guia para Melhoria de Processo Parte 4 Guia para Conduzir uma Avaliação Parte 8 Guia para a Determinação da Capacidade do Processo do Fornecedor Parte 6 Qualificação e Treinamento dos Avaliadores Parte 1 Conceitos e Guia Introdutório Parte 9 DicionárioCATEGORIAS DE MODELOS IDEALIZADOS • Cliente-Fornecedor • Engenharia • Projeto • Suporte • Organização A parte 2 define um modelo ideal de processo de software que forma a base para a avaliação O Modelo SPICE – ISO 15504 Profa. Sandra Fabbri 10 Parte 2 Modelo de Gerenciamento de Processo Parte 5 Construção, Seleção e Uso das Ferramentas para Avaliação Parte 3 Medidas do Processo Parte 7 Guia para Melhoria de Processo Parte 4 Guia para Conduzir uma Avaliação Parte 8 Guia para a Determinação da Capacidade do Processo do Fornecedor Parte 6 Qualificação e Treinamento dos Avaliadores Parte 1 Conceitos e Guia Introdutório Parte 9 DicionárioCATEGORIAS DE MODELOS IDEALIZADOS • Cliente-Fornecedor • Engenharia • Projeto • Suporte • Organização 1-Planejamento do Ciclo de Vida do Projeto 2- Estabelecimento do Plano de Projeto 3- Criação de times de projeto 4- Gerenciamento de Requisitos 5- Gerenciamento da Qualidade 6- Gerenciamento de Riscos 7- Gerenciamento de Recursos e Cronograma 8- Gerenciamento de Subcontratados • Projeto 6 ISO 12207 Profa. Sandra Fabbri 11 1. Aquisição 2. Fornecimento 3. Desenvolvimento 4. Operação 5. Manutenção ProcessosProcessos FundamentaisFundamentais 1. Documentação 2. Gerenciamento de Configuração 3. Garantia de Qualidade 4. Verificação Processos deProcessos de ApoioApoio 5. Validação 6. Revisões 7. Auditorias 8. Resolução de problemas Processos organizacionaisProcessos organizacionais 1. Gerenciamento 2. Infraestrutura 3. Melhoramentos 4. Treinamento • atividades relativas à implementação do processo; • atividades relativas à garantia do produto; • atividades relativas à garantia do processo; • atividades relativas à garantia dos sistemas de qualidade ISO 12207 Profa. Sandra Fabbri 12 1. Aquisição 2. Fornecimento 3. Desenvolvimento 4. Operação 5. Manutenção ProcessosProcessos FundamentaisFundamentais 1. Documentação 2. Gerenciamento de Configuração 3. Garantia de Qualidade 4. Verificação Processos deProcessos de ApoioApoio 5. Validação 6. Revisões 7. Auditorias 8. Resolução de problemas Processos organizacionaisProcessos organizacionais 1. Gerenciamento 2. Infraestrutura 3. Melhoramentos 4. Treinamento • atividades relativas à implementação do processo; • atividades relativas à garantia do produto; • atividades relativas à garantia do processo; • atividades relativas à garantia dos sistemas de qualidade Planejamento do Projeto 7 Engenharia de Software Profa. Sandra Fabbri 13 DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Entendimento Modificação Revalidação Projeto Codificação Teste Análise de Sistema Planejamento do Projeto Análise de Requisitos • Gerenciamento de Configuração • Aplicação de Métricas • Acompanhamento e Controle do Projeto • Revisão e Inspeção • Produção e Preparação de Documentos • Gerenciamento de Risco ATIVIDADES PARA GARANTIR A QUALIDADE DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Entendimento Modificação Revalidação Projeto Codificação Teste Análise de Sistema Planejamento do Projeto Análise de Requisitos • Gerenciamento de Configuração • Aplicação de Métricas • Acompanhamento e Controle do Projeto • Revisão e Inspeção • Produção e Preparação de Documentos • Gerenciamento de Risco Gerência de Projeto de Software ATIVIDADES PARA GARANTIR A QUALIDADE Engenharia de Software Profa. Sandra Fabbri 14 DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Entendimento Modificação Revalidação Projeto Codificação Teste Análise de Sistema Planejamento do Projeto Análise de Requisitos • Gerenciamento de Configuração • Aplicação de Métricas • Acompanhamento e Controle do Projeto • Revisão e Inspeção • Produção e Preparação de Documentos • Gerenciamento de Risco ATIVIDADES PARA GARANTIR A QUALIDADE DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO SOFTWARE PRODUTO Entendimento Modificação Revalidação Projeto Codificação Teste Análise de Sistema Planejamento do Projeto Análise de Requisitos • Gerenciamento de Configuração • Aplicação de Métricas • Acompanhamento e Controle do Projeto • Revisão e Inspeção • Produção e Preparação de Documentos • Gerenciamento de Risco Gerência de Projeto de Software ATIVIDADESPARA GARANTIR A QUALIDADE Planejamento do Projeto Acompanhamento e Controle do Projeto Aplicação de Métricas 8 Parte 2 - Métricas Profa. Sandra Fabbri Conteúdo Profa. Sandra Fabbri 16 � Métricas � Orientada ao Tamanho � Orientada à Função �Orientadas a Casos de Uso � Estimativas de Projeto � Técnicas de Decomposição: � Estimativa de LOC (ou PF/PCU) � Estimativa de Esforço � Modelos Empíricos �Modelo Estático de Variável Simples � COCOMO � Ferramentas 1 2 3 4 5 9 Plano de Projeto de Software Profa. Sandra Fabbri 17 I. Introdução 1. Escopo e propósito do documento 2. Objetivos do Projeto II. Estimativas de Projeto 1. Dados históricos usados nas estimativas 2. Técnicas de estimativa 3. Estimativas III. Riscos do Projeto 1. Análise dos riscos 2. Administração dos riscos IV. Cronograma 1. Divisão do trabalho (work breakdown) 2. Rede de tarefas 3. Gráfico de Gantt 4. Tabela de recursos V. Recursos do Projeto 1. Pessoal 2. Hardware e Software 3. Recursos especiais VI. Organização do Pessoal 1. Estrutura de Equipe 2. Relatórios Administrativos VII. Mecanismos de Controle VIII. Apêndices Plano de Projeto de Software Profa. Sandra Fabbri 18 I. Introdução 1. Escopo e propósito do documento 2. Objetivos do Projeto II. Estimativas de Projeto 1. Dados históricos usados nas estimativas 2. Técnicas de estimativa 3. Estimativas III. Riscos do Projeto 1. Análise dos riscos 2. Administração dos riscos IV. Cronograma 1. Divisão do trabalho (work breakdown) 2. Rede de tarefas 3. Gráfico de Gantt 4. Tabela de recursos V. Recursos do Projeto 1. Pessoal 2. Hardware e Software 3. Recursos especiais VI. Organização do Pessoal 1. Estrutura de Equipe 2. Relatórios Administrativos VII. Mecanismos de Controle VIII. Apêndices 10 Plano de Projeto-Estimativas Profa. Sandra Fabbri 19 II. ESTIMATIVAS DE PROJETO MÉTRICASMÉTRICAS TÉCNICAS DE ESTIMATIVAS TÉCNICAS DE ESTIMATIVAS 1 2 3 4 5 Métricas Profa. Sandra Fabbri 20 � Razões para se medir o software: � Indicar a qualidade do produto � Avaliar a produtividade dos que desenvolvem o produto �Determinar os benefícios derivados de novos métodos e ferramentas de engenharia de software � Formar uma base para as estimativas � Ajudar na justificativa de aquisição de novas ferramentas ou de treinamentos adicionais 11 Métricas Profa. Sandra Fabbri 21 MEDIDAS DO SOFTWARE MEDIDAS DIRETAS MEDIDAS INDIRETAS •Custo •Esforço •Linhas de Código •Velocidade de Execução •Memória •Nro de Erros •Funcionalidade •Qualidade •Complexidade •Eficiência •Confiabilidade •Manutenibilidade Métricas - Classificação Profa. Sandra Fabbri 22 Orientadas ao Tamanho Orientadas à Função Orientadas ao Ser Humano de Produtividade de Qualidade Técnicas atuação das pessoas; seus relacionamentos com ferramentas e métodos computam medidas indiretas do software computam medidas diretas do software enfoca a saída do processo de eng. de software conformidade com os requisitos implícitos e explícitos do usuário enfoca características do software (complexidade, modularidade) 12 Métrica orientada ao tamanho23 Profa. Sandra Fabbri Métricas - Orientadas ao Tamanho Profa. Sandra Fabbri 24 São derivadas de medidas diretas do software e do processo através do qual ele é desenvolvido Exemplos: LOC - Lines of Code KLOC - Thousand Lines of Code 13 Métricas - Orientadas ao Tamanho Profa. Sandra Fabbri 25 LOC/KLOC projeto esforço $ KLOC pags.docum. erros pessoas projA-01 24 168 12.1 365 29 3 projB-04 62 440 27.2 1224 86 5 projC-03 43 314 20.2 1050 64 6 MÉTRICAS DERIVADAS PRODUTIVIDADE = QUALIDADE = CUSTO = DOCUMENTAÇÃO = KLOC / pessoas-mês erros / KLOC $ / LOC pags.docum. / KLOC Métricas - Orientadas ao Tamanho Profa. Sandra Fabbri 26 VANTAGENS: DESVANTAGENS: • Fáceis de serem obtidas • Vários modelos de estimativa baseados em LOC ou KLOC •LOC depende da linguagem de programação •Penalizam programas bem projetados, mas pequenos •Não se adaptam às linguagens não procedimentais •Difícil de obter em fase de planejamento LOC/KLOC 14 Métrica orientada a função27 Profa. Sandra Fabbri Métricas - Orientadas à Função Profa. Sandra Fabbri 28 São derivadas de medidas indiretas do software e do processo através do qual ele é desenvolvido Exemplo: PF - Pontos por Função (Albrecht 1979) 15 Métricas - Orientadas à Função Profa. Sandra Fabbri 29 MÉTRICA ORIENTADA À FUNÇÃO - PF Concentra-se na funcionalidade ou utilidade do software Os PFs são derivados usando uma relação empírica baseada em medidas do domínio de informação e da complexidade do software Métricas - Orientadas à Função Profa. Sandra Fabbri 30 � Os conceitos de Pontos de Função foram introduzidos por Allan J. Albrecht, em uma conferência do GUIDE – Grupo de Usuários IBM, em 1979. � Mais tarde, esses conceitos foram refinados em uma metodologia formal e em 1984 foram publicados para domínio público. 16 Métricas - Orientadas à Função Profa. Sandra Fabbri 31 � Cinco tipos de componentes lógicos ou funções da aplicação afetam de formas distintas o tamanho de um sistema: �Com relação a DADOS: � Arquivos Lógicos Internos – ALI � Arquivos de Interface Externa – AIE �Com relação a TRANSAÇÕES: � Entradas Externas – EE � Saídas Externas – SE �Consultas Externas – CE Métricas - Orientadas à Função Profa. Sandra Fabbri 32 � A contagem de pontos de função é utilizada para medir sistemas e elaborar estimativas em todas as fases do ciclo de vida de desenvolvimento, inclusive na manutenção � Além disso, a contagem de pontos de função é independente da maneira como o sistema é desenvolvido e implementado. 17 Métricas - Orientadas à Função Profa. Sandra Fabbri 33 � De acordo com a finalidade a que se destina, podem-se realizar três tipos de contagem: � a contagem em projetos de desenvolvimento de software � a contagem de pontos de função de uma aplicação já desenvolvida e implantada � a contagem de pontos de função em projetos de manutenção de software Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 34 Pontos de Função Brutos Fator de Ajuste Pontos de Função Ajustados Avaliação das 14 características e determinação do nível de influência Arquivos Externos Arquivos Internos Entradas Externas Saídas Externas Consultas Externas Visão Geral do Processo de Análise de Pontos de Função 18 Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 35 Visão Geral do Processo de Análise de Pontos de Função Fator de Ajuste Pontos de Função Ajustados Avaliação das 14 características e determinação do nível de influência Arquivos Externos Arquivos Internos Entradas Externas Saídas Externas Consultas Externas Pontos de Função Brutos Pontos de Função Brutos Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 36 Visão Geral do Processo de Análise de Pontos de Função Fator de Ajuste Pontos de Função Ajustados Avaliação das 14 características e determinação do nível de influência Arquivos Externos Arquivos Internos Entradas Externas Saídas Externas Consultas Externas Pontos de Função Brutos Pontos de Função Brutos Os pontos de função brutosrefletem especificamente a contagem da funcionalidade provida ao usuário pela aplicação. 19 Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 37 79Total de pontos de função brutos Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 Complexidade Funcional 21 10 26 8 14 Entradas Externas Saídas Externas Arquivo Lógico Interno Arquivo de Interface Externa Consultas Externas Total de pontos de função brutos 79 Métricas Orientadas à Função PF – Pontos Por Função Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 79 Complexidade Funcional 21 Total de pontos de função brutos 10 26 8 14 Entradas Saídas Arquivo Interno Arquivo Externo Consultas Total de pontos por função brutos 79 Um arquivo interno é um arquivo que será criado para servir o sistema em questão. Ele será criado e atualizado por essa aplicação. 20 Métricas Orientadas à Função PF – Pontos Por Função Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 79 Complexidade Funcional 21 Total de pontos de função brutos 10 26 8 14 Entradas Saídas Arquivo Interno Arquivo Externo Consultas Total de pontos por função brutos 79 Um arquivo externo é um arquivo que não foi criado por esta aplicação, mas que será utilizado por ela. Métricas Orientadas à Função PF – Pontos Por Função Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 79 Complexidade Funcional 21 Total de pontos de função brutos 10 26 8 14 Entradas Saídas Arquivo Interno Arquivo Externo Consultas Total de pontos por função brutos 79 Corresponde ao total de operações de entrada, feitas pelo usuário, que fornecem dados orientados a aplicações distintas 21 Métricas Orientadas à Função PF – Pontos Por Função Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 79 Complexidade Funcional 21 Total de pontos de função brutos 10 26 8 14 Entradas Saídas Arquivo Interno Arquivo Externo Consultas Total de pontos por função brutos 79 Corresponde às operações de saída, que vão para o usuário e que fornecem informações orientadas às aplicações do sistema. Essas saídas geram informações adicionais àquelas que constam das bases de dados (relatórios, telas, mensagens de erro) Métricas Orientadas à Função PF – Pontos Por Função Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 79 Complexidade Funcional 21 Total de pontos de função brutos 10 26 8 14 Entradas Saídas Arquivo Interno Arquivo Externo Consultas Total de pontos por função brutos 79 Corresponde às entradas on-line que resultam em saídas (relatórios, mensagens, telas, etc.) que não possuem informação além daquelas que estão armazenadas na base de dados. 22 Métricas Orientadas à Função PF – Pontos Por Função 1 a 19 DER 20 a 50 DER 50 ou mais DER 1 RLR Simples Simples Média 2 a 5 RLR Simples Média Complexa 6 ou mais RLR Média Complexa Complexa 1 a 4 DER 5 a 15 DER 16 ou mais DER 0 ou 1 ALR Simples Simples Média 2 ALR Simples Média Complexa 3 ou mais ALR Média Complexa Complexa 1 a 5 DER 6 a 19 DER 20 ou mais DER 0 ou 1 ALR Simples Simples Média 2 ALR Simples Média Complexa 4 ou mais ALR Média Complexa Complexa consulta e saída entrada arquivo interno e arquivo externo Onde: DER: Dado Elementar Referenciado (o mesmo que um item de dado ou um atributo). RLR: Registro Lógico Referenciado (o mesmo que uma chave de um arquivo). ALR: Arquivo Lógico Referenciado (o mesmo que um arquivo utilizado pela aplicação). Ex: 1) Suponha um arquivo que tenha 30 atributos (DER) e duas chaves (RLR) – uma primária e outra estrangeira. Então, pela tabela, sua complexidade é Média. 2) Suponha que uma das operações de entrada do software seja uma tela composta de 25 informações (DER), as quais serão armazenadas em 3 arquivos diferentes. Então, pela tabela, sua complexidade é Complexa. Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 44 Pontos de Função Brutos Fator de Ajuste Pontos de Função Ajustados Avaliação das 14 características e determinação do nível de influência Arquivos Externos Arquivos Internos Entradas Externas Saídas Externas Consultas Externas Pontos de Função Brutos 23 Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 45 Fator de Ajuste Pontos de Função Ajustados Avaliação das 14 características e determinação do nível de influência Arquivos Externos Arquivos Internos Entradas Externas Saídas Externas Consultas Externas Visão Geral do Processo de Análise de Pontos de Função Pontos de Função Brutos Pontos de Função Ajustados Fator de Ajuste Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 46 � Assim que o total de pontos de função não ajustados for obtido, o fator de ajuste deve ser determinado. � O cálculo do fator de ajuste representa a funcionalidade geral da aplicação provida ao usuário pela aplicação e é obtido através da análise de 14 Características Gerais do Sistema. Fator de Ajuste 24 Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 47 Fator de Ajuste - Características Gerais do Sistema influência 0 1 2 3 4 5 nenhuma mínima moderada média significante forte 1. O sistema exige backup e recuperação confiáveis? 2. É requerida comunicação de dados? 3. Existem funções de processamento distribuído? 4. O desempenho é crítico? 5. O sistema funcionará num sistema operacional existente e intensamenteutilizado? 6. São requeridas entrada de dados on-line? 7. As entradas on-line requerem que as transações de entrada sejam construídas com várias telas e operações? 8. Os arquivos são atualizados on-line? 9. Entradas, saídas, arquivos e consultas são complexos? 10. O processamento interno é complexo? 11. O código é projetado para ser reusával? 12. A conversão e a instalação estão incuídas no projeto? 13. O sistema é projetado para múltiplas instalações em diferentes organizações? 14. A aplicação é projetada de forma a facilitar mudanças e o uso pelo usuário? Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 48 3) Ajustar os Pontos por Função de acordo com a complexidade do sistema, através da seguinte fórmula: PF = PF-Bruto x 0,65 + 0,01 x (Fi) 14 i = 1 Fi = valores de ajuste da complexidade das perguntas 1-14 MÉTRICAS DERIVADAS PRODUTIVIDADE = QUALIDADE = CUSTO = DOCUMENTAÇÃO = PF / pessoas-mês erros / PF $ / PF pags.docum. / PF Cálculo do Fator de Ajuste 25 Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 49 VANTAGENS: DESVANTAGENS: •Independentes da linguagem •Ideal para aplicações que usam linguagem não procedimental •Baseados em dados mais fáceis de serem conhecidos durante a evolução do projeto •Cálculo baseado em dados subjetivos •Não é uma medida direta; é apenas um número Métricas Orientadas à Função PF – Pontos Por Função Profa. Sandra Fabbri 50 79Total de pontos de função brutos Componentes Lógicos Total Complexidade Total tipo função 3 Simples x 7 = 21 0 Média x 10 = 0 0 Complexa x 15 = 0 2 Simples x 5 = 10 0 Média x 7 = 0 0 Complexa x 10 = 0 4 Simples x 3 = 12 2 Média x 4 = 8 1 Complexa x 6 = 6 2 Simples x 4 = 8 0 Média x 5 = 0 0 Complexa x 7 = 0 2 Simples x 3 = 6 2 Média x 4 = 8 0 Complexa x 6 = 0 Complexidade Funcional 21 10 26 8 14 Entradas Externas Saídas Externas Arquivo Lógico Interno Arquivo de Interface Externa Consultas Externas Total de pontos de função brutos 79 26 Pontos por Função – NESMA - Contagem Antecipada Profa. Sandra Fabbri 51 � A NESMA (Netherlands Software Metrics Association) reconhece três tipos de contagem de pontos de função: � contagem de pontos de função detalhada � contagem de pontos de função estimativa � contagem de pontos de função indicativa Pontos por Função – Contagem Indicativa Profa. Sandra Fabbri 52 � determina-se a quantidade das funções do tipo dado (ALIs e AIEs) � calcula-se o total de pontos por função não ajustados da aplicação da seguinte forma: tamanho indicativo (pf) = 35 x número de ALIs + 15 x número de AIEs Premissa: existem aproximadamente 3 EEs (para adicionar, alterar, e excluir dados do ALI), 2 SEs, e 1 CE em média para cada ALI, e aproximadamente 1 SE e 1 CE para cada AIE. 27 Exemplo – Contagem Indicativa Profa. Sandra Fabbri 53 � Requisitos do usuário: � o usuário deseja manter dados de Cliente e Produto e referenciar dados de Fornecedor. � Esta especificação (superficial) é o suficiente para uma contagem indicativa de pontos de função: � ALI: Cliente e Produto � AIE: Fornecedor Função do Tipo Dado Tipo de Função Pontos de Função (pré-definido) Cliente ALI 35 Produto ALI 35 Fornecedor AIE 15 Indicativo do tamanho funcional 85 pf Pontos por Função – Contagem Estimativa Profa. Sandra Fabbri 54 � determinam-se todas as funções de todos os tipos (ALI, AIE, EE, SE, CE) � toda função do tipo dado (ALI, AIE) tem sua complexidade funcional avaliada como baixa, e toda função transacional (EE, SE, CE) é avaliada como de complexidade média � calcula-se o total de pontos de função não ajustados 28 Exemplo – Contagem Estimativa Profa. Sandra Fabbri 55 � Requisitos do Usuário: � o usuário deseja adicionar, alterar, excluir e consultar dados de Cliente, e também necessita quatro diferentes tipos de relatórios sobre Cliente contendo dados calculados. � o usuário deseja adicionar, alterar, excluir e consultar dados de Produto, e também necessita de consultar o Fornecedor através de seu número e um relatório sobre Fornecedor com totalização de resultados. � Essa especificação mais detalhada dos requisitos do usuário mostra a real quantidade de funções do tipo transação, e torna possível uma contagem estimativa de pontos de função. Exemplo – Contagem Estimativa Profa. Sandra Fabbri 56 Função do tipo Dado ou Transação Tipo de Função Complexidade (pré-definida) Pontos de Função (não ajustados) Cliente ALI Baixa 7 Produto ALI Baixa 7 Fornecedor AIE Baixa 5 Incluir Cliente EE Média 4 Alterar Cliente EE Média 4 Excluir Cliente EE Média 4 Consultar Cliente CE Média 4 Relatório 1 de Cliente SE Média 5 Relatório 2 de Cliente SE Média 5 Relatório 3 de Cliente SE Média 5 Relatório 4 de Cliente SE Média 5 Incluir Produto EE Média 4 Alterar Produto EE Média 4 Excluir Produto EE Média 4 Consultar Produto CE Média 4 Relatório de Produto SE Média 5 Consulta de Fornecedor CE Média 4 Relatório de Fornecedor SE Média 5 Estimativa do tamanho funcional 85 fp 29 Exemplo – Contagem Detalhada Profa. Sandra Fabbri 57 Função do tipo Dado ou Transação Tipo de função Complexidade Pontos de Função (não ajustados) Cliente ALI Média 10 Produto ALI Baixa 7 Fornecedor AIE Baixa 5 Incluir Cliente EE Alta 6 Alterar Cliente EE Média 4 Excluir Cliente EE Baixa 3 Consultar Cliente CE Baixa 3 Relatório 1 de Cliente SE Baixa 4 Relatório 2 de Cliente SE Média 5 Relatório 3 de Cliente SE Baixa 4 Relatório 4 de Cliente SE Alta 7 Incluir Produto EE Média 4 Alterar Produto EE Baixa 3 Excluir Produto EE Baixa 3 Consultar Produto CE Média 4 Relatório de Produto SE Média 5 Consulta de Fornecedor CE Baixa 3 Relatório de Fornecedor SE Média 5 Tamanho Funcional 85 pf Para fazer uma contagem detalhada, é necessário que os requisitos também sejam mais detalhados. Métrica orientada a Caso de Uso Profa. Sandra Fabbri 30 Pontos por Caso de Uso Profa. Sandra Fabbri 59 � Estimativa de Esforço e Custo. � Baseada em Pontos de Função. � Criada em 1993 por Gustav Karner. � Metodologia baseada em Casos de Uso. � Baseada em Orientação a Objetos. � Simplicidade e Facilidade de uso. Pontos por Caso de Uso Fórmula de Cálculo Profa. Sandra Fabbri 60 � Determinar: � Somatório dos Pontos por Caso de Uso (SPCU). � Somatório dos Pontos por Ator (SPA). � Determinar: � Fator de Complexidade Técnica (FCT) � Fator Ambiental (FA) � Totalizar: � PCU = FCT * FA* (SPCU+SA) 31 Somatório dos Pontos por Caso de Uso (SPCU) Profa. Sandra Fabbri 61 � Classificam-se os Casos de Uso em: � Simples = 5 Pontos � Até 3 transações ou até 5 objetos de análise. � Médio = 10 Pontos � Até 7 transações ou até 10 objetos de análise � Complexo = 15 Pontos � Mais que 7 transações e mais que 10 objetos de análise � Exemplo: � Um sistema contém 4 Casos de Uso: Um simples, um médio e dois complexos. � Total de Pontos (SPCU) = 45 Pontos Somatório dos Pontos por Ator (SPA) Profa. Sandra Fabbri 62 � Classificam-se os Atores em: � Simples = 1 Ponto � Acesso de um sistema a outro (API - application programming interface). � Médio = 2 Pontos � Interface texto � Complexo = 3 Pontos � Interface gráfica � Exemplo: � Um sistema contém 5 Atores: Dois simples, um médio e dois complexos. � Total dos Pontos por Atores (SPA) = 10 Pontos 32 Tabela de Fatores de Complexidade Técnica Fator de ComplexidadeTécnica Descrição Peso F1 Sistema distribuído 2 F2 Tempo de Resposta 1 F3 Eficiência 1 F4 Processamento complexo 1 F5 Código reusável 1 F6 Facilidade de instalação 0,5 F7 Facilidade de uso 0,5 F8 Portabilidade 2 F9 Facilidade de mudança 1 F10 Concorrência 1 F11 Recursos de segurança 1 F12 Acessível por terceiros 1 F13 Requer treinamento especial 1 Profa. Sandra Fabbri 63 Cálculo do Fator de Complexidade Técnica (FCT) Profa. Sandra Fabbri 64 � A influência de cada fator pode variar de 0 a 5. � Considerar a influência máxima o valor de 5. � Utilizar a formula abaixo para cálculo do FCT � Exemplo: Sistema Distribuído = 4, Código Reutilizável = 5, demais fatores usar o valor 3 como default. � Total= 0,6 + 0,01(4*2 + 3*1 + 3*1 + 3*1 + 3*1 + 5*1 + 3*0,5 + ...) � Total= 0,6 + 0,44 = 1,04 33 Tabela de Fatores Ambientais Fator Ambiental Descrição Peso F1 Familiaridade com o processo de desenvolvimento. 1,5 F2 Desenvolvedores em meio expediente. -1 F3 Presença de analistas experientes 0,5 F4 Experiência com a aplicação em desenvolvimento. 0,5 F5 Experiência em Orientação a Objetos. 1 F6 Motivação 1 F7 Dificuldade com a linguagem de programação -1 F8 Requisitos estáveis 2 Profa. Sandra Fabbri 65 Cálculo do Fator Ambiental (FA) Profa. Sandra Fabbri 66 � A influência de cada fator pode variar de 0 a 5. � Considerar a influência máxima o valor de 5. � Utilizar a formula abaixo para cálculo do FA � Exemplo: Experiência na Aplicação = 5, Experiência em Orientação a Objetos=4, demais fatores usar o valor 3 como default. � Total= 1,4 - 0,03(3*1,5 + 5*0,5 + 4*1 + 3*0,5 + 3*1 + ...) � Total= 1,4 - 0,48 = 0,92 34 Pontos por Caso de Uso Profa. Sandra Fabbri 67 � Cálculo: � SPCU = 45 � SA = 10 � FCT = 1,04 � FA = 0,92 � PCU = FCT*FA*(SPCU+SA) � PCU = 1,04*0,92*(45+10) � PCU = 52,62 Pontos � Quantas horas? Qual o Custo? Pontos por Caso de Uso Profa. Sandra Fabbri 68 � PCU = 52,62 Pontos � Karner sugere 20 horas/ponto � Tempo = 52,62 * 20 � Tempo = 1.052,48 horas � Hora de estágio R$ 8,00 � Custo R$ 8.419,84 � Um sistemas de 4 Casos de Uso e 5 Atores! 35 Métricas Profa. Sandra Fabbri 69 BASELINE - DADOS HISTÓRICOS • Atributos dos Dados Históricos: – Ajudam a reduzir o risco das estimativas – Devem ser precisos ou próximos de um valor real – Coletados do maior número de projetos possível – As medidas devem ser interpretadas da mesma maneira durante todo o projeto – As aplicações devem ser similares às do trabalho que se quer estudar • Existe um modelo de planilha para coleta e cálculo de dados históricos do software Parte 3 – Estimativa Profa. Sandra Fabbri 36 Estimativas Profa. Sandra Fabbri 71 � Constitui um mapa para a bem-sucedida engenharia do software � Exige: � experiência � acesso a boas informações históricas � coragem para se comprometer com medidas quantitativas quando só existirem dados qualitativos Estimativas Profa. Sandra Fabbri 72 � Estimativas possuem Riscos inerentes � os Riscos são medidos pelo grau de incerteza das estimativas estabelecidas para recursos, prazos e custo � escopo mal compreendido ou requisitos sujeitos a mudanças ⇒ Riscos elevados � clientes e gerente devem estar cientes de que variação de requisitos ⇒ instabilidade de custo e prazo 37 Estimativas Profa. Sandra Fabbri 73 � Fatores que aumentam o risco: � complexidade � tamanho do projeto � grau de estruturação Complexidade baseada nos esforços passados Grau de estrutura, definição Tamanho do projeto Domínio de baixo Risco (recíproca) Estimativas Profa. Sandra Fabbri 74 � Fator que reduz o risco: DADOS HISTÓRICOS • Estimativas podem ser feitas com maior segurança • Prazos podem ser estabelecidos para se evitar dificuldades passadas • Riscos podem ser reduzidos 38 Estimativas Profa. Sandra Fabbri 75 � Não é uma ciência exata � As Estimativas são afetadas por muitas variáveis: � humanas � técnicas � ambientais � políticas Estimativas Profa. Sandra Fabbri 76 � As opções para se ter Estimativas com graus aceitáveis de Risco: � retardar as estimativas do projeto � usar técnicas de decomposição (dividir o problema complexo em pequenos problemas) � desenvolver um modelo empírico � adquirir ferramentas de estimativas 39 Estimativas Profa. Sandra Fabbri 77 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de LOC e PFEstimativa de LOC e PF Estimativa de EsforçoEstimativa de Esforço Subdividem o problema em problemas menores e administráveis Estimativas Profa. Sandra Fabbri 78 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de LOC e PFEstimativa de LOC e PF 1) Decompor o software em funções menores que possam ser estudadas individualmente LOC Funções otimista(a) mais provável(b) pessimista(c) Esperado função1 1800 2400 2650 função2 4100 5200 7400 função3 4600 6900 8600 função4 2950 3400 3600 função5 4050 4900 6200 função6 2000 2100 2450 função7 6600 8500 9800 2) Usando Dados Históricos ou intuição, fornecer para cada subfunção valores de LOC ou PF otimista, mais provável, pessimista 40 Estimativas Profa. Sandra Fabbri 79 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de LOC e PFEstimativa de LOC e PF 3) Determinar o número esperado (E) da variável de estimativa (LOC ou PF) para cada subfunção: E = ( a + 4b + c )/6 LOC Funções otimista(a) mais provável(b) pessimista(c) Esperado função1 1800 2400 2650 2340 função2 4100 5200 7400 5380 função3 4600 6900 8600 6800 função4 2950 3400 3600 3350 função5 4050 4900 6200 4850 função6 2000 2100 2450 2140 função7 6600 8500 9800 8400 LOC ESTIMADO 33360 4) Determinar o valor estimado LOC ou PF ESTIMADO Estimativas Profa. Sandra Fabbri 80 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de LOC e PFEstimativa de LOC e PF Determinação do Custo e do Esforço: ABORDAGEM 1 • De Projetos Passados (Dados Históricos) obtém-se: Produtividade Média = 596 LOC/pessoas-mês Custo Médio = 19,7 $/LOC • Da última Tabela obteve-se LOC ESTIMADO = 33360 ESFORÇO = LOC ESTIMADO / Produtividade Média ESFORÇO = 33360 / 596 = 56 pessoas-mes CUSTO = LOC ESTIMADO x Custo Médio CUSTO = 33360 x 19,7 = 656680 $ 41 Estimativas Profa. Sandra Fabbri 81 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de LOC e PFEstimativa de LOC e PF Determinação do Custo e do Esforço: ABORDAGEM 2 • De Projetos Passados (Dados Históricos) obtém-se: Diferentes valores de produtividade, de acordo com a complexidade de cada subfunção. O CUSTO e o ESFORÇO são calculados separadamente para cada subfunção. Estimativas Profa. Sandra Fabbri 82 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de LOC e PFEstimativa de LOC e PF Funções LOC/pessoas-mes $/LOC LOC Estimado $ pessoas-mes função1 315 14 2340 32760 7.4 função2 220 20 5380 107600 24.4 função3 220 20 6800 136000 30.9 função4 240 18 3350 60300 13.9 função5 200 22 4850 108900 24.7 função6 140 28 214059920 15.2 função7 300 18 8400 151200 28.0 CUSTO ESTIMADO DO PROJETO 656680 ESFORÇO ESTIMADO DO PROJETO 144.5 ABORDAGEM 2 x : 42 Estimativas Profa. Sandra Fabbri 83 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de EsforçoEstimativa de Esforço Etapas da Construção Análise Funções Requisitos Projeto Codificação Teste Totais função1 1.0 2.0 0.5 3.5 7.0 função2 2.0 10.0 4.5 9.5 26.0 função3 2.5 12.0 6.0 11.0 31.5 função4 2.0 6.0 3.0 4.0 15.0 função5 1.5 11.0 4.0 10.5 27.0 função6 1.5 6.0 3.5 5.0 16.0 função7 4.0 14.0 5.0 7.0 30.0 1) Decompor o software em funções menores que possam ser estudadas individualmente 2) Usando Dados Históricos ou intuição, estimar para cada subfunção o ESFORÇO ( pessoas-mês) necessário em cada etapa da construção do software Estimativas Profa. Sandra Fabbri 84 Etapas da Construção Análise Funções Requisitos Projeto Codificação Teste Totais função1 1.0 2.0 0.5 3.5 7.0 função2 2.0 10.0 4.5 9.5 26.0 função3 2.5 12.0 6.0 11.0 31.5 função4 2.0 6.0 3.0 4.0 15.0 função5 1.5 11.0 4.0 10.5 27.0 função6 1.5 6.0 3.5 5.0 16.0 função7 4.0 14.0 5.0 7.0 30.0 Total 14.45 61.0 26.5 50.5 152.5 Taxa ($) 5.200 4.800 4.250 4.500 CUSTO 75.400 292.800 112.625 227.250 708.075 TÉCNICAS DE DECOMPOSIÇÃO Estimativa de EsforçoEstimativa de Esforço 3) Aplicar a TAXA de Trabalho a cada uma das Etapas de Construção do software 4) Calcular o CUSTO e o ESFORÇO para cada função e cada etapa CUSTO ESTIMADO ESFORÇO ESTIMADO 43 Estimativas Profa. Sandra Fabbri 85 MODELOS EMPÍRICOS Modelo Estático de Variável Simples Modelo Estático de Variável Simples COCOMOCOCOMO Usam fórmulas derivadas empiricamente Estimativas Profa. Sandra Fabbri 86 MODELOS EMPÍRICOS Modelo Estático de Variável Simples Modelo Estático de Variável Simples ESFORÇO E = 5.2 x LOC 0.91 (pessoas-mês) DURAÇÃO DO PROJETO D = 4.1 x LOC 0.36 (meses) TAMANHO DA EQUIPE S = 0.54 x E 0.06 (pessoas) LINHAS DE DOCUMENTAÇÃO DOC = 49 x LOC 1.01 RECURSO = C1 X ( característica estimada ) C2 Modelo de Walston e Felix - constantes derivadas de 60 projetos 44 Estimativas Profa. Sandra Fabbri 87 � Modelo 1: Modelo COCOMO Básico � modelo estático de variável simples � esforço de desenvolvimento calculado em função do tamanho do software (LOC) � Modelo 2: Modelo COCOMO Intermediário � esforço de desenvolvimento calculado em função do tamanho do software (LOC) e de um conjunto de "direcionadores de custo” � Modelo 3: Modelo COCOMO Avançado � mesmas características do modelo intermediário � avaliação do impacto dos "direcionadores de custo" em cada passo do processo de construção MODELOS EMPÍRICOS COCOMOCOCOMO (Boehm) Estimativas Profa. Sandra Fabbri 88 � Orgânico � projetos pequenos � equipes pequenas e com baixa experiência � requisitos não muito rígidos � Semi-Separado � projetos com tamanho e complexidade médios � equipes com experiências variadas � requisitos rígidos e não rígidos � Embutido � restrições rígidas de hardware, software e operacionais MODELOS EMPÍRICOS COCOMOCOCOMO São definidos para 3 classes de projetos: 45 Estimativas Profa. Sandra Fabbri 89 Básico Intermediário classes A B C D A B orgânico 2.4 1.05 2.5 0.38 3.2 1.05 semi-separado 3.0 1.12 2.5 0.35 3.0 1.12 embutido 3.6 1.20 2.5 0.32 2.8 1.20 • Modelo COCOMO Básico Esforço E = A (KLOC) B Tempo de Desenvolvimento T = C (E) D MODELOS EMPÍRICOS COCOMOCOCOMO • Modelo COCOMO Intermediário Esforço E = A (LOC) B x FAE Estimativas Profa. Sandra Fabbri 90 MODELOS EMPÍRICOS COCOMOCOCOMO FAE - Fator de Ajuste do Esforço ATRIBUTOS DIRECIONADORES DE CUSTO • Atributos do Produto: complexidade, confiabilidade exigida tamanho do banco de dados • Atributos do Hardware: restrições de desempenho, restrições de memória, etc. • Atributos Pessoais: capacidade, experiência • Atributos de projeto: uso de ferramentas, métodos, etc. Cada atributo é ponderado numa escala de 6 pontos e, através de tabelas publicadas por Boehm, obtem-se o FAE, que varia de 0.9 a 1.14 46 Estimativas Profa. Sandra Fabbri 91 • Exemplo de aplicação do COCOMO Utilizando-se os dados obtidos através da Estimativa LOC, o Modelo Básico e Semi-separado, tem-se: E = A (KLOC) B E = 3.0 (KLOC) 1,12 = 3.0 (33.3)1,12 = 152 pessoas-mes T = C (E) D T = 2.5 (E) 0.35 = 2.5 (152)0.35 = 14.5 meses Com esses valores é possível determinar um número recomendado de pessoas N = E/T = 152/14.5 = 11 pessoas MODELOS EMPÍRICOS COCOMOCOCOMO Estimativas Profa. Sandra Fabbri 92 � estimativas quantitativas do tamanho ou funcionalidade do software (LOC ou PF) � características qualitativas do projeto (complexidade, confiabilidade exigida, etc.) � descrição do pessoal de desenvolvimento e/ou ambiente de trabalho (experiência, motivação, etc.) FERRAMENTAS AUTOMATIZADAS As Técnicas de Decomposição e os Modelos Empíricos de Estimativas podem ser implementados em software. Esses softwares exigem os seguintes tipos de dados: 47 Pontos-Chaves Profa. Sandra Fabbri 93 � Quanto às Métricas: � Sem medir, não há maneira de determinar se existe melhoria � A medição resulta em mudança cultural � Ao criar uma baseline (banco de dados contendo medições do processo e do produto), engenheiros e gerentes podem ter uma melhor visão do processo e do produto � Quanto às Estimativas: � Não constituiem uma ciência exata; sempre existem Riscos � Para diminuir os Riscos, devem ser baseadas em Dados Históricos, que são construídos ao longo do tempo através da utilização de Métricas � Estimativas mais precisas devem fazer uso de várias técnicas Tabelas de conversão PF-LOC Profa. Sandra Fabbri 94 � www.qsm.com/FPGearing.html � www.theadvisors.com/langcomparison.html 48 Parte 4 - Cronograma Profa. Sandra Fabbri Conteúdo: Profa. Sandra Fabbri 96 � Cronograma �Redes PERT-CPM �Duração do Projeto � Prazos do Projeto �Gráfico de Gantt �Gráfico de Recursos � Controle �O que é Controle � Tipos de Controle � Formas de conduzir o Controle 49 Plano de Projeto de Software Profa. Sandra Fabbri 97 I. Introdução 1. Escopo e propósito do documento 2. Objetivos do Projeto II. Estimativas de Projeto 1. Dados históricos usados nas estimativas 2. Técnicas de estimativa 3. Estimativas III. Riscos do Projeto 1. Análise dos riscos 2. Administração dos riscos IV. Cronograma 1. Divisão do trabalho (work breakdown) 2. Rede de tarefas 3. Gráfico de Gantt 4. Tabela de recursos V. Recursosdo Projeto 1. Pessoal 2. Hardware e Software 3. Recursos especiais VI. Organização do Pessoal 1. Estrutura de Equipe 2. Relatórios Administrativos VII. Mecanismos de Controle VIII. Apêndices Plano de Projeto-Cronograma Profa. Sandra Fabbri 98 IV. Cronograma 1. Divisão do trabalho (work breakdown) 2. Rede de tarefas 3. Gráfico de Gantt 4. Tabela de recursos 50 Plano de Projeto-Cronograma Profa. Sandra Fabbri 99 � A precisão nos cronogramas é mais importante que a precisão nos custos � Custos adicionais: � podem ser absorvidos por várias vendas � pode ser estipulado um novo preço � O não cumprimento do cronograma: � reduz o impacto no mercado � cria insatisfação dos clientes � cria problemas com a integração dos sistemas Plano de Projeto-Cronograma Profa. Sandra Fabbri 100 DIVISÃO DO TRABALHO E DISTRIBUIÇÃO DO ESFORÇO Análise e Projeto 40-50% Atividade de Teste e Depuração 30-40% Codificação 15-20% 51 Plano de Projeto-Cronograma Profa. Sandra Fabbri 101 � As Técnicas de Estimativas levam a estimativas de pessoas-mês � A distribuição do esforço apresentada deve ser considerada uma diretriz � As características de cada projeto devem ditar a distribuição do esforço � O esforço despendido no planejamento do projeto é, em geral, de 2 a 3% do esforço total Plano de Projeto-Cronograma Profa. Sandra Fabbri 102 REDES PERT- CPM ou REDES de PLANEJAMENTO É a representação gráfica de um Programa, na qual se apresenta a seqüência lógica do Planejamento com as interdependências das tarefas, tendo por finalidade atingir um objetivo. PERT - Program Evaluation and Review Technique CPM - Critical Path Method 52 Plano de Projeto-Cronograma Profa. Sandra Fabbri 103 Tarefa Duração Interdependêndia REDE Atividade Eventos é a execução efetiva de uma operação; consome tempo e/ou rercursos corespondem a macos que caracterizam determinados instantes Plano de Projeto-Cronograma Profa. Sandra Fabbri 104 � Planejamento da Rede � identificar as Atividades � identificar a ordem em que ocorrem as Atividades � determinar a duração das Atividades 53 Plano de Projeto-Cronograma Profa. Sandra Fabbri 105 Representação da Rede evento inicial evento final identificação da atividade duração da atividade Plano de Projeto-Cronograma Profa. Sandra Fabbri 106 Tipos de Atividades ATIVIDADE DEPENDENTEATIVIDADE DEPENDENTE ATIVIDADE PARALELAATIVIDADE PARALELA A atividade B é dependente da atividade A se para iniciar B é necessário que A tenha sido concluída As atividades A e B são paralelas se elas podem ser executadas simultaneamente 54 Plano de Projeto-Cronograma Profa. Sandra Fabbri 107 � Atividades Dependentes 4 2 1 3 A B C10 10 15 A atividade C só pode ser executada depois que as atividades A e B forem concluídas Plano de Projeto-Cronograma Profa. Sandra Fabbri 108 � Atividades Dependentes As atividades C e D só podem ser executadas depois que as atividades A e B forem concluídas 4 2 1 3 A B C 10 10 15 5 D 12 55 Plano de Projeto-Cronograma Profa. Sandra Fabbri 109 � Atividades Paralelas As atividades B e C podem ser executadas simultaneamente 421 3 A B C10 10 15 D 12 Plano de Projeto-Cronograma Profa. Sandra Fabbri 110 � Atividades Paralelas As atividades B e C devem ser identificadas por origem e destino diferentes B C 10 521 4 A 10 15 D 12 3 atividade fantasma 56 Plano de Projeto-Cronograma Profa. Sandra Fabbri 111 Tempo de Execução da Rede 421 3 A B C 10 1512 Tempo de Execução = 10 + 12 + 15 = 37 Plano de Projeto-Cronograma Profa. Sandra Fabbri 112 � Para redes complexas, definem-se: � cedo do evento � tarde do evento � folga do evento � caminho crítico Tempo de Execução da Rede 57 Plano de Projeto-Cronograma Profa. Sandra Fabbri 113 0 3 10 1041 7 3 6 610 5 7 2 5 8 3 6 9 10 1 3 2 5 4 4 5 3 13 19 15 26 31 32 37 cedo do evento : tempo necessário para que o evento seja atingido, sem atrasos cedo = max ( cedo anterior + duração ) Tempo de Execução da Rede Plano de Projeto-Cronograma Profa. Sandra Fabbri 114 tarde do evento : tempo limite para a realização do evento para não atrasar o projeto tarde = min ( tarde posterior - duração ) 37 32 34 26 19 30 13 12 3 0 1041 7 3 6 610 5 7 2 5 8 3 6 9 10 1 3 2 5 4 4 5 3 0 3 10 13 19 15 26 31 32 37 Tempo de Execução da Rede 58 Plano de Projeto-Cronograma Profa. Sandra Fabbri 115 folga do evento : diferença entre o tarde e o cedo do evento folga = tarde - cedo 1041 7 3 6 610 5 7 2 5 8 3 6 9 10 1 3 2 5 4 4 5 3 0 3 10 13 19 15 26 31 32 37 37 32 34 26 19 30 13 12 3 0 15 32 0 0 0 0 0 0 0 Tempo de Execução da Rede Plano de Projeto-Cronograma Profa. Sandra Fabbri 116 caminho crítico : 3 4 1041 7 3 6 610 5 7 8 3 6 9 10 1 2 4 5 3 0 10 13 15 26 31 32 37 37 32 34 26 30 13 12 0 15 32 0 0 00 2 55 3 19 193 0 0 0 vai do evento inicial ao evento final, passa pelas atividades de maior duração e a soma das durações corresponde ao cedo do evento final (os eventos por onde ele passa têm a menor folga). Tempo de Execução da Rede 59 Plano de Projeto-Cronograma Profa. Sandra Fabbri 117 Prazos de Execução TARDE = CEDO TARDE < CEDO TARDE > CEDO não existe um prazo para elaboração do projeto existe um prazo que é menor do que o prazo normal para elaboração do projeto existe um prazo que é maior do que o prazo normal para elaboração do projeto Plano de Projeto-Cronograma Profa. Sandra Fabbri 118 0 2 4 9 16 41 2 7 3 2 5 3 4 5 8 6 A B C D E F G Cálculo do cedo dos eventos: Prazos de Execução 60 Plano de Projeto-Cronograma Profa. Sandra Fabbri 119 Cálculo do caminho crítico: Prazos de Execução 169 4 6 0 0 4 0 00 41 2 7 3 2 5 3 4 5 8 60 2 4 9 16 A B C D E F G Plano de Projeto-Cronograma Profa. Sandra Fabbri 120 169 4 6 0 0 4 0 00 41 2 7 3 2 5 3 4 5 8 60 2 4 9 16 A B C D E F G Caso 1: tarde = cedo O cliente não impôs um prazo para o término do projeto Prazos de Execução 61 Plano de Projeto-Cronograma Profa. Sandra Fabbri 121 -3 41 2 7 3 2 5 3 4 5 8 60 2 4 9 16 136 1 3 -3 -3 1 -3-3 A B C D E F G Caso 2: tarde < cedo O cliente impôs um prazo menor do que o estimado para o término do projeto Como fazer ? Prazos de Execução Plano de Projeto-Cronograma Profa. Sandra Fabbri 122 Caso 2: tarde < cedo • reestudar as atividades, considerando o custo de implementação • iniciar pelas atividades críticas • cuidar para que a redução de uma atividade crítica não consuma a folga de uma não crítica Prazos de Execução 62 Plano de Projeto-Cronograma Profa. Sandra Fabbri 123 Caso 2: tarde < cedo • produzir uma tabela com os seguintes dados: atividades duração custo duração custo diferença diferençacusto/ do c.crítico normal normal acelerada acelerado custos durações unid.ac. 1-3 4 5.000 2 7.000 2.000 2 1.000 3-4 5 300 4 350 50 1 50 4-5 7 2.000 5 2.500 500 2 250 custo da aceleração: 1 x (3-4) + 2 x (4-5) = 50 + 500 = 550 Prazos de Execução Plano de Projeto-Cronograma Profa. Sandra Fabbri 124 Caso 2: tarde < cedo • refazer a rede de acordo com as novas datas atividades aceleradas: 1 x (3-4) + 2 x (4-5) 0 41 2 5 3 2 5 3 4 4 8 60 2 4 8 13 138 4 5 0 0 3 00 A B C D E F G Prazos de Execução 63 Plano de Projeto-Cronograma Profa. Sandra Fabbri 125 3 41 2 7 3 2 5 3 4 5 8 60 2 4 9 16 1912 7 9 3 3 7 33 A B C D E F G Caso 3: tarde > cedo O cliente impôs um prazo maior do que o estimado para o término do projeto Como fazer ? Prazos de Execução Plano de Projeto-Cronograma Profa. Sandra Fabbri 126 Caso 3: tarde > cedo • reestudar as atividades, considerando o custo de implementação, para tentar economizar realizando as atividades em ritmo mais lento Prazos de Execução 64 Plano de Projeto-Cronograma Profa. Sandra Fabbri 127 Caso 3: tarde > cedo • produzir uma tabela com os seguintes dados: atividades duração custo duração custo diferença diferença custo/ do c.crítico normal normal lenta lento custos durações unid.desac. 1-3 4 5.000 6 4.500 500 2 250 3-4 5 300 6 300 --- 1 --- 4-5 7 2.000 9 1.900 100 2 50 economia da desaceleração: 2 x (1-3) + 1 x (4-5) = 500 + 50 = 550 Prazos de Execução Plano de Projeto-Cronograma Profa. Sandra Fabbri 128 Caso 3: tarde > cedo • refazer a rede de acordo com as novas datas atividades desaceleradas: 2 x (1-3) + 1 x (4-5) 0 41 2 8 3 2 5 3 6 5 8 60 2 6 11 19 1911 6 8 0 0 3 00 A B C D E F G Prazos de Execução 65 Plano de Projeto-Cronograma Profa. Sandra Fabbri 129 análise e especificação projeto dados codificação planejamento testes revisão requisitos revisão projeto preliminar projeto procedimental procedimentos testes teste de unidade revisão procedimentos testes walkthrough projeto walkthrough codificação teste integração teste validação Exemplo de uma Rede de Tarefas Plano de Projeto-Cronograma Profa. Sandra Fabbri 130 GRÁFICO DE GANTT Tem por objetivo mostrar a duração de cada tarefa. Seu mérito está na simplicidade. 66 Plano de Projeto-Cronograma Profa. Sandra Fabbri 131 Atividade Duração 5 10 15 20 25 A B C Gráfico de Gantt planejado realizado Plano de Projeto-Cronograma Profa. Sandra Fabbri 132 TAREFA 3 Gráfico de Gantt planejado realizado | | | | | | | | | | | | | | | | | j f m a m j j a s o n d j f m a m João Ana Maria Jorge Pedro Marta TAREFA 1 TAREFA 2 TAREFA 10 TAREFA 4 TAREFA 5 TAREFA 6 TAREFA 8 TAREFA 7 TAREFA 9 + + + + +Pontos de Controle 67 Plano de Projeto de Software Profa. Sandra Fabbri 133 I. Introdução 1. Escopo e propósito do documento 2. Objetivos do Projeto II. Estimativas de Projeto 1. Dados históricos usados nas estimativas 2. Técnicas de estimativa 3. Estimativas III. Riscos do Projeto 1. Análise dos riscos 2. Administração dos riscos IV. Cronograma 1. Divisão do trabalho (work breakdown) 2. Rede de tarefas 3. Gráfico de Gant 4. Tabela de recursos V. Recursos do Projeto 1. Pessoal 2. Hardware e Software 3. Recursos especiais VI. Organização do Pessoal 1. Estrutura de Equipe 2. Relatórios Administrativos VII. Mecanismos de Controle VIII. Apêndices Plano de Projeto-Controle Profa. Sandra Fabbri 134 VII. Mecanismos de Controle 68 Plano de Projeto-Controle Profa. Sandra Fabbri 135 O que é Controle? É a comparação entre o “efetivo” e o “planejado” com as providências necessárias para o enquadramento dos resultados na conjuntura apreciada, a fim de não produzir desvio em relação ao previsto. Para que um Controle tenha eficiência é preciso que o seu método seja simples e que o planejamento tenha sido bem elaborado. Plano de Projeto-Controle Profa. Sandra Fabbri 136 Tipos de Controle por Pontos-Chaves por Atividades por Períodos controla eventos que constituem pontos de amarração de trechos de redes nos quais o cumprimento do tarde do evento é de máxima importância mantém atenção especial sobre cada atividade ou sobre determinadas atividades, consideradas mais importantes faz um apanhado da situação de tempos em tempos; o intervalo escolhido depende do projeto 69 Plano de Projeto-Controle Profa. Sandra Fabbri 137 � Formas de conduzir o rastreamento e controle (tracking) do projeto � realizar reuniões periódicas sobre a situação do projeto, com relato do progresso e dos problemas � avaliar os resultados de todas as revisões conduzidas ao longo do processo de engenharia do software � determinar se os marcos de referência formais foram atingidos até a data programada � comparar a data de início real com a data de início planejada para cada tarefa do projeto � fazer reuniões informais para obter avaliações subjetivas do progresso do projeto Pontos-Chaves Profa. Sandra Fabbri 138 � A Rede de Tarefas e o Gráfico de Gantt constituem um meio simples e eficiente de alocação de tempo e recurso para o projeto � O Controle do Projeto tem por objetivo verificar se o cronograma está sendo cumprido e rearranjar as atividades caso isso seja necessário 70 ...Em Resumo... Profa. Sandra Fabbri 139 Planejar: estabelecer objetivos claros e detalhados que serão alcançados entre a situação atual e o objetivo final, juntamente com uma definição do trabalho necessário para alcançá- los Organizar: fazer o levantamento dos recursos necessários para por em prática o trabalho especificado no planejamento, numa estrutura eficaz Integrar: manter a unidade e a livre operação de recursos, principalmente os elementos humanos, durante a execução do planejado Medir: obter uma contínua realimentação sobre o andamento do que foi planejado Revisar: modificar o plano, a organização e, possivelmente, os objetivos para acomodar as discrepâncias reveladas pela medição Gerenciamento de Projeto é a execução repetida das atividades
Compartilhar