Ciência da Computação ENGENHARIA DE SOFTWARE Análise dos Riscos Prof. Claudinei Dias email: [email protected] Engenharia de Software 2011-2 Roteiro • Introdução • Análise dos Riscos • Atividades • Princípios da Análise • Especificação Engenharia de Software 2011-2 2/16 Introdução • Na prática, a definição de cronogramas dos projetos é feita de maneira arbitrária; • Os riscos do projeto só são considerados quando eles transformaram-se em problemas reais; • A organização da equipe nem sempre é clara e feita de forma consciente. • Risco (PMBOK) – Identificação dos riscos – Análise quantitativa – Análise qualitativa – Planejamento de resposta ao risco – Planejamento de gerência de risco Engenharia de Software 2011-2 3/16 Análise dos Riscos • É uma série de passos que permitem atacar ativamente os riscos (técnicos e de projeto), como a sua identificação e avaliação, priorização, estratégias de administração dos riscos, monitoramento e sua resolução. • A análise dos riscos é uma das atividades essenciais para o bom encaminhamento de um projeto de software. Esta atividade está baseada na realização de quatro tarefas, conduzidas de forma seqüencial: – – – – a identificação, a projeção, a avaliação , a administração. Engenharia de Software 2011-2 4/16 Análise de Riscos • Preparar-se para a Gerência de Riscos • Determinar Fontes e Categorias de Riscos • Definir Parâmetros de Riscos • Estabelecer uma Estratégia para a Gerência de Risco • Identificar e Analisar Riscos • Identificar Riscos • Avaliar, Categorizar e Priorizar Riscos • Mitigar Riscos • Desenvolver Planos de Mitigação de Riscos • Implementar Planos de Mitigação de Riscos Engenharia de Software 2011-2 5/16 Análise de Riscos • Passos: – Identificação; – Projeção e Avaliação; – Refinamento; – Administração e Monitoração. Engenharia de Software 2011-2 6/16 Análise de Riscos (cont.) Identificação dos Ricos: • Nesta primeira tarefa, o objetivo é que sejam levantados, da parte do gerente e dos profissionais envolvidos no projeto, todos os eventuais riscos aos quais este será submetido. Nesta identificação, riscos de diferentes naturezas podem ser detectados: – – – – – – – Projeto (orçamento, pessoa, cronograma); Técnico (manutenção, implementação, testes, interfaces); Negócio ou Produto (falta de interesse, dificuldade de venda, fora da estratégia e perda de apoio do comando). Financeiros; Pessoal; Estimativas; Requisitos. Engenharia de Software 2011-2 Análise de Riscos (cont.) Identificação dos Ricos: • Uma boa técnica para conduzir a identificação dos riscos de forma sistemática é o estabelecimento de um conjunto de questões (checklist) relacionado a algum fator de risco – – – – – – – Tamanho do Produto; Impacto no negócio; Características do cliente (sofisticação e comunicação); Definição do Processo (Definição e acompanhamento); Ambiente de desenvolvimento (qualidade); Tecnologia para construção (complexidade e novidade); Tamanho e experiência da equipe. Engenharia de Software 2011-2 Análise de Riscos (cont.) Identificação dos Ricos: • Checklist: – são os melhores profissionais disponíveis? – os profissionais apresentam a combinação certa de capacidades? – há pessoas suficientes na equipe? – os profissionais estão comprometidos durante toda a duração do projeto? – algum membro da equipe estará em tempo parcial sobre o projeto? – os membros da equipe estão adequadamente treinados? Engenharia de Software 2011-2 Análise de Riscos (cont.) • Projeção dos Riscos • Projeção pode ter dois modos: – Qual a probabilidade de que o risco ocorra durante o projeto? – Quais as conseqüências dos problemas associados ao risco no caso de ocorrência do mesmo? Engenharia de Software 2011-2 Análise de Riscos (cont.) • Atividades que ajudam a responder estas questões: – estabelecimento de uma escala que reflita a probabilidade estimada de ocorrência de um risco; – estabelecimento das conseqüências do risco; – estimativa do impacto do risco sobre o projeto e sobre o software (produtividade e qualidade); – anotação da precisão global da projeção de riscos. • Três fatores influenciam no impacto que os problemas associados ao risco terão sobre o projeto: – – – Natureza; Escopo; Período. Engenharia de Software 2011-2 Análise de Riscos (cont.) Riscos Categoria Probabilidade Impacto Estimativa baixa do Tamanho Estimativa 60% 2 Num. Usuários maior que planejado Tamanho 30% 3 Tecnologia insatisfatória Tecnologia 30% 1 Financiamento será perdido Financeiro 40% 1 Menos reuso que o planejado Tamanho 70% 2 Usuários finais resistem ao sistema Negócio 40% 3 Cliente modificará os requisitos Requisitos 80% 2 Valores de Impacto: 1 – Catastrófico; 2 – Crítico; 3 – Marginal; 4 - Negligível Engenharia de Software 2011-2 Análise de Riscos (cont.) • Avaliação (processar informações): – Fator; – Probabilidade; – Impacto. • Definir nível de risco referente; • Exemplos em nível de risco: breakpoint Ultrapassagem dos prazos Ultrapassagem dos custos – Custo; – Desempenho; – Prazos. Engenharia de Software 2011-2 Análise de Riscos (cont.) • Refinamento (decompor mais detalhadamente); • Administração e Monitoração (definir formas de controle, tomar medidas para evitá-los): – – Influência nos Custos e prazos; Registrar os riscos em um documento (um formulário para cada risco). Engenharia de Software 2011-2 Análise de Riscos (cont.) • Por exemplo, considerando a alta rotatividade de pessoal numa equipe um fator de risco, com base em dados de projetos passados, obtém-se que a probabilidade de ocorrência deste risco é de 0,70 (muito elevada) e que a sua ocorrência pode aumentar o prazo do projeto em 15% e o seu custo global em 12%. Sendo assim, podem-se propor as seguintes ações de administração deste fator de risco: – reuniões com os membros da equipe para determinar as causas da rotatividade de pessoal (más condições de trabalho, baixos salários, mercado de trabalho competitivo, etc...); – tomada de providências para eliminar ou reduzir as causas "controláveis" antes do início do projeto; – no início do projeto, pressupor que a rotatividade vai ocorrer e prever a possibilidade de substituição de pessoas quando estas deixarem a equipe; – organizar equipes de projeto de forma que as informações sobre cada atividade sejam amplamente difundidas; – definir padrões de documentação para garantir a produção de documentos de forma adequada; Engenharia de Software 2011-2 Bibliografia BIBLIOGRAFIA BÁSICA: PRESSMAN, R.S. Engenharia de Software. Mc Graw Hill, 5ª Edição 2001. SOMMERVILLE,I. Engenharia de Software. Addison Wesley, 6ª Edição 2003. REZENDE,D.A. Engenharia de Software e Sistemas de Informação. Brasport, 2ª edição. BIBLIOGRAFIA COMPLEMENTAR: WEBER,K.C. et all. Qualidade e produtividade em Software. Makron Books, 1999. ROCHA,A.R.C et all; Qualidade de Software. Editora Linarth, 1999. Anais do SBES - Simpósio Brasileiro de Engenharia de Software. SEI. SOFTWARE ENGINEERING INSTITUTE. CMMI for Development (CMMI-DEV), Version 1.2, Technical report CMU/SEI-2006-TR-008. Pittsburgh, PA: Software Engineering Institute, Carnegie Mellon University, 2006. SOFTEX. MPS.BR - Melhoria de Processo do Software Brasileiro. Guia Geral, versão 1.2. 2007. ABNT – ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISO/IEC 12207 – Tecnologia de informação Processos de ciclo de vida de software. Rio de Janeiro, 1998. ISO/IEC - The International Organization for Standardization and The International Electrotechnical Commission, ISO/IEC TR 15504 Software Process Assessment. 1998. Engenharia de Software 2011-2 16/26