Uma Ontologia que Estabelece os Relacionamentos de Dependência entre as Práticas de Gerência de Projetos constantes nos modelos CMMI-DEV e MR-MPS-SW
Authors: E. Yoshidome; S. Oliveira
Year: 2014

This paper presents the ontology about project management, which establishes the dependency relationships between the practices (specific practices and expected results) of this process included in CMMI-DEV and MR-MPS-SW models, which aims to supporting beginner’s consultants these models in understanding the subject. Thus, this research will help consultants and software development companies that aim to improve on their process. For this, we did a survey on three companies what have official evaluation, in order to collect evidences to instantiate and evaluate the ontology. Resumo. Este artigo apresenta uma ontologia de gerência de projetos, na qual estabelece os relacionamentos de dependência entre as práticas (práticas específicas e resultados esperados) deste processo constantes nos modelos CMMI-DEV e MR-MPS-SW, com o objetivo de apoiar consultoresimplementadores iniciantes destes modelos no entendimento sobre o assunto. Desta forma, esta pesquisa irá auxiliar consultores e empresas desenvolvedoras de software que almejam a melhoria em seu processo. Para isto, foi realizada uma pesquisa de campo em três empresas com avaliações oficiais com o intuito de coletar evidências para realizar a instanciação e avaliação da ontologia. 1. Introdução Empresas desenvolvedoras de software que desejam implementar programas de melhoria em seus processos organizacionais podem se deparar com o problema de conciliar entre a execução das atividades dos projetos em desenvolvimento com as constantes melhorias que estão sendo implementadas em seu ambiente. Somando-se a isto, existe o fato de que o tempo de implementação de programas de melhoria geralmente é extenso [Morgado, 2007]. Existe no mercado um número considerável de empresas desenvolvedoras de software que buscam por avaliação de melhoria do processo em modelos constantes nos programas MPS.BR – Melhoria do Processo de Software Brasileiro [SOFTEX, 2012a], e CMMI – Capability Maturity Model Integration [SEI, 2010]. Para que estas empresas consigam estas avaliações, é necessário que a empresa contemple um determinado conjunto de requisitos de cada processo estabelecidos pelo modelo. Segundo Soydan e Kokar (2006), por esses modelos agregarem um grande número de conceitos em sua estrutura, empresas que desejam receber avaliações de melhoria, geralmente, contratam especialistas (consultores em implementação). Mesmo para esses especialistas, o processo de verificar todos os relacionamentos entre os componentes do modelo não é XIII Simpósio Brasileiro de Qualidade de Software 107 uma tarefa trivial. Este problema complica-se com o fato das constantes atualizações que os modelos de qualidade sofrem ao longo do tempo, com a adição de novas práticas e/ou processos em sua estrutura [Sharinfloo et al., 2008]. Segundo Huang e Zhang (2010), existem poucos recursos humanos que possuem conhecimento sobre qualidade de software nas empresas de desenvolvimento. Além disso, mesmo possuindo conhecimento sobre melhoria de processo de software, estas pessoas possuem uma carência no entendimento correto de certos conceitos sobre o assunto. Em Schots et al. (2011) são descritas experiências de implementações de melhoria do processo em várias empresas desenvolvedoras de software. Os autores relatam a necessidade de apresentar e ensinar conceitos de engenharia de software para auxiliar na compreensão das atividades do processo Para apoiar no ensino e no estabelecimento do entendimento desses conceitos, a definição de uma ontologia pode ser utilizada [Duarte e Falbo, 2000]. A pesquisa descrita em Leal (2012), apresenta a necessidade de adotar um mecanismo para a seleção e implementação gradual de boas práticas a micro e pequenas empresas. Para isto, a abordagem utilizada foi a definição de uma ontologia contendo as referidas práticas. Entretanto, esta ontologia não considera todas as práticas descritas em programas de melhoria. Para esta pesquisa, foi desenvolvida uma ontologia que estabelece os relacionamentos de dependência entre as práticas existentes no modelo MR-MPS-SW – Modelo de Referência do MPS para Software. Estes relacionamentos estão compatíveis com o modelo CMMI-DEV. A compatibilidade é evidenciada no Guia de Implementação Parte 11 do MPS.BR [SOFTEX, 2012b]. Devido a essa compatibilidade e a existência de um documento que garante a sua compatibilidade, optou-se em utilizar apenas os dois modelos citados. Um relacionamento de dependência existe quando um ativo de modelo (resultado esperado/prática específica) depende de informações ou serviços providos por outro ativo de modelo para ser iniciado. Por exemplo: o método de estimativa de esforço do projeto possui dependência com os dados/valores de tamanho do projeto. A ontologia serve como um mecanismo de disseminação de conhecimento sobre boas práticas de engenharia de software para consultores implementadores iniciantes, para apoiá-los na identificação e levantamento dos principais produtos de trabalho utilizados para contemplar o processo de gerência de projetos. O escopo da ontologia desta pesquisa está restrito ao processo de Gerência de Projetos (GPR) do MR-MPS-SW e as áreas de processo de Planejamento do Projeto e Monitoramento e Controle do Projeto do CMMI-DEV. Entretanto, esta pesquisa está inserida no contexto de uma Dissertação de Mestrado defendida e aprovada do PPGCCUFPA, na qual abrange todo o nível de maturidade G do MR-MPS.SW e parte do nível de maturidade 2 do CMMI-DEV. A ontologia do processo de Gerência de Requisitos está em processo de publicação na Revista Abakós [Yoshidome e Oliveira, 2014]. O objetivo do processo de Gerência de Projetos (GPR) é fornecer subsídios para o estabelecimento e manutenção de planos visando definir as atividades do projeto. Além disto, este processo é responsável em realizar o acompanhamento do projeto, Trabalhos Técnicos / Technical Papers SBQS 2014 108 provendo visibilidade para a implementação de ações corretivas em caso de desvios no plano [SOFTEX, 2011; SEI, 2010]. A escolha do nível G do MR-MPS-SW (compatível com as áreas de processo Planejamento do Projeto, Monitoramento e Controle do Projeto, Gerência de Requisitos do CMMI) consiste no fato de ser o primeiro nível de maturidade e os consultores implementadores iniciantes atuarão, principalmente, nos processos desse nível de maturidade. Além desta seção introdutória, este artigo está dividido nas seguintes seções: a Seção 2 descreve alguns dos trabalhos relacionados a esta pesquisa; a Seção 3 descreve a metodologia utilizada para este trabalho; a Seção 4 apresenta a ontologia de gerência de projetos desta pesquisa; a Seção 5 descreve as instanciações realizadas para apoiar na avaliação desta pesquisa; e, por fim, a Seção 6 apresenta as conclusões deste trabalho. 2. Trabalhos Relacionados Como um trabalho relacionado pode-se citar a pesquisa de Soydan e Kokar (2006), na qual é realizada uma definição de uma ontologia para representar o modelo CMMIDEV. Porém, esta pesquisa define as regras que regem a estrutura do modelo, não buscando verificar o relacionamento das práticas específicas entre as áreas de processo. Além disso, a ontologia está baseada na versão 1.1 do CMMI, a qual não é compatível com a atual versão do MPS.BR [SOFTEX, 2012]. A ontologia definida nesta pesquisa busca adequar-se à versão 1.3 do CMMI, o qual está compatível com a versão de 2012 do MPS.BR. De forma similar, existe a pesquisa de Sharifloo et al. (2008), na qual é definida uma ontologia para o modelo CMMI-ACQ (Capability Maturity Model Integration for Acquisition). Contudo, o domínio de conhecimento definido em sua pesquisa abrange apenas a área de processo de aquisição. Colenci Neto (2008) propõe um modelo de referência para que as próprias empresas realizem uma avalição de seu processo de desenvolvimento de software para analisarem a sua aderência ao modelo MR-MPS. Entretanto, a solução proposta não se preocupa em definir uma forma de disponibilizar as informações (técnicas, artefatos, procedimentos, entre outros) de como cada resultado esperado está sendo contemplado. Duarte e Falbo (2000) propõem uma ontologia para qualidade de software voltada para o ensino sobre conceitos no domínio de qualidade de software, mas sua pesquisa não está focada em definir as principais práticas de qualidade de software e como estas práticas estão relacionadas entre si. Na tese de doutorado de Almeida (2006), é definida uma ontologia para auxiliar no aprendizado e disseminação do conhecimento organizacional. Porém, o escopo de seu trabalho não possui aderência às normas e modelos de qualidade de software. Em Guizzardi et al. (2008) é descrita uma proposta de modelagem de ontologia em processo de software por meio de uma ontologia de fundamentação. Entretanto esse trabalho não possui foco em definir a ontologia considerando práticas sugeridas pelos modelos de qualidade de software. XIII Simpósio Brasileiro de Qualidade de Software 109 3. Metodologia de Pesquisa A metodologia de pesquisa utilizada neste trabalho foi baseada na metodologia proposta por Falbo (1998). Falbo propôs sua metodologia baseando-se nas práticas presentes nas principais metodologias de construções de ontologia da literatura. Além disso, a metodologia de Falbo foi elaborada para o contexto de engenharia de software. A primeira etapa compreende a Pesquisa Bibliográfica, na qual foram realizadas as atividades de identificação, análise e seleção de trabalhos relacionados e bibliografias disponíveis sobre o tema. Outra atividade realizada durante esta etapa foram pesquisas sobre os conceitos relacionados à melhoria de processo de software e as práticas recomendadas, além de analisar como estas práticas relacionam-se. Ainda, na primeira etapa, também foi definido um mapa mental (disponível em http://spider.ufpa.br/projetos/spider_ontologia/SPIDER_MapaMental_GPRGRE.png), que descreve as dependências entre as práticas presentes no MR-MPS-SW. Por meio deste mapeamento, foi possível iniciar a modelagem e a defini