Experimentação em Engenharia de Software: Glossário de Termos
Experimentação em Engenharia de Software: Glossário de Termos
Experimentação em Engenharia de Software: Glossário de Termos
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>:<br />
<strong>Glossário</strong> <strong>de</strong> <strong>Termos</strong><br />
Vitor Pires Lopes, Guilherme Horta Travassos<br />
COPPE / UFRJ – Programa <strong>de</strong> <strong>Engenharia</strong> <strong>de</strong> Sist<strong>em</strong>as e Computação<br />
Caixa Postal 68.511, CEP 21945-970, Rio <strong>de</strong> Janeiro – Brasil<br />
{vitorlopes, ght}@cos.ufrj.br<br />
Abstract. There is an increasing agre<strong>em</strong>ent in the <strong>Software</strong> Engineering<br />
community that experimentation is necessary to <strong>de</strong>velop or to improve<br />
software <strong>de</strong>velopment and maintenance processes, methods and tools.<br />
Motivated by the importance of Experimental <strong>Software</strong> Engineering, some<br />
researchers have tried to adapt concepts and <strong>de</strong>finitions to their own<br />
perspectives and research practices. This scenario frequently leads to<br />
difficulties in knowledge exchanging between research groups and, mainly, in<br />
study results comparison. To address this probl<strong>em</strong>, a glossary of terms<br />
concerned with Experimental <strong>Software</strong> Engineering has been organized. This<br />
paper <strong>de</strong>scribes the construction of this glossary and introduces a web-based<br />
tool that turns it accessible to the research community.<br />
Resumo. Existe um consenso crescente na comunida<strong>de</strong> <strong>de</strong> <strong>Engenharia</strong> <strong>de</strong><br />
<strong>Software</strong> que experimentação é necessária para <strong>de</strong>senvolver ou melhorar<br />
processos <strong>de</strong> <strong>de</strong>senvolvimento e manutenção <strong>de</strong> software, métodos e<br />
ferramentas. Motivados pela importância da <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong><br />
Experimental, alguns pesquisadores tentam adaptar conceitos e <strong>de</strong>finições a<br />
suas perspectivas e práticas <strong>de</strong> pesquisa locais. Este cenário freqüent<strong>em</strong>ente<br />
leva a dificulda<strong>de</strong>s na troca <strong>de</strong> conhecimento e, principalmente, na<br />
comparação <strong>de</strong> resultados <strong>de</strong> estudo. Para tratar este probl<strong>em</strong>a, um glossário<br />
<strong>de</strong> termos <strong>em</strong> <strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> foi construído. Este<br />
artigo relata o processo <strong>de</strong> construção <strong>de</strong>ste glossário e apresenta uma<br />
ferramenta web que o torna acessível para a comunida<strong>de</strong> <strong>de</strong> pesquisa <strong>em</strong><br />
engenharia <strong>de</strong> software.<br />
Palavras-chave. <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> Experimental, Taxonomia, <strong>Glossário</strong><br />
<strong>de</strong> <strong>Termos</strong>, <strong>Experimentação</strong><br />
1. Introdução<br />
Atualmente, gran<strong>de</strong> parte das informações sobre novas tecnologias <strong>de</strong> software<br />
(processos, métodos, técnicas e ferramentas) ainda são baseadas <strong>em</strong> opinião própria ou<br />
propaganda. Entretanto, a pesquisa científica não po<strong>de</strong> ser baseada <strong>em</strong> opiniões ou<br />
interesses comerciais [Juristo e Moreno, 2001]. Neste contexto, experimentação provê<br />
uma forma sist<strong>em</strong>ática, disciplinada e controlada para avaliar processos e ativida<strong>de</strong>s<br />
humanas [Wöhlin et al., 2000]. Estudos experimentais contribu<strong>em</strong> no sentido <strong>de</strong> prover<br />
justificativas para o uso ou não <strong>de</strong> tecnologias, baseadas <strong>em</strong> indicações sobre a<br />
efetivida<strong>de</strong> <strong>de</strong>stas tecnologias para melhoria da qualida<strong>de</strong> do software. Assim, os<br />
resultados <strong>de</strong> estudos experimentais executados <strong>em</strong> diferentes cenários <strong>de</strong> pesquisa<br />
pod<strong>em</strong> ser utilizados como pontos <strong>de</strong> partida para <strong>de</strong>finir um conjunto <strong>de</strong> critérios que<br />
42
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
apói<strong>em</strong> o processo <strong>de</strong> tomada <strong>de</strong> <strong>de</strong>cisão a respeito da utilização <strong>de</strong> tecnologias <strong>de</strong><br />
software.<br />
Na pesquisa <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, iniciativas na condução <strong>de</strong> estudos<br />
experimentais vêm aumentando consi<strong>de</strong>ravelmente ano após ano. Diferentes grupos <strong>de</strong><br />
pesquisa executam e incentivam a adoção <strong>de</strong> estudos primários e secundários como<br />
meios <strong>de</strong> gerar evidências e construir um corpo <strong>de</strong> conhecimento científico válido <strong>em</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> [Travassos et al., 2008].<br />
Motivados pela importância <strong>de</strong> <strong>Experimentação</strong> no avanço da pesquisa <strong>em</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, vários grupos <strong>de</strong> pesquisa tentaram adaptar conceitos e<br />
<strong>de</strong>finições <strong>de</strong> <strong>Experimentação</strong> para suas próprias perspectivas e metodologias <strong>de</strong><br />
trabalho, freqüent<strong>em</strong>ente diferentes entre si. Isto traz dificulda<strong>de</strong>s no compartilhamento<br />
e diss<strong>em</strong>inação do conhecimento produzido, pois cada grupo <strong>de</strong> pesquisa passa a utilizar<br />
um conjunto <strong>de</strong> conceitos e <strong>de</strong>finições próprio. O estímulo à colaboração entre<br />
pesquisadores também é dificultado pela ausência <strong>de</strong> uma normatização <strong>de</strong> termos<br />
<strong>em</strong>pregados na área. Além disso, a comparação entre resultados <strong>de</strong> grupos diferentes<br />
po<strong>de</strong> ser prejudicada <strong>em</strong> função <strong>de</strong> não apresentar<strong>em</strong> um padrão <strong>de</strong> <strong>de</strong>scrição<br />
compatível entre si. A falta <strong>de</strong> uma taxonomia <strong>em</strong> comum dificulta a evolução científica<br />
da área [Sjøberg et al., 2007].<br />
Tendo <strong>em</strong> vista este cenário, a comunida<strong>de</strong> <strong>de</strong> pesquisadores do ISERN 1<br />
(International <strong>Software</strong> Engineering Research Network) <strong>de</strong>u início, <strong>em</strong> 1995, à<br />
construção <strong>de</strong> uma primeira versão <strong>de</strong> um glossário <strong>de</strong> termos que cont<strong>em</strong>plasse os<br />
conceitos com sua respectiva <strong>de</strong>finição no domínio da experimentação <strong>em</strong> <strong>Engenharia</strong><br />
<strong>de</strong> <strong>Software</strong>. Tomando como ponto <strong>de</strong> partida este trabalho do ISERN, combinado com<br />
informações extraídas <strong>de</strong> outras iniciativas mais recentes [Amaral, 2003], o grupo <strong>de</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> Experimental 2 da COPPE/UFRJ iniciou a reorganização do<br />
glossário <strong>de</strong> termos. Em compl<strong>em</strong>ento, planejou e conduziu, <strong>em</strong> parceria com diferentes<br />
pesquisadores, sessões <strong>de</strong> revisão que reuniram cientistas e alunos no sentido <strong>de</strong><br />
fornecer contribuições para melhorar a completu<strong>de</strong> e a corretu<strong>de</strong> <strong>de</strong>ste glossário. Para<br />
facilitar o acesso às informações e sua constante atualização e avaliação através da<br />
contribuição contínua da comunida<strong>de</strong>, o glossário está disponível através <strong>de</strong> uma<br />
ferramenta web baseada na tecnologia wiki 3 , on<strong>de</strong> funcionalida<strong>de</strong>s para facilitar a<br />
navegação e consulta da lista <strong>de</strong> termos foram acrescentadas, incluindo a possibilida<strong>de</strong><br />
<strong>de</strong> representação <strong>em</strong> diferentes línguas nativas.<br />
Este trabalho <strong>de</strong>screve o processo <strong>de</strong> construção do glossário <strong>de</strong> termos,<br />
cont<strong>em</strong>plando <strong>de</strong>talhes sobre o planejamento e a execução das sessões <strong>de</strong> revisão que<br />
contribuíram para a <strong>de</strong>finição da lista <strong>de</strong> termos atual. É discutida também a integração<br />
do glossário ao repositório <strong>de</strong> conhecimento <strong>de</strong> um ambiente <strong>de</strong> <strong>Experimentação</strong> <strong>em</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. Além disto, são apresentadas as principais características da<br />
ferramenta 4 sobre a qual o glossário foi disponibilizado à comunida<strong>de</strong>.<br />
1 http://isern.iese.<strong>de</strong>/network/ISERN/pub<br />
2 http://ese.cos.ufrj.br<br />
3 http://www.mediawiki.org/wiki/MediaWiki<br />
4 http://lens-ese.cos.ufrj.br/wikiese<br />
43
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
O artigo está organizado <strong>em</strong> quatro seções: A primeira compreen<strong>de</strong> esta<br />
introdução. A seção 2 <strong>de</strong>screve o processo <strong>de</strong> construção do glossário <strong>de</strong> termos. A<br />
seção 3 <strong>de</strong>talha as facilida<strong>de</strong>s fornecidas pela ferramenta que disponibiliza o glossário.<br />
A última seção resume e conclui este artigo.<br />
2. Processo <strong>de</strong> Construção do <strong>Glossário</strong> <strong>de</strong> <strong>Termos</strong><br />
No contexto <strong>de</strong> experimentação <strong>em</strong> larga-escala, a troca <strong>de</strong> conhecimento e experiência<br />
entre os pesquisadores fica dificultada quando estes não se utilizam <strong>de</strong> um vocabulário<br />
<strong>em</strong> comum. Freqüent<strong>em</strong>ente, cada grupo <strong>de</strong> pesquisa adapta conceitos e <strong>de</strong>finições sob<br />
suas próprias perspectivas. Isto conduz a divergências entre os pesquisadores, por vezes<br />
tornando difícil a comparação entre os resultados dos estudos e assim atrasando a<br />
evolução da área [Sjøberg et al., 2007].<br />
Visando tentar reduzir as divergências terminológicas e construir uma<br />
perspectiva <strong>em</strong> comum para a área, foi <strong>de</strong>senvolvido um glossário <strong>de</strong> termos <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. As subseções a seguir <strong>de</strong>talham a<br />
construção da versão inicial do glossário, a condução <strong>de</strong> revisões <strong>de</strong> seu conteúdo <strong>em</strong><br />
parceria com diferentes pesquisadores e alunos e a integração do glossário ao repositório<br />
<strong>de</strong> conhecimento do eSEE, um ambiente <strong>de</strong> apoio à <strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong><br />
<strong>Software</strong>.<br />
2.1. Construção da Versão Inicial do <strong>Glossário</strong> <strong>de</strong> <strong>Termos</strong><br />
A comunida<strong>de</strong> ISERN disponibilizou uma primeira versão <strong>de</strong> um glossário <strong>de</strong> termos<br />
[ISERN, 1995], elaborado a partir dos estudos usualmente executados na época no<br />
contexto <strong>de</strong>sta comunida<strong>de</strong> e relacionados principalmente a estudos in vitro no domínio<br />
<strong>de</strong> inspeções <strong>de</strong> software. Des<strong>de</strong> então foi possível perceber uma d<strong>em</strong>anda crescente<br />
pela utilização <strong>de</strong> experimentação <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, com foco diversificado e<br />
direcionado a diferentes categorias <strong>de</strong> estudo. Desta forma, o glossário proposto<br />
inicialmente, <strong>em</strong>bora a<strong>de</strong>quado para uma categoria <strong>em</strong> particular <strong>de</strong> estudos, não<br />
permitia o entendimento consistente dos conceitos envolvidos nos novos tipos <strong>de</strong><br />
estudo. Assim, visando contribuir para a evolução da experimentação <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong><br />
<strong>Software</strong>, uma nova versão do glossário <strong>de</strong> termos passou a ser organizada a partir <strong>de</strong><br />
2004.<br />
Um conjunto evoluído <strong>de</strong> termos foi organizado a partir da consolidação da<br />
terminologia básica estabelecida pelo ISERN e dos trabalhos <strong>de</strong> Amaral (2003), Costa et<br />
al. (2003) e Chapetta (2006). Estes trabalhos abordam conceitos básicos sobre<br />
experimentação e também específicos sobre diferentes categorias <strong>de</strong> estudo,<br />
contribuindo assim para consolidar um glossário mais cont<strong>em</strong>porâneo e com uma<br />
cobertura mais satisfatória. Nesta reorganização, foram r<strong>em</strong>ovidas as duplicatas cuja<br />
<strong>de</strong>finição fosse menos precisa. Foi organizada uma sessão no ESELAW’06 para<br />
apresentá-lo à comunida<strong>de</strong>. O terceiro Workshop <strong>de</strong> <strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong><br />
<strong>Software</strong> – ESELAW’06 – apresentou objetivos similares aos anteriores: reportar e<br />
discutir novos resultados na área e encorajar a troca <strong>de</strong> idéias para compreen<strong>de</strong>r, a partir<br />
<strong>de</strong> um ponto <strong>de</strong> vista experimental, aspectos <strong>de</strong> qualida<strong>de</strong> e <strong>de</strong>ficiências <strong>de</strong> tecnologias<br />
<strong>de</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. O evento reuniu vários pesquisadores da América Latina<br />
(principalmente do Brasil) e, portanto, representou uma excelente oportunida<strong>de</strong> para<br />
conduzir uma sessão <strong>de</strong> discussão entre os participantes para i<strong>de</strong>ntificar melhorias no<br />
44
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
glossário e os possíveis requisitos para estrutura computacional <strong>de</strong> apoio a sua utilização<br />
através da web. Assim, consolidou-se a primeira versão do glossário <strong>de</strong> termos <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. Este resultado se encontra disponível nos<br />
Anais do ESELAW’06.<br />
A discussão conduzida no ESELAW’06 apontou a importância <strong>de</strong> facilida<strong>de</strong>s<br />
para navegação, inclusão, alteração e exclusão <strong>de</strong> conceitos e <strong>de</strong>finições no uso do<br />
glossário. Ressaltaram também a facilida<strong>de</strong> <strong>de</strong> acesso como sendo uma característica<br />
<strong>de</strong>terminante no incentivo à normatização terminológica na área. Tendo <strong>em</strong> vista estas<br />
perspectivas, foram i<strong>de</strong>ntificadas e estudadas tecnologias candidatas para apoiar o<br />
<strong>de</strong>senvolvimento <strong>de</strong> uma ferramenta que torne o glossário mais acessível e forneça<br />
operações básicas <strong>de</strong> manipulação <strong>de</strong> seu conteúdo. Dentre as opções disponíveis, foi<br />
escolhida a tecnologia wiki. Esta tecnologia fornece uma infra-estrutura com diversas<br />
facilida<strong>de</strong>s construídas especificamente para glossários, incluindo recursos <strong>de</strong> controle<br />
<strong>de</strong> acesso, navegação, inclusão, alteração e exclusão <strong>de</strong> termos e <strong>de</strong>finições. A seção 3<br />
fornece maiores <strong>de</strong>talhes sobre as funcionalida<strong>de</strong>s oferecidas pela ferramenta que<br />
disponibiliza o glossário. A subseção a seguir <strong>de</strong>screve como foram conduzidas revisões<br />
do glossário.<br />
2.2. Revisões do <strong>Glossário</strong> <strong>de</strong> <strong>Termos</strong><br />
Após apresentação no ESELAW’06 e consolidação da primeira versão do glossário, seu<br />
conteúdo passou por sessões <strong>de</strong> revisão por diferentes grupos relacionados à <strong>Engenharia</strong><br />
<strong>de</strong> <strong>Software</strong> Experimental. Foram conduzidas sessões <strong>de</strong> revisão <strong>em</strong> eventos científicos<br />
que reuniss<strong>em</strong> pesquisadores <strong>de</strong> diferentes comunida<strong>de</strong>s, representando assim uma<br />
excelente oportunida<strong>de</strong> <strong>de</strong> divulgação do glossário no meio <strong>de</strong> pesquisa e <strong>de</strong> discussões<br />
visando melhorias na completu<strong>de</strong> e corretu<strong>de</strong> da lista <strong>de</strong> termos.<br />
Uma primeira revisão ocorreu na reunião do ISERN <strong>em</strong> 2007. Como uma das<br />
primeiras iniciativas <strong>de</strong> concepção do glossário veio do ISERN através da <strong>de</strong>finição <strong>de</strong><br />
uma terminologia básica, a reunião entre os m<strong>em</strong>bros <strong>de</strong>ste grupo foi consi<strong>de</strong>rada para<br />
divulgar o glossário e executar uma revisão. Em seguida, outra revisão ocorreu no<br />
ESELAW’07. Os objetivos <strong>de</strong>stas revisões foram avaliar a pertinência e a correção do<br />
conteúdo do glossário.<br />
Nestas revisões, apresentou-se o glossário e uma discussão foi promovida a fim<br />
<strong>de</strong> i<strong>de</strong>ntificar quais termos podiam ser incluídos e quais seriam passíveis <strong>de</strong> exclusão<br />
por não estar<strong>em</strong> ligados diretamente à experimentação <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. Os<br />
participantes foram divididos <strong>em</strong> grupos que receberam um documento (Figura 1)<br />
listando os termos inclusos no glossário, organizados <strong>em</strong> ord<strong>em</strong> alfabética. Os<br />
participantes foram orientados a discutir <strong>em</strong> grupo quais termos po<strong>de</strong>riam ser inclusos e,<br />
<strong>de</strong>ntre aqueles listados, quais seriam passíveis <strong>de</strong> exclusão.<br />
45
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
Figura 1. Documento distribuído para registrar<br />
sugestões <strong>de</strong> inclusão e exclusão <strong>de</strong> termos<br />
Os termos sugeridos por cada grupo foram comparados para eliminar eventuais<br />
duplicatas e ser<strong>em</strong> efetivamente inseridos. Como as avaliações não solicitaram<br />
<strong>de</strong>finições para os termos sugeridos, realizou-se uma pesquisa na literatura para fornecer<br />
as <strong>de</strong>finições com suas <strong>de</strong>vidas referências. Como resultado, um mo<strong>de</strong>lo b<strong>em</strong> mais<br />
estável e cobrindo um conjunto mais abrangente <strong>de</strong> tipos <strong>de</strong> estudos foi obtido.<br />
A seguir, <strong>em</strong> 2008, como uma última ativida<strong>de</strong> antes da liberação do glossário<br />
para a comunida<strong>de</strong>, foi realizada uma sessão <strong>de</strong> inspeção como um dos trabalhos da<br />
disciplina <strong>de</strong> <strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, ministrada pelo Programa <strong>de</strong><br />
<strong>Engenharia</strong> <strong>de</strong> Sist<strong>em</strong>a e Computação da COPPE/UFRJ. A disciplina foi direcionada<br />
para 22 alunos, <strong>de</strong>ntre os quais 18 mestrandos e 4 doutorandos, tendo transcorrido nos<br />
meses <strong>de</strong> outubro, nov<strong>em</strong>bro e <strong>de</strong>z<strong>em</strong>bro <strong>de</strong> 2008. Referências importantes na área <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, tais como [Wöhlin et al., 2000] e [Juristo<br />
e Moreno, 2001], juntamente com o conhecimento transmitido na disciplina,<br />
subsidiaram a realização por parte dos alunos <strong>de</strong> uma inspeção no glossário. Os<br />
objetivos <strong>de</strong>sta inspeção cont<strong>em</strong>plaram a <strong>de</strong>tecção <strong>de</strong> discrepâncias que não foram<br />
objetivo <strong>de</strong> avaliação nas revisões anteriores. Os alunos focaram na i<strong>de</strong>ntificação <strong>de</strong><br />
probl<strong>em</strong>as relacionados à omissão <strong>de</strong> termos e <strong>de</strong>finições, correção <strong>de</strong> das <strong>de</strong>finições e<br />
alteração <strong>de</strong> nome dos termos. Um total <strong>de</strong> 190 oportunida<strong>de</strong>s <strong>de</strong> melhoria foi<br />
i<strong>de</strong>ntificado após discriminação e r<strong>em</strong>oção <strong>de</strong> duplicatas.<br />
2.3. Integração a um repositório <strong>de</strong> conhecimento<br />
Executar estudos experimentais envolve gran<strong>de</strong> volume <strong>de</strong> conhecimento consumido e<br />
produzido ao longo da execução do Processo <strong>de</strong> <strong>Experimentação</strong> [Shull et al., 2001].<br />
Este conhecimento precisa ser gerenciado a<strong>de</strong>quadamente, sendo disponibilizado no<br />
momento certo ao pesquisador para auxiliá-lo <strong>em</strong> tomadas <strong>de</strong> <strong>de</strong>cisão e também<br />
registrado para posterior consulta.<br />
Em vista disto, Lopes e Travassos (2009) <strong>de</strong>stacaram a necessida<strong>de</strong> <strong>de</strong> um<br />
repositório que formalize este conhecimento, tornando-o acessível ao pesquisador<br />
durante a execução do Processo <strong>de</strong> <strong>Experimentação</strong>. Este repositório foi proposto como<br />
sendo o núcleo <strong>de</strong> recuperação <strong>de</strong> conhecimento do eSEE (experimental <strong>Software</strong><br />
46
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
Engineering Environment), uma infra-estrutura computacional baseada <strong>em</strong> serviços web<br />
que provê facilida<strong>de</strong>s <strong>de</strong> instanciação <strong>de</strong> ambientes <strong>de</strong> apoio ao Processo <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> [Travassos et al., 2008]. O eSEE consulta<br />
o repositório e disponibiliza ao pesquisador o conhecimento necessário para instanciar<br />
ambientes com todas as facilida<strong>de</strong>s requeridas para conduzir o estudo <strong>de</strong>sejado [Lopes e<br />
Travassos, 2009].<br />
Repositórios <strong>de</strong> conhecimento expressam, através <strong>de</strong> uma linguag<strong>em</strong> <strong>de</strong><br />
representação <strong>de</strong> conhecimento específica, conceitos e seus relacionamentos [O’Leary,<br />
1998]. Como o repositório proposto para o eSEE cont<strong>em</strong>pla conceitos <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, os termos listados no glossário pod<strong>em</strong><br />
constituir um conteúdo inicial <strong>de</strong>ste repositório. Assim, o glossário construído até então<br />
se revelou um importante mecanismo <strong>de</strong> representação <strong>de</strong> conhecimento a ser adotado<br />
na estruturação <strong>de</strong>ste repositório [Lopes e Travassos, 2009].<br />
O eSEE cont<strong>em</strong>pla a instanciação <strong>de</strong> ambientes para diferentes tipos <strong>de</strong> estudo e,<br />
portanto, o conhecimento a cerca <strong>de</strong>sses estudos <strong>de</strong>ve estar refletido no repositório.<br />
Lopes e Travassos (2008) i<strong>de</strong>ntificaram o domínio <strong>de</strong>ste conhecimento, que cont<strong>em</strong>pla<br />
conceitos ligados às taxonomias <strong>de</strong> estudo segundo abordag<strong>em</strong> <strong>de</strong> pesquisa, estratégia<br />
<strong>de</strong> estudo, método <strong>de</strong> pesquisa e ambiente <strong>de</strong> estudo. Entretanto, o glossário construído<br />
até então carece <strong>de</strong> uma cobertura mais satisfatória a cerca dos conceitos sobre essas<br />
taxonomias. Desta forma, para consolidar a integração do glossário ao repositório,<br />
realizou-se uma pesquisa <strong>em</strong> referências importantes na literatura <strong>de</strong> <strong>Experimentação</strong><br />
<strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. O objetivo foi agregar novos termos sobre as taxonomias<br />
previstas <strong>em</strong> [Lopes e Travassos, 2008], tornando o conteúdo do glossário mais a<strong>de</strong>rente<br />
ao conhecimento requerido pelo repositório <strong>de</strong> conhecimento do eSEE. As referências<br />
selecionadas foram [Juristo e Moreno, 2001], [Shull et al., 2008] e [Wöhlin, 2000].<br />
Foram i<strong>de</strong>ntificados 28 novos termos, incluídos com sua respectiva <strong>de</strong>finição no<br />
glossário através da ferramenta wiki.<br />
Com a inclusão dos conceitos sobre os diferentes tipos <strong>de</strong> estudos previstos <strong>em</strong><br />
[Lopes e Travassos, 2008], o glossário foi integrado como um dos mecanismos<br />
estruturantes do repositório <strong>de</strong> conhecimento do eSEE (Figura 2). Como o repositório<br />
também <strong>de</strong>ve explicitar relacionamentos entre os conceitos, foram construídas<br />
ontologias que representam as relações entre os conceitos expressos no glossário [Lopes<br />
e Travassos, 2009].<br />
Figura 2. Repositório <strong>de</strong> conhecimento <strong>de</strong> <strong>Experimentação</strong><br />
<strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> 47<br />
[Lopes e Travassos, 2009]
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
3. Características do <strong>Glossário</strong> <strong>de</strong> <strong>Termos</strong><br />
A primeira versão do glossário foi construída e disponibilizada <strong>em</strong> um documento. O<br />
aumento gradativo no número <strong>de</strong> termos, <strong>em</strong>bora crucial do ponto <strong>de</strong> vista <strong>de</strong><br />
completu<strong>de</strong>, trouxe dificulda<strong>de</strong>s para os pesquisadores navegar<strong>em</strong> pela lista, procurar<br />
por um termo específico e, sobretudo, controlar o acesso aos direitos <strong>de</strong> alteração no<br />
glossário. Assim, <strong>de</strong>u-se início, após consolidação da primeira versão do glossário, <strong>de</strong><br />
um estudo sobre tecnologias disponíveis que pu<strong>de</strong>ss<strong>em</strong> ser <strong>em</strong>pregadas no<br />
<strong>de</strong>senvolvimento <strong>de</strong> uma ferramenta que disponibilizasse o glossário. Os requisitos da<br />
ferramenta que a tecnologia <strong>de</strong>ve apoiar são:<br />
Ser composto como um sist<strong>em</strong>a web, permitindo seu uso <strong>em</strong> diferentes<br />
localida<strong>de</strong>s e entre comunida<strong>de</strong>s <strong>de</strong> pesquisa;<br />
Prover controle <strong>de</strong> acesso;<br />
Disponibilizar operações <strong>de</strong> inclusão, alteração e exclusão <strong>de</strong> termos, <strong>de</strong>finições<br />
e referências.<br />
Dentre as opções disponíveis, foi escolhida a tecnologia wiki [MediaWiki,<br />
2009]. Esta tecnologia fornece uma infra-estrutura que satisfaz os requisitos<br />
estabelecidos por ter sido concebida para viabilizar a criação e manutenção <strong>de</strong><br />
glossários. A infra-estrutura é disponibilizada <strong>em</strong> um pacote <strong>de</strong> instalação contendo<br />
nativamente recursos <strong>de</strong> controle <strong>de</strong> acesso, navegação, inclusão, alteração e exclusão <strong>de</strong><br />
termos e <strong>de</strong>finições. Perfis <strong>de</strong> mo<strong>de</strong>radores pod<strong>em</strong> cadastrar novos usuários com<br />
diferentes permissões <strong>de</strong> alteração no glossário. Por padrão, todo usuário da ferramenta<br />
po<strong>de</strong> consultar os termos do glossário s<strong>em</strong>, entretanto, estar efetivamente cadastrado. A<br />
ferramenta está acessível através do en<strong>de</strong>reço http://lens-ese.cos.ufrj.br/wikiese.<br />
A ferramenta apresenta a lista <strong>de</strong> termos <strong>em</strong> ord<strong>em</strong> alfabética, na qual o usuário<br />
po<strong>de</strong> navegar facilmente entre os termos utilizando hiperlinks (Figura 3). A fim <strong>de</strong><br />
adicionar uma forma <strong>de</strong> navegação diferenciada, <strong>de</strong>senvolveu-se um componente<br />
baseado <strong>em</strong> hipergrafo (Figura 4) que oferece uma nova perspectiva sobre a lista. Os<br />
termos são apresentados <strong>em</strong> um hipergrafo e ligados pelos nós rotulados pela sua inicial.<br />
Figura 3. Lista <strong>de</strong> <strong>Termos</strong><br />
48
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
Figura 4. Hipergrafo do <strong>Glossário</strong> <strong>de</strong> <strong>Termos</strong><br />
Ao acionar o link <strong>de</strong> um dos termos da lista ou do hipergrafo, o pesquisador é<br />
conduzido à página (Figura 5) contendo a <strong>de</strong>finição <strong>em</strong> inglês, português e espanhol do<br />
termo <strong>em</strong> questão. Além disso, são citadas as referências que fundamentam a <strong>de</strong>finição e<br />
outras fontes importantes na contextualização do termo.<br />
4. Conclusão<br />
Figura 5. Definições <strong>em</strong> diferentes línguas do termo selecionado<br />
Este artigo <strong>de</strong>screveu o glossário <strong>de</strong> termos <strong>de</strong> <strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong><br />
<strong>Software</strong>. O processo <strong>de</strong> construção do glossário foi <strong>de</strong>talhado <strong>em</strong> termos da<br />
consolidação <strong>de</strong> sua versão inicial e das revisões conduzidas entre os pesquisadores,<br />
visando ampliar a completu<strong>de</strong> e a corretu<strong>de</strong> da lista <strong>de</strong> termos. Discutiu-se também a<br />
integração do glossário a um repositório <strong>de</strong> conhecimento sobre <strong>Experimentação</strong> <strong>em</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, que d<strong>em</strong>andou a inclusão <strong>de</strong> termos a cerca <strong>de</strong> conceitos sobre<br />
49
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
os diferentes tipos <strong>de</strong> estudo experimentais. Ao final foram apresentadas as principais<br />
características da ferramenta que disponibiliza o glossário na web.<br />
Dentre as contribuições <strong>de</strong>ste trabalho, <strong>de</strong>stacamos a construção do glossário<br />
como uma importante iniciativa para estabelecer uma terminologia comum na área <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>. As avaliações conduzidas constituíram<br />
uma relevante contribuição para que o glossário atingisse níveis <strong>de</strong> corretu<strong>de</strong> e<br />
completu<strong>de</strong> satisfatórios <strong>em</strong> comparação com sua versão inicial. Destacamos também a<br />
importância do glossário na estruturação do repositório <strong>de</strong> conhecimento do eSEE,<br />
através do qual o glossário po<strong>de</strong> ser utilizado. O glossário revisado po<strong>de</strong> ser acessado<br />
também <strong>de</strong> forma in<strong>de</strong>pen<strong>de</strong>nte através do en<strong>de</strong>reço http://lens-ese.cos.ufrj.br/wikiese.<br />
Acreditamos que a comunida<strong>de</strong> possui importantes contribuições a fornecer no<br />
sentido <strong>de</strong> melhorar e divulgar o glossário, fomentando seu uso <strong>de</strong> forma extensiva entre<br />
os pesquisadores. A colaboração <strong>de</strong> m<strong>em</strong>bros da comunida<strong>de</strong> para evolução contínua e<br />
divulgação do glossário representa um importante passo na normatização da<br />
terminologia e melhoria constante do glossário, que <strong>de</strong>ve refletir a própria evolução da<br />
área <strong>de</strong> <strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>.<br />
Agra<strong>de</strong>cimentos<br />
O glossário <strong>de</strong> termos é parte do projeto <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> Experimental e Ciência<br />
<strong>em</strong> Larga Escala - CNPq (475459/2007-5) e FAPERJ. Agra<strong>de</strong>c<strong>em</strong>os ao grupo <strong>de</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong> Experimental, <strong>em</strong> especial aos alunos Felipe Pinto e Vinicios<br />
Bravo, pelas importantes contribuições na construção da versão inicial da ferramenta<br />
wiki. Os autores reconhec<strong>em</strong> e agra<strong>de</strong>c<strong>em</strong> o apoio <strong>de</strong> Mike Baker (ISERN) e Sandra<br />
Fabbri (UFSCar-ESELAW) nas ativida<strong>de</strong>s <strong>de</strong> organização e revisão do glossário.<br />
Referências<br />
Amaral, E. A. G. G. (2003) “Empacotamento <strong>de</strong> Experimentos <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong><br />
<strong>Software</strong>”, Dissertação <strong>de</strong> Mestrado, COPPE/UFRJ, <strong>Engenharia</strong> <strong>de</strong> Sist<strong>em</strong>as e<br />
Computação, RJ, Brazil.<br />
Basili, V.R., Shull, F., Lanubile, F. (1999). “Building Knowledge through Families of<br />
Experiments”, In: IEEE Trans. on <strong>Software</strong> Engineering, vol. 25, No. 4.<br />
Chapetta, W. A., (2006), “Uma Infra-estrutura para Planejamento, Execução e<br />
Empacotamento <strong>de</strong> Estudos Experimentais <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>”, Dissertação<br />
<strong>de</strong> Mestrado, Programa <strong>de</strong> <strong>Engenharia</strong> <strong>de</strong> Sist<strong>em</strong>as e Computação, COPPE/UFRJ,<br />
Universida<strong>de</strong> Fe<strong>de</strong>ral do Rio <strong>de</strong> Janeiro. Rio <strong>de</strong> Janeiro, RJ, Brasil.<br />
Costa, H.R.; Mian, P.G. Travassos, G.H., (2004), “Esten<strong>de</strong>ndo um Mo<strong>de</strong>lo <strong>de</strong> Processo<br />
e <strong>de</strong> Empacotamento <strong>de</strong> Estudos Experimentais”, Relatório Técnico do Projeto eSEE.<br />
ISERN, (1995), “ISERN basic terminology in Experimental <strong>Software</strong> Engineering”,<br />
http://www.cs.umd.edu/projects/SoftEng/tame/isern/isern.<strong>de</strong>finitions.html.<br />
Juristo, N., Moreno, A. (2001). “Basics of <strong>Software</strong> Engineering Experimentation”,<br />
Kluwer Acad<strong>em</strong>ic Press, 1ª edição.<br />
50
ESELAW’09<br />
VI Experimental <strong>Software</strong> Engineering Latin American Workshop<br />
Lopes, V.P., Travassos, G.H. (2008) “Infra-estrutura Conceitual para Ambientes <strong>de</strong><br />
<strong>Experimentação</strong> <strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>”, Experimental <strong>Software</strong> Engineering<br />
Latin American Workshop (ESELAW'08), Brasil.<br />
Lopes, V.P., Travassos, G.H. (2009) “Estrutura do Repositório <strong>de</strong> Conhecimento <strong>de</strong> um<br />
Ambiente para <strong>Experimentação</strong> <strong>em</strong> Larga Escala<br />
<strong>em</strong> <strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>”, Em: Anais do XXIII Simpósio Brasileiro <strong>de</strong><br />
<strong>Engenharia</strong> <strong>de</strong> <strong>Software</strong>, SBES, Fortaleza, CE, Brasil, Outubro.<br />
O’Leary, D.E., (1998), “Using AI in Knowledge Manag<strong>em</strong>ent: Knowledge Bases and<br />
Ontologies”. IEEE Intelligent Syst<strong>em</strong>s, v. 13, n. 3 (May/Jun), pp. 33-39.<br />
Shull, F., Singer, J., Sjøberg, D. I. K. et al., “Gui<strong>de</strong> to Empirical <strong>Software</strong> Engineering”,<br />
Springer, ISBN: 978-1-84800-043-8, 2008.<br />
Shull, F., Carver, J., Travassos, G.H., (2001), “An Empirical Methodology for<br />
Introducing <strong>Software</strong> Processes”. In: 8th European <strong>Software</strong> EngineeringSymposium<br />
and 9th ACM SIGSOFT Symposium on the Foundations of <strong>Software</strong> Engineering<br />
(FSE-9) and 8th European <strong>Software</strong> Engineering Conference (ESEC), Vienna,<br />
Austria, Sept<strong>em</strong>ber.<br />
Sjøberg, D.I.K., Diba, T., Jorgensen, M., (2007) , “The Future of Empirical Methods in<br />
<strong>Software</strong> Engineering Research”. Em: International Conference on <strong>Software</strong><br />
Engineering (ICSE), Minneapolis, Estados Unidos, Maio.<br />
Travassos, G. H., Santos, P. S. M., Mian, P. G., Dias Neto A. C., Biolchini, J., “A<br />
Environment to Support Large Scale Experimentation in <strong>Software</strong> Engineering”, 13th<br />
IEEE International Conference on Engineering of Complex Computer Syst<strong>em</strong>s,<br />
Abril, 2008.<br />
MediaWiki, (2009), http://www.mediawiki.org/wiki/MediaWiki<br />
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M., Regnell, B., Wesslén, A.,<br />
Experimentation in <strong>Software</strong> Engineering – An Introduction. Kluwer Acad<strong>em</strong>ic<br />
Publishers. 2000.<br />
51