GERÊNCIA DE RISCOS E ESCOPO EM PROJETOS DE DESENVOLVIMENTO DE SOFTWARE Viviana Regina Weber 1 Anderson Yanzer Cabral 2 RESUMO O presente artigo tem como objetivo apresentar uma pesquisa, em desenvolvimento, que busca proporcionar melhorias no que diz respeito ao Gerenciamento de Escopo e Gerenciamento de Riscos durante Projetos de Desenvolvimento de Software. A necessidade originou-se da extrema precariedade presente nos métodos de Gerenciamento de Projetos, aplicados pela maioria das empresas desenvolvedoras de software, e que comprometem o resultado de seu trabalho. Para possibilitar a concretização desta pesquisa, a mesma está baseada em um estudo de caso, tendo como foco uma empresa de Consultoria em Informática. INTRODUÇÃO É incontestável a necessidade e importância da Gerência de Projetos em desenvolvimento de software, pois se percebem muitos problemas, por vezes graves, durante este processo. Por se tratar de atividades futuras, e, portanto, imprecisas, é impossível evitar que mudanças ocorram durante o curso das atividades de desenvolvimento de software. Porém, tais mudanças podem trazer conseqüências indesejadas que comprometem o resultado do projeto, representando riscos ao mesmo. Saber mensurar e prever possíveis riscos, que venham a trazer resultados negativos, comprometendo o projeto como um todo, é um grande desafio, além de uma preocupação das empresas que desenvolvem software. Além disso, sabe-se que a definição do Escopo é uma das principais atividades de iniciação de um projeto. Nela, estão presentes todos os requisitos, solicitações, planejamento e programação de ações necessárias para a execução do mesmo. É o Escopo que guiará as demais etapas do projeto. Se esta etapa for gerenciada de maneira eficaz, as chances de o Projeto obter sucesso tornam-se muito maiores. 1 Acadêmica do Curso de Sistemas de Informação pela Ulbra Guaíba 2 Professor Orientador do Curso de Sistemas de Informação da ULBRA Guaíba
Portanto, tendo em mente a importância e a necessidade de um bom planejamento de Escopo para um Projeto de Desenvolvimento de Software, e que riscos estão presentes durante todo o seu ciclo de vida, é inevitável que haja uma atenção especial para os inúmeros riscos a que o Escopo de Projeto está sujeito. Por este motivo, tona-se indispensável o aperfeiçoamento de técnicas utilizadas pelas empresas tanto no gerenciamento de riscos quanto de escopo a fim de garantir sua competitividade no mercado, através do desenvolvimento de software de qualidade. OBJETIVOS DO TRABALHO Este trabalho se propõe a realizar uma pesquisa na área de Gerência de Riscos, apresentando propostas metodológicas e tecnológicas, que possam contribuir com a qualidade do produto desenvolvido e a satisfação do cliente. Destaca-se que o foco está no controle do Escopo de Projetos, principalmente pelo fato do mesmo constituir uma importante fase de todo o desenvolvimento, uma vez que ele norteia qual será o esforço necessário para a entrega do produto que atenda às necessidades que originaram o projeto. Desta forma, como objetivo geral, este trabalho visa apresentar uma proposta para Gerência de Riscos no planejamento, controle e execução do Escopo em Projetos de Desenvolvimento de Software. Como objetivos específicos, pretende-se apresentar durante a execução do trabalho: 1) Levantamento do estado da arte em Gerência de Escopo e Gerência de Riscos em projetos e, mais especificamente, no desenvolvimento de software; 2) Propor uma metodologia para Gerência de Riscos no planejamento, controle e execução do Escopo; 3) Apontar ou implementar ferramentas para facilitar a Gerência de Riscos e Escopo. REFERENCIAL TEÓRICO Para este trabalho serão abordados os seguintes tópicos que contribuirão no embasamento teórico: UML, PMBOK, Gerência de Projetos, Gerência de Escopo e Gerência de Riscos. UML
A UML The Unified Modeling Language ou Linguagem de Programação Unificada - permite modelar sistemas de software Orientados a Objeto, constituindo-se em uma poderosa ferramenta que possibilita especificar, visualizar, documentar e construir seus componentes (Booch; Rumbaugh; Jacobson, 2000). Através de seu uso é possível (Furlan, 1998): Mostrar as fronteiras de um sistema e suas funções principais utilizando atores e casos de uso; Ilustrar a realização de casos de uso com diagramas de interação; Representar uma estrutura estática de um sistema utilizando diagramas de classe; Modelar o comportamento de objetos com diagramas de transição de estado; Revelar a arquitetura de implementação física com diagramas de componente e de implantação; Estender sua funcionalidade através de estereótipos. Através dela, é possível criar inúmeros diagramas que representarão determinada parte de um sistema, através da utilização de inúmeros elementos de modelo. PMBOK (Project Management Body of Knowledge) O PMBOK é um guia que tem, como principal objetivo, identificar o subconjunto do Conjunto de conhecimentos em gerenciamento de projetos que é amplamente reconhecido como boa prática (PMBOK, 2004). Sendo utilizado como base pelo Project Management Institute (PMI), o Guia é uma ferramenta de auxílio aos profissionais de gerência de projetos. Porém, é necessário adaptar o conhecimento apresentado conforme as particularidades e necessidades de cada projeto, determinando o que lhe é adequado ou não (PMBOK, 2004). GERÊNCIA DE PROJETO Projeto pode ser considerado como um empreendimento temporário realizado para criar um produto singular (Valeriano, 2005). Para algumas empresas, toda tarefa ou atribuição é considerada um projeto que necessita de alguém que o gerencie. Desta forma, a gerência de projetos é a capacidade de administrar uma série de tarefas cronológicas que resultam em uma meta desejada (Phillips, 2003).
O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de atender aos seus requisitos (PMBOK, 2004). Para gerenciar um projeto é necessário: Identificar as necessidades; Definir os objetivos de forma clara e alcançável; Balancear os conflitos entre demandas de qualidade, escopo, tempo e custo; Adaptar as especificações, planos e abordagens às mais variadas expectativas das diversas partes interessadas. GERÊNCIA DE ESCOPO Pode-se definir Gerência de Escopo como os processos nos quais são definidos os objetivos do projeto, abordagem e conteúdo, de forma a especificar o que se pretende obter, de que forma fazê-lo e quais ações estão envolvidas. Deve definir todo e somente o trabalho necessário para a execução do projeto de forma bem sucedida (Valeriano, 2005). No contexto do projeto, o termo escopo pode se referir a (PMBOK, 2004): Escopo do produto as características e funções que descrevem um produto, serviço ou resultado. Escopo do projeto o trabalho que precisa ser realizado para entregar um produto, serviço ou resultado com as características e funções especificadas. É de grande importância que o Escopo de um Projeto seja bem definido, a fim de evitar mal entendidos entre as pessoas envolvidas no projeto, o que pode acarretar em falsas expectativas e insatisfação, principalmente por parte do cliente (Martins, 2005). GERÊNCIA DE RISCO O modelo de desenvolvimento em espiral (Figura 1), criado por Barry Boehm no final dos anos 80, foi a primeira proposta para incluir a Gerência de Risco no ciclo de vida de desenvolvimento de software. A iteratividade e o fato de ser dirigido aos riscos são suas principais características. Neste modelo, a análise dos riscos do projeto é feita a cada iteração (Knob; Silveira; Orth; Prikladnicki, 2005). Entende-se como Gerência de Risco todos os processos necessários para identificar, analisar, responder, monitorar e controlar os riscos de um projeto, através de um planejamento do gerenciamento dos mesmos (PMBOK, 2004).
Ela é constante durante todo o projeto, tendo como objetivos maximizar a probabilidade de riscos favoráveis ao projeto ocorrerem, e minimizar a probabilidade dos riscos negativos (Valeriano, 2005). O risco do projeto é um evento ou condição incerta que, se ocorrer, terá um efeito positivo ou negativo sobre pelo menos um objetivo do projeto, como tempo, custo, escopo ou qualidade. (PMBOK, 2004). Figura 1 SOLUÇÃO PROPOSTA Estudos comprovam que o ser humano vive em constante processo de evolução. E isto está relacionado a tudo o que o cerca, seu organismo, seus meios de sobrevivência, pois seu aprendizado e adaptação são constantes. E isto também não é diferente quando se trata de Tecnologia da Informação, ou, mais especificamente, dos métodos de desenvolvimento de software. Por ser uma área relativamente recente, onde vários estudos ainda estão sendo realizados, existem processos e métodos que necessitam de aperfeiçoamento. Não podemos negar os grandes avanços já conquistados. Porém, estatísticas comprovam, em dados alarmantes, a insatisfação originada
por produtos resultantes de Projetos de Desenvolvimento de Software carentes de métodos eficazes de Gerenciamento. Os cenários são sempre muito semelhantes: falsas expectativas geradas para o cliente, orçamentos e prazos que ultrapassam o planejado, o que resulta na insatisfação do cliente que, por vezes não vê suas necessidades atendidas. Vivenciando este processo mais de perto, tendo como referência uma empresa de Consultoria em Informática, foi possível perceber que o Gerenciamento de Projetos está muito focado nas experiências anteriormente vividas, no filling do gerente de projetos, onde tentativas e erros mostram quais decisões e atitudes obtiveram resultados positivos. Não é raro presenciar projetos que não foram entregues na data prevista, funcionários trabalhando além do seu horário normal a fim de finalizar o projeto nos prazos acordados, causando-lhes extrema carga de stress. Porém, o atraso na entrega do projeto, é um risco conhecido pela empresa, que aposta em ciclos de desenvolvimento de 3 (três) a 4 (quatro) meses para que o mesmo se torne vendável, uma vez que clientes não têm interesse em contratar projetos com duração acima deste prazo. Também nota-se a ausência de um planejamento dos riscos. Há um foco no cronograma das atividades, sendo que, através de reuniões semanais de acompanhamento dos projetos, são analisadas as atividades executadas na semana anterior e os requisitos necessários para a execução das atividades da semana seguinte. Nestas reuniões são expostos os problemas encontrados e avaliado os riscos que os mesmos representam para o projeto. Ou seja, na medida em que os riscos vão sendo encontrados, decide-se a maneira de tratá-los. Por vezes, para não perder o cliente, a empresa assume custos adicionais, ou seja, fica no prejuízo, assumindo horas adicionais de trabalho a fim de entregar o produto que o cliente esperava. Baseado nestes problemas, o presente trabalho irá apresentar um mapeamento detalhado dos processos de gerenciamento de projetos de desenvolvimento de software utilizados pela empresa, focando no gerenciamento do escopo. Com isso, espera-se encontrar alguns pontos falhos, ou impróprios, que possam ser melhorados ou adaptados através de um processo de gerenciamento de riscos efetivo que seja aderido pela empresa e esteja presente no seu dia-a-dia. Serão seguidos os padrões do Guia PMBOK (PMBOK, 2004) para realizar a adaptação destes processos. Após esta análise, uma pesquisa será realizada a fim de encontrar ferramentas de gerenciamento de riscos, disponíveis no mercado, que melhor atendam às necessidades que foram identificadas durante o processo descrito acima. Pela escassez de ferramentas até então
encontradas, haverá um estudo para o possível desenvolvimento de uma ferramenta focada na solução dos problemas encontrados durante o mapeamento dos processos da empresa estudada. Deste modo, com a adaptação da empresa, seguindo processos efetivos de Gerência de Riscos, esperam-se reduzir, substancialmente, os problemas encontrados durante o desenvolvimento de software, possibilitando à mesma realizar processos preventivos aos riscos. Além disso, é importante que a mesma esteja preparada para agir no momento em que os riscos ocorrerem. Acredita-se que haverá uma melhoria em todas as fases de desenvolvimento de um projeto, garantindo que cronograma e orçamento, por exemplo, sejam cumpridos da forma mais fidedigna possível. Maiores detalhes estarão presentes e poderão ser consultados no Relatório Final deste trabalho. CONCLUSÃO As informações trazidas por este trabalho demonstram um longo caminho a ser percorrido a fim de que empresas desenvolvedoras de software atinjam o Estado da Arte em Gerência de Projetos. Muitos problemas são encontrados durante este processo, mas, assim como este trabalho, muitos outros estudos e pesquisas serão iniciados ou já estão em andamento no sentido de buscar métodos que proporcionem o referido Estado da Arte, através do desenvolvimento de produtos qualificados, com a certeza de que o cliente receberá o que esperava e necessitava. Na área da Tecnologia da Informação, as mudanças são rápidas e constantes. Desta forma, para permanecer em um mercado tão competitivo, deve-se estar apto a acompanhar tais mudanças, sem esquecer da qualidade do trabalho desenvolvido. Por isso, a palavra Gerenciamento está sempre presente. Especialmente quando falamos em riscos, que podem se tornar responsáveis pelo comprometimento de todo um Projeto. Estar consciente da importância destas palavras chaves Gerência, Escopo, Riscos - é um fator crítico para o sucesso das empresas desenvolvedoras de software da atualidade. BIBLIOGRAFIA KNOB, Flavio F.; SILVEIRA, Filipi P. da; ORTH, Afonso I.; PRIKLADNICKI, Rafael. Risk Free - Uma ferramenta de apoio à gerência de riscos em projetos de software. Porto Alegre.
Jun 2005. Disponível em: <http://www.inf.pucrs.br/~rafael/riskfree/>. Acesso em: 04 ago 2007. BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML - Guia do Usuário. Rio de Janeiro: Campus, 2000. FURLAN, José Davi. Modelagem de Objetos através da UML The Unified Modeling Language. São Paulo: MAKRON Books, 1998. PROJECT MANAGEMENT INSTITUTE. Um Guia de Conhecimentos em Gerenciamento de Projetos - Guia PMBOK. EUA: PMI, 2004. VALERIANO, Dalton. Moderno Gerenciamento de Projetos. São Paulo: Prentice Hall, 2005. PHILLIPS, Joseph. Gerência de Projetos de Tecnologia da Informação. Rio de Janeiro: Campus, 2003. MARTINS, José Carlos C. Gerenciando Projetos de Desenvolvimento de Software com PMI, RUP e UML. 2.ed. Rio de Janeiro: Brasport, 2005.