Riscos!? Que riscos?

Riscos é um assunto que deixa muitos incomodados, afinal muitas vezes, principalmente em projetos de software, ele é visto como algo negativo, um empecilho que pode ocorrer e diminuir as chances de sucesso do projeto.

E o perigo maior está quando não identificamos o risco, e o impacto dele pode comprometer todo o projeto. Fazendo uma analogia, seria como você descobrir que o botijão de gás está vazando ao ligar a lâmpada, ou seja, tarde demais… BOOMM!!!

Assustador não é?

Por isso, o gerenciamento de riscos é algo muito importante no seu projeto. A seguir, irei falar um pouco sobre ele, espero que gostem e que possa ser útil. 🙂

De onde vem os riscos?

no Futuro … que pode ser duvidoso e nos forçar a mudanças…
nas Mudanças … que podem ser inúmeras e nos forçam a decisões…
nas Decisões … que podem não ser as mais corretas…
  • Do futuro: que pode ser duvidoso e nos forçar a mudanças;
  • Das mudanças: que podem ser inúmeras e nos forçam a decisões;
  • Das decisões: que podem não ser as mais corretas.

Riscos em Engenharia de Software

  • Do futuro: do ambiente interno e externo, mercado, tecnologia, economia, governo , etc;
  • Das mudanças: do ambiente, dos requisitos dos clientes, em ambientes tecnológicos, equipamentos, política econômica e tecnológica, leis e programas de apoio a P&D, orçamentos., etc;
  • Das decisões: O que produzir? Com que métodos e ferramentas? Com que equipe? Com que nível de qualidade? Com qual orçamento? etc.

O processo de gerenciamento de riscos

Sendo o gerenciamento de riscos um conjunto de técnicas e ferramentas para identificar, estimar, avaliar, monitorar e administrar os acontecimentos que colocam em risco a execução do projeto. Podemos ilustrar o processo de gerenciamento de riscos, proposto pelo PMBOK, da seguinte maneira:

Processo de Gerenciamento de Riscos

  • Planejamento do gerenciamento de riscos – decisão de como abordar, planejar e executar as atividades de gerenciamento de riscos de um projeto;
  • Identificação de riscos – determinação dos riscos que podem afetar o projeto e documentação de suas características;
  • Análise qualitativa de riscos – priorização  dos riscos para análise ou  ação adicional subsequente  através de avaliação  e combinação de sua probabilidade de ocorrência e impacto;
  • Análise quantitativa de riscos – análise numérica do efeito dos riscos identificados nos objetivos gerais do projeto;
  • Planejamento de respostas a riscos – desenvolvimento de opções e ações para aumentar as oportunidades e reduzir as ameaças aos objetivos do projeto;
  • Monitoramento e controle de riscos – acompanhamento dos riscos identificados, monitoramento dos riscos residuais, identificação dos novos riscos, execução de planos de respostas  a riscos  e avaliação  da sua eficácia durante todo o ciclo de vida do projeto.

Ao meu entender, as quatro primeiras etapas compõem a análise de riscos, que é algo de extrema importância para qualquer projeto, independente da sua natureza.

E para o nosso mundo de desenvolvimento de software a análise de riscos é essencial, pois o nosso projeto está sempre rondado de riscos, e precisamos estar atentos a eles.

É importante lembrar que o objetivo do gerenciamento de riscos é aumentar a probabilidade e o impacto dos eventos positivos e diminuir a probabilidade e o impacto dos eventos adversos ao projeto.

Tem como garantir que nenhum risco irá afetar o meu projeto?

Não. Infelizmente não tem como garantir que os riscos não irão causar impacto no seu projeto. Mas calma, nem tudo está perdido. Podemos utilizar três estratégias para lidar com os riscos e diminuir a probabilidade deles ocorrerem:

  1. Prevenir: como já diz aquele velho e bom ditado popular “prevenir é o melhor remédio”, e no gerenciamento dos riscos essa é a melhor ação que podemos executar. Muitas vezes precisamos realizar mudanças no plano do projeto para eliminar a ameaça que um risco pode apresentar. Podemos também isolar os objetivos do projeto do impacto que o risco pode oferecer ou ainda flexibilizar o objetivo que está sendo ameaçado pelo risco;
  2. Transferir: essa é uma ação que não elimina o risco, e sim passa o gerenciamento dele para um terceiro. Por exemplo: você irá terceirizar uma determinada parte do seu sistema para outra empresa. Um dos riscos que você terá é do atraso da entrega dessa parte do sistema, e para tentar compensar o impacto que esse risco poderá ter para a sua empresa, você pode colocar no contrato uma multa em caso de atraso;
  3. Mitigar: o foco da mitigação de riscos é a redução da probabilidade e/ou impacto de um risco até um limite aceitável. Um exemplo, seria a realização de TDD para diminuir a probabilidade e impacto do risco de falhas do sistema, já que aumentaria a qualidade do desenvolvimento do software.

O que pode acontecer se não houver uma análise dos riscos no meu projeto?

Como diria um professor meu: “coisas horríveis irão acontecer”.

Cena do filme Tropa de Elite

A análise de riscos é fundamental para o gerenciamento de riscos e um fator chave para o sucesso do seu projeto. É uma maneira de agir proativamente diante dos riscos e é muito melhor do que agir de forma reativa, pois talvez dependendo do risco que não foi tratado e do impacto ocasionado por ele, poderá ser muito tarde para tomarmos alguma providência.

A análise de riscos pode ter algum impacto para a minha área de testes?

Sim, e se bem realizada poderá ser um impacto muito benéfico para a equipe de testes. Pois será mais uma fonte de consulta na hora da elaboração dos testes e ainda poderá ajudar na priorização da execução dos testes. Por exemplo: na análise de riscos de uma manutenção do software está descrito quais áreas poderão ser afetadas pela manutenção, ou seja, novos bugs poderão ser introduzidos nessas áreas. Sendo assim poderemos focar os testes de regressão primeiro nas áreas que tem maior chance de ter sido impactada e desta maneira, podemos encontrar a falha mais cedo = menos $$$ gasto com o bug.

Além do mais, sabemos que garantir que 100% do sistema não tem falhas é algo muito difícil e na maioria das vezes não viável. Portanto com a análise de riscos podemos garantir por exemplo, que 90% das falhas do sistema foram encontradas e que os outros 10% possam ser falhas de baixo impacto no sistema. Já sem uma análise de riscos poderíamos talvez, garantir que 99% das falhas foram encontras, mas daí o 1% que faltou pode ser uma falha crítica. Aí já sabe neh…

Sendo tão importante, por que às vezes a análise de riscos não é realizada?

Pois muitos preferem ficar na segurança e conforto da ignorância. Sabe aquelas pessoas que falam, nem precisa testar está funcionando. Então, uma das razões para essa pessoa falar isso é que ela sabe que se você for testar irá achar um monte de falhas que irá dá mais trabalho para ela.

Com os riscos o cenário é parecido. Se você for fazer uma análise de riscos, com certeza irá encontrar muitos riscos e ainda terá várias outras “razões” para evitar a  análise de riscos:

  • Análise de Riscos “consome” tempo precioso dos membros da equipe do Projeto ;
  • Análise de Riscos demonstra “ Análise de Riscos demonstra problemas que “só atrapalham”;
  • Análise de Riscos tem tendência de “ Análise de Riscos tem tendência de trazer “más notícias”;
  • Análise de Riscos pode levar a “ Análise de Riscos pode levar a situações “embaraçosas”;
  • Análise de Riscos acelera a necessidade de levantar questões que, cedo ou tarde, deveriam ser percebidas pelo Cliente do Projeto.

Portanto, se você não quer ter nenhuma explosão no seu projeto, por favor, identifique, analise, administre e controle os seus riscos. Caso contrário, você um dia poderá ter uma surpresa desagradável ao chegar ao trabalho.

Fique por dentro das novidades, assine o feed do QualidadeBR.

Fonte:

Um Guia do Conjunto de Conhecimentos em Gerenciamento de Projetos (Guia PMBOK); Terceira edição, 2004. Project Management Institute, Four Compus Boulevard, Newton Square, PA 19073-3299 EUA.

www.inf.ufsc.br/~cybis/ine5617/Analise_riscos.ppt (Walter de Abreu Cybis)

www.pmimg.org.br/…/GestaoRiscosProjetos_LucioDiniz_31082004. (Lúcio J. Diniz)


Anúncios

Qualidade de Software – Processo ou Projeto?

Essa é uma daquelas perguntas que muitos responderiam começando com “Veja bem” e como já diria um amigo meu, quando você inicia uma resposta com “Veja bem” você provavelmente irá enrolar, o popular “encher lingüiça”.

Antes de responder a essa pergunta precisamos, definir e diferenciar projeto de processo:

Um projeto é um esforço temporário empreendido para criar um produto, serviço ou resultado exclusivo. (PMBOK)

Um conjunto de atividades, métodos, práticas e tecnologias que as pessoas utilizam para desenvolver e manter software e produtos relacionados. (CMM)
Pela própria definição já conseguimos notar a diferencia principal entre projeto e processo, que é a duração de cada um. O projeto tem início, meio e fim, já o processo é contínuo. Para exemplificar essa diferença, vou usar dois exemplos:
O casamento é um projeto, ele tem início com os requisitos (igreja, tipo de comemoração, lua-de-mel, etc), meio com a elaboração do projeto (tempo, pessoas envolvidas, etc) e com a execução (convite dos convidados, aluguel do local da festa) e por fim o casamento em si.
A vida de casal seria (ou deveria ser) um processo, pois é contínua, já possui procedimentos (ex. almoço na casa da sogra no domingo) e artefatos (ex. o próprio almoço na casa da sogra) estabelecidos.
Qualidade de Software como processo
A Qualidade de Software é vista como processo, quando ela já tem um processo definido, regular e previsível, todo input (entrada) feito para a Qualidade de Software respeitará esse processo. Um exemplo seria a área de Qualidade de uma fábrica de Software, cujos softwares desenvolvidos passam pela Qualidade seguindo o processo dessa área. Ou seja, o processo será sempre reusado, o máximo que haverá será customizações e melhorias.
Qualidade de Software como projeto
Um grande projeto será desenvolvido pela empresa XPTO e será necessário o envolvimento da equipe de Qualidade atual da empresa e a contratação de novos funcionários. A equipe de Qualidade notou que o seu processo não está adequado para a magnitude do projeto, portanto ele terá que sofrer grandes modificações.
No caso citado acima, a Qualidade de Software será um “subprojeto” do projeto, portanto ele pode ser classificado como projeto de Qualidade de Software, afinal os esforços a serem dedicados serão temporários (o período do projeto). Haverá necessidades de renovação, mudança, criação e inovação, e o fluxo estabelecido poderá ser válido só para aquele projeto, e muitas vezes ele não será reusado em sua integridade em outros projetos, portanto ele se torna singular.
Conclusão
A visão de Qualidade de Software muitas vezes é confundida entre projeto e processo, ambos podem ser associados a Qualidade de Software. O diferencial para ela ser um processo ou um projeto será a maneira que ela é implantada na empresa. O importante é definir as atividades, métodos, práticas e tecnologias, pois são eles os componentes tanto de um processo quanto de um projeto.

Fique por dentro das novidades, assine o feed do QualidadeBR.
Subscribe