Ambientes de experimentação buscam combinar processos de experimentação e de empacotamento de experimentos, padrões de representação de dados, gerência de conhecimento, caracterização de ferramentas, serviços, modelos computacionais de qualidade e modelos necessários para a realização de estudos primários e secundários. Neste sentido, tem sido investido esforço na construção do eSEE (experimental Software Engineering Environment), uma infra-estrutura computacional para apoiar experimentação em Engenharia de Software e ciência em larga escala.

A fase inicial do projeto recebeu apoio do CNPq, através do edital universal do ano de 2004. Como resultado, processos, métodos, técnicas e ferramentas para apoiar estudos primários in-vitro (Mafra et al., 2006) e in-virtuo (Barros et al., 2004) e estudos secundários (revisões sistemáticas) foram desenvolvidos (Biolchini et al., 2005) (Kitchenham et  al. 2007).

Em sua segunda fase, com apoio do CNPq – Edital Universal 2007, FAPERJ – Cientistas do Nosso Estado 2007 e bolsa de produtividade CNPq, resultados adicionais foram obtidos no sentido de evoluir a taxonomia de estudos apoiada pelo eSEE, instanciar uma versão inicial de um glossário de termos em experimentação, estender as ontologias de experimentação (Biolchini et al., 2007) visando capturar diferentes estratégias de estudos (Lopes e Travassos, 2009), adaptação de protocolos de pesquisa-ação aplicáveis em Engenharia de Software (Santos e Travassos, 2009), construção de modelos, componentes e ferramentas para apoiar estudos baseados em simulação (Araújo, 2009), estudos qualitativos baseados em Grounded-Theory (Conte, 2009), evolução de metodologia baseada em evidência para a concepção e construção de tecnologias de software (Dias Neto e Travassos, 2009) e apoio a especificação de workflow científico para experimentos baseados em simulação aplicável a Engenharia de Software e áreas afins (Pereira e Travassos, 2009). Alguns dos resultados do projeto foram diretamente aplicados na indústria (Dias Neto e Travassos, 2009; Conte et al., 2010; Mattoso et al., 2010)

Em particular para o eSEE, a segunda fase do projeto viabilizou a estruturação de um repositório de conhecimento científico, organizado a partir da evolução de modelos formais de conhecimento. Evoluímos a Ontologia de Pesquisa Científica de Biolchini et al. (2007), sendo agregado um novo conjunto de conceitos e significados envolvendo diferentes estratégias de estudo aplicáveis em Engenharia de Software Experimental (Lopes e Travassos, 2009). Com isso, abrimos caminho para construção de ferramentas de conhecimento inteligentes, que podem utilizar repositório como núcleo de recuperação de conhecimento para apoiar pesquisadores a conduzir estudos com as expectativas de melhor qualidade e, sobretudo, com menores riscos de introdução de ameaças à validade.

O objetivo deste projeto, portanto,  é dar continuidade às pesquisas visando expandir a base de conhecimento sobre experimentação do  eSEE (Travassos et al., 2008), incluindo a evolução do seu meta-ambiente,  para permitir que este passe a apoiar a instanciação de ambientes que forneçam facilidades, além da gerência do conhecimento científico envolvido no processo de experimentação e o empacotamento das informações associadas e geradas ao longo deste processo, a realização de estudos experimentais em larga escala (e-infraestrutura) em áreas adicionais da Engenharia de Software e em explorar modelos (simuladores) que permitam ampliar a aplicação de experimentação em Engenharia de Software.

A partir do repositório de conhecimento científico em Engenharia de Software Experimental (Lopes e Travassos, 2009), o eSEE poderá ampliar sua capacidade de apoiar Experimentação larga-escala em Engenharia de Software, uma vez que o processo de experimentação gera e consome grande volume de conhecimento (Shull et al., 2001) e ter um repositório para armazená-lo e viabilizar sua recuperação torna-se um requisito fundamental. A partir deste repositório, iremos explorar na evolução da infra-estrutura eSEE a incorporação de atividades de Gestão do Conhecimento no processo de experimentação, visando melhorar a inclusão, alteração, exclusão e registro de proveniência do conhecimento científico consumido e produzido durante execução deste processo. Ao adotar conceitos de Gestão do Conhecimento, o eSEE poderá instanciar ambientes de estudo com facilidades mais aderentes às necessidades dos pesquisadores, uma vez que o conhecimento necessário para o estudo, bem como o conhecimento produzido, poderá ser gerenciado adequadamente no repositório.

As atividades de pesquisa que se intenciona desenvolver se apóiam nos resultados obtidos até o momento, e incluem as seguintes metas:

1) Evolução das facilidades de disseminação do glossário de termos (http://ese.cos.ufrj.br/wikiese), com investigação de mecanismos que permitam amenizar a sobrecarga de manutenção e atualização do conhecimento disponibilizado aos pesquisadores;

2) Evolução das facilidades disponíveis no ambiente para especificação de planos de experimentos baseados em workflow científico, a partir da integração de mecanismos para verificação e validação das especificações;

3) Evolução dos modelos de dados voltados à integração do conhecimento;

4) Instanciação de ambientes-exemplo para experimentação em Engenharia de Software;

5) Aprimoramento na formação dos alunos de pós-graduação e disseminação da informação para os alunos da graduação ;

6) Divulgação dos resultados relevantes através de artigos em revistas indexadas e conferências internacionais e nacionais.

Como produto final, planeja-se ter resultados que permitam disponibilizar uma nova versão do ambiente, contendo um conjunto de tecnologias e facilidades disponíveis, em sua maioria como serviços WEB, que permitam apoiar os pesquisadores e profissionais da prática no processo de experimentação (em larga escala) em Engenharia de Software. Como forma de  direcionar os trabalhos de pesquisa e permitir observar os desafios da experimentação em áreas estratégicas da engenharia de software, pretendemos explorar os temas abaixo, que serão tratados pelos integrantes do grupo de Engenharia de Software Experimental da COPPE/UFRJ (alunos de doutorado, mestrado e iniciação científica) na produção de tecnologias de software correspondentes:

Gestão do Conhecimento Científico aplicado à Engenharia de Software Experimental: A Gestão de Conhecimento promove o capital intelectual através do apoio à aquisição e manutenção do conhecimento sobre atividades de processos de negócio, além de aumentar o conhecimento sobre os clientes, tecnologias e áreas de atuação (Winch, 1999). No contexto de uma organização de desenvolvimento de software, os processos são altamente dinâmicos, empregam diversas tecnologias e a rotatividade de pessoal geralmente é alta. Assim, torna-se um diferencial competitivo para estas organizações gerenciar o conhecimento envolvido nos processos de software, que inclui o conhecimento dos profissionais envolvidos, bem como o de tecnologias utilizadas para realização das tarefas. Entretanto, outras organizações que não desenvolvem software também possuem necessidades semelhantes. De maneira mais ampla, tais necessidades se fazem presentes em diferentes áreas, e não somente no meio organizacional. Neste contexto, a área de Engenharia de Software Experimental pode ser beneficiada pela aplicação de conceitos de Gestão de Conhecimento, uma vez que o Processo de Experimentação gera e consome grande volume de conhecimento (Shull et al., 2001). Neste sentido, um dos esforços atuais de pesquisa do Grupo de Engenharia de Software Experimental da COPPE/UFRJ converge para a incorporação de atividades de Gestão do Conhecimento no processo de experimentação, visando melhorar a inclusão, alteração, exclusão e registro de proveniência do conhecimento científico consumido e produzido durante execução deste processo. Ao adotar conceitos de Gestão do Conhecimento no Processo de Experimentação, poderemos também promover a evolução da infra-estrutura do eSEE. O ambiente poderá disponibilizar facilidades mais aderentes às necessidades dos pesquisadores, uma vez que todo o conhecimento necessário para o estudo, bem como aquele a ser produzido, será gerenciado de forma mais organizada e sistematizada segundo os preceitos de Gestão de Conhecimento. Esta linha de pesquisa já vem sendo conduzida e um de seus produtos é um repositório de conhecimento fundamentado na interdependência entre um glossário e ontologias sobre o domínio de Engenharia de Software Experimental. A incorporação de atividades de Gestão de Conhecimento no Processo de Experimentação utilizar-se-á deste repositório como núcleo de recuperação e persistência de conhecimento (Lopes, 2010).

Estudos Qualitativos em Engenharia de Software: O estágio inicial de desenvolvimento de grande parte das ciências tem sido caracterizado por uma competição contínua entre um número distinto de diferentes visões sobre a natureza, cada uma parcialmente derivada de todas aproximadamente compatíveis com o método científico (Kuhn, 1970).  A Engenharia de Software, por ser uma disciplina recente se comparada à maioria das outras engenharias e áreas mais bem estabelecidas como Medicina, Física e Química, ainda busca por métodos científicos adequados à sua prática, os quais proporcionem resultados relevantes tanto para pesquisadores quanto para profissionais (Sjøberg et al., 2007). O método científico em Engenharia de Software vem sendo progressivamente aperfeiçoado com trabalhos envolvendo estudos controlados (Basili et al., 1986), estudos secundários (Kitchenham et al., 2004) e, recentemente, estudos de caso (Runeson e Höst, 2009). No entanto, a transposição destas metodologias para Engenharia de Software parece não ser direta, já que possui características específicas que a tornam uma ciência com aspectos tecnológicos, mas com forte influência dos fatores humanos. Isto trás a necessidade pela busca por metodologias mais bem alinhadas a essas características. Uma análise inicial (Santos, 2009) aponta a metodologia da pesquisa-ação como uma alternativa viável, já que nela o objeto central da pesquisa é o próprio processo de mudança do qual o pesquisador não só observa, mas também participa. A pesquisa-ação é utilizada desde a década de 40 nas Ciências Sociais e faz uso intenso de dados qualitativos exigindo que o pesquisador imerja na complexidade do problema estudado ao invés de tentar abstraí-lo, ao contrário da abordagem quantitativa que é mais comumente utilizada na Engenharia de Software atualmente. Desta forma, torna-se importante dar continuidade à pesquisa no sentido de formalizar a metodologia da pesquisa-ação segundo as especificidades da Engenharia de Software e, ao mesmo tempo, atender ao crescente interesse da comunidade científica pela metodologia (Santos e Travassos, 2009).

Estudos Experimentais e Simulação em Arquiteturas de Software: Decisões arquiteturais são críticas para tomar a direção certa e mais difícil de modificar no ciclo de desenvolvimento do software (Del Rosso, 2006). Essas decisões devem ser apoiadas por avaliações realizadas sobre as descrições arquiteturais disponíveis. Muitas ADLs (Architectural Description Languages) foram propostas na literatura com variados propósitos (Medvidovic e Taylor, 2000). Em geral, elas provêem um bom grau de formalismo para descrição de arquiteturas de software, seus componentes e conectores, bem como restrições e comportamento. Isso permite realizar experimentos baseados em simulação para analisar o comportamento de arquiteturas de sistemas (Luckham et al, 1995), os quais podem auxiliar na descoberta de relacionamentos formais entre os atributos de qualidade impactados pelas decisões arquiteturais, já que, em sistemas complexos, atributos de qualidade nunca são alcançados isoladamente. A realização de qualquer um tem efeitos, às vezes positivos e às vezes negativos, na realização de outros (Bass et al, 2003). Shaw e Clements (2006) apontam a exploração desses relacionamentos como uma direção relevante. Tais relacionamentos permitem estabelecer causalidades entre eventos disparados pelo sistema e os seus impactos nos atributos de qualidade. Com isso, é possível compor um encadeamento das possíveis causas da ocorrência de um problema arquitetural, da mesma forma, realizar predições, baseadas em simulação, a respeito de “o que aconteceria se” um atributo for alterado ou uma decisão arquitetural for tomada. Além das relações causais, é possível quantificar estes atributos de qualidade por meio de funções/equações que representem os relacionamentos.

Desafios em Manutenção de Software Moderna – avaliação, impactos e oportunidades de pesquisa: Manutenção de Software, apesar de ser uma atividade que consome uma grande quantidade de recursos no ciclo de vida do software, ainda carece de um melhor entendimento de como pode ser realizada e aprimorada (Pressman, 2006). Mesmo com todo avanço obtido no desenvolvimento de aplicações computacionais modernas, incluindo aplicações voltadas para a Web ou mesmo aquelas que contemplam características de ubiquidade computacional, as técnicas, mecanismos e instrumentos utilizados para manutenção dos produtos continuam sendo os mesmos para as aplicações tradicionais (Mens et al., 2005). Embora se tenha algum conhecimento sobre o funcionamento destas abordagens tradicionais, pouco ainda se sabe sobre como organizar e abordar atividades de manutenção para aplicações não convencionais, ou seja, modernas (Paduelli, 2007). Um dos caminhos para construir uma base de conhecimento sobre esse assunto é através da observação de como desenvolvedores executam atividades de manutenção para este tipo de produto. Através da observação de como as modificações são realizadas e a proposta de tecnologias de software alternativas e aplicáveis ao processo de manutenção de software, avaliar aquelas características que influenciam esse processo e permitam apoiar sua melhoria (Pfleeger, 1998). Em conseqüência, identificar boas práticas para a manutenção de software, com apoio de estudos experimentais para sua avaliação em ambientes acadêmicos e/ou profissionais, ou explorando, o máximo possível, dados obtidos em ambientes reais de desenvolvimento e manutenção de forma a construir modelos que possibilitem executar simulações (Araújo, 2009). Com isso, tratar prioritariamente o problema de entendimento do processo de manutenção de software, considerando que a literatura técnica não cobre totalmente o domínio das aplicações contemporâneas e larga escala, organizando um corpo de conhecimento sobre o assunto. A pesquisa em manutenção de software moderna é um campo relevante e necessário em Engenharia de Software, tendo em vista a existência de aplicações contemporâneas (como web e workflow científico) e a falta de práticas específicas para estes produtos. Esta área é de grande e crescente interesse pelas organizações, uma vez que impacta diretamente na qualidade de seus serviços (Pfleeger, 2004). O número crescente de periódicos e eventos voltados para a área representa indicador de importância do tema.

Uma abordagem baseada na Engenharia para a construção de  Aplicações Web: a utilização de uma infra-estrutura baseada na Web para aplicações de workflow científico ou ciência em larga escala (e-science) apresenta novos desafios para o desenvolvimento dessas aplicações.   Uma análise sistemática dos métodos propostos para desenvolvimento de aplicações Web (Conte, 2005) demonstra que tais métodos indicam a necessidade de capturar e representar perspectivas de projeto relevantes no contexto de desenvolvimento dessas aplicações.  Entretanto, essa mesma análise identificou que esses métodos não apóiam adequadamente o desenvolvimento de aplicações com características relacionadas  à heterogeneidade de acesso (acesso através de múltiplos dispositivos) ou utilização de serviços distribuídos, por exemplo. Além disso, foi identificado também que esses métodos não se preocupam em definir atividades específicas para garantia da qualidade dos seus modelos e poucos métodos oferecem uma visão abrangente do processo de desenvolvimento onde a utilização dos modelos propostos poderia ser contextualizada.  Ao contrário disso, a grande maioria concentra-se na formalização dos seus modelos.Por último, outro problema identificado no uso desses métodos é que muitas das suas atividades ou não possuem apoio ferramental em escala adequada ou são apoiadas por ferramentas proprietárias inacessíveis aos desenvolvedores nacionais. Torna-se necessário, então, investigar e definir e/ou adequar modelos para captura de características relevantes às aplicações web modernas, elaborar um processos de desenvolvimento que formalize a utilização desses modelos dentro de um contexto mais abrangente, propor formas de avaliação da qualidade desses modelos e disponibilizar, nesse contexto, apoio ferramental plenamente acessível à industria de software brasileira. É interessante notar que a própria definição dos processos, dos modelos e das formas de avaliação da sua qualidade passam necessariamente pela utilização da experimentação como instrumento de avaliação e validação dessas propostas, tornando o eSEE uma ferramenta essencial nesse contexto.

 

Araújo, M. A. P., 2009, Um Modelo para Observação de Evolução de Software. Tese de Doutorado, COPPE/UFRJ.

Barros, M. O., Werner, C. M. L., Travassos, G.H. (2004). Supporting Risks in Software Project Management. Journal of Systems and Software, Elsevier vol. 70 1-2.

Basili, V.R., Selby, R.W., Hutchens, D.H. (1986) “Experimentation in Software Engineering,” IEEE Trans. Software Eng., pp. 733-743, July.

Basili, V.R., Shull, F., Lanubile, F. (1999). Building Knowledge through Families of Experiments, IEEE Transactions of Software Engineering, vol. 25, No. 4.

Bass, L.; Clements, P.; Kazman, R. (2003). Software Architecture in Practice. Second Edition, Addison Wesley.

Biolchini, J., Mian, P.G., Natali, A.C.C., Travassos, G.H., (2005). “Systematic Review in Software Engineering”, Relatório Técnico, PESC, COPPE-UFRJ, ES-679/05.

Biolchini, J. ; Mian, P. ; Conte, T. U. ; Natali, A. C. C. ; Travassos, G. H. (2007) . Scientific research ontology to support systematic review in Software Engineering. Advanced Engineering Informatics, v. 21, p. 133-151.

Cavalcanti, M.C., Baião, F., Rössle, C., Bisch, P.M, Targino, R., Pires, P.F., Campos, M.L., Mattoso, M. (2003). Strucutural Genomic Workflows Supported by Web Services. 1st International Workshop on Biological Data Management (BIDM’03). In conjunction with DEXA 2003, Prague, Czech Republic.

Conte, T. U., Mendes, E. e Travassos, G.H. (2005) Processos de Desenvolvimento para Aplicações Web: Uma Revisão Sistemática, Proc. XI Simpósio Brasileiro de Sistemas Multimídia e Web (WebMedia), Poços de Caldas, Brasil.

Conte, T. U. ; Vaz, V.T. ; Massolar, J. ; Bott, A. ; Mendes, E. ; Travassos, G. H. (2010) . Chapter 17. Applying the WDP Technique to Usability Inspections in Web development organizations. In: Tasos Spiliotopoulos; Panagiota Papadopoulou; Drakoulis Martakos; Georgios Kouroupetroglou. (Org.). Integrating Usability Engineering for Designing the Web Experience: Methodologies and Principles. Hershey USA: IGI Global, 2010, v. 1, p. -.

Del Rosso, C. (2006). Continuous evolution through software architecture evaluation: a case study. Journal of Software Maintenance and Evolution: Research and Practice; 18:351–383. Published online in Wiley InterScience.

Dias Neto, A. C. ; Travassos, G. H. (2009) . Model-based Testing Approaches Selection for Software Projects. Information and Software Technology, v. 1, p. 1-20.

Juristo, N., Moreno, A. (2001), “Basics of Software Engineering Experimentation”, Kluwer Academic Press, 1ª edição.

Kitchenham, B. ; Mendes, E. ; Travassos, G. H. (2007). Cross versus within-company cost estimation studies: A systematic review. IEEE Transactions on Software Engineering, v. 33, p. 316-329.

Kitchenham, B. A., Dybå, T., and Jørgensen, M. (2004). “Evidence-Based Software Engineering”. In: ICSE 2004, 273-281, IEEE Computer Society Press.

Kuhn, T. S. (1970) “The Structure of Scientific Revolutions”. 2nd edition. University of Chicago Press.

Lopes, V. P. ; Travassos, G. H. (2008) . Infra-estrutura Conceitual para Ambientes de Experimentação em Engenharia de Software. In: 5th Experimental Software Engineering Latin American Workshop – ESELAW´2008, Salvador. Anais do ESELAW-2008. São Carlos : ICMC/USP e UNIFACS, v. 1. p. 1-10.

Lopes, V. P. ; Travassos, G. H. (2009). Knowledge Repository Structure of an Experimental Software Engineering Environment. In: XXIII Simpósio Brasileiro de Engenharia de Software, Fortaleza. Anais do XXIII SBES. Los Alamos : IEEE Computer Society. v. 1. p. 32-42.

Lopes, V.P. (2010). Repositório de Conhecimento de um Ambiente de Apoio a Experimentação em Engenharia de Software. Dissertação de Mestrado em Engenharia de Sistemas e Computação. PESC. COPPE/UFRJ.

Luckham, D. C.; Kenney, J. J.; Augustin, L. M.; Vera, J.; Bryan, D.; Mann, W. (1995). Specification and Analysis of System Architecture Using Rapide. IEEE Transactions on Software Engineering. Volume 21 ,  Issue 4. Special issue on software architecture. Pages: 336 – 355.

Mafra, S. N. ; Barcelos, R. F. ; Travassos, G. H. (2006). Aplicando uma Metodologia Baseada em Evidencia na Definição de Novas Tecnologias de Software. In: SBES, 2006, Florianópolis. Anais do XX Simpósio Brasileiro de Engenharia de Software. Florianópolis : SBC. v. 1. p. 239-254.

Mattoso, M. ; Werner, C. ; Travassos, G. H. ; Braganholo, V. ; Ogasawara, E. ; Oliveira, D. ; Cruz, S. M. S. ; Martinho, W. ; Murta, L. (2010). Towards supporting the life cycle of large scale scientific experiments. International Journal of Business Process Integration and Management, v. 5, p. 79-92,.

Medvidovic, N.; Taylor, R. N. (2000). A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering, v.26 n.1, p.70-93, January.

Mens, T., et al. (2005). “Challenges in Software Evolution”. In: 8th IWPSE, pp 13-22
ISSN 1550-4077, ISBN 0-7695-2349-8.

Paduelli, M.M. (2007). Manutenção de Software: problemas típicos e diretrizes para uma disciplina específica. Dissertação de Mestrado. ICMC/USP.

Pereira, W. M. ; Araujo, M. A. P. ; Travassos, G. H. (2009) . Apoio na Concepção de Workflow Científico Abstrato para Estudos in virtuo e in silico em Engenharia de Software. In: VI Experimental Software Engineering Latin American Workshop, Sao Carlos. Proceedings of 6th Experimental Software Engineering Latin American Workshop (ESELAW 2009). Sao Carlos : UFSCAr, 2009. v. 1. p. 22-31.

Pereira, W. M. ; Travassos, G. H. (2009) . Abordagem para Concepção de Experimentos Científicos em Larga Escala suportados por Workflows Científicos. In: III e-Science Workshop – SBES/SBBD,, Fortaleza. Proceedings of the III e-Science Workshop. Porto Alegre : SBC,. v. 1. p. 25-32.

Pfleeger, S.L. (1998). The Nature of System Change, IEEE Software.

Pfleeger, S.L., 2004, Engenharia de Software – Teoria e Prática, 2a. Ed., Prentice Hall.

Pressman, R.S., 2006, Engenharia de Software, 6a. Ed., Mc-Graw Hill.

Runeson, P. and Höst, M. (2009) “Guidelines for conducting and reporting case study research in software engineering”, Empirical Software Engineering 14 (2), pp. 131–164.

Santos, P. S. M. ; Travassos, G. H. (2009). Action research use in software engineering: An initial survey. In: Empirical Software Engineering and Measurement, 2009, 2009, Lake Buena Vista. Proceedings of ESEM 2009. Los Angeles : IEEE Press. v. 1. p. 414-417.

Santos, P. S. M. ; Travassos, G. H. (2008) . Colaboração entre Academia e Indústria: Oportunidades para Utilização da Pesquisa-Ação em Engenharia de Software. In: 5th Experimental Software Engineering Latin American Workshop – ESELAW´2008, 2008, Salvador. Anais do ESELAW-2008. São Carlos : ICMC/USP e UNIFACS. v. 1. p. 1-10.

Santos, P. S. M. ; Travassos, G. H. (2007) . eSEE Ambiente de apoio a experimentação em larga escala em Engenharia de Software. In: 2007 e-Science Workshop / XXI Simpósio Brasileiro de Engenharia de Software, João Pessoa. Anais do 2007 e-Science Workshop. Porto Alegre : Sociedade Brasileira de Computação,. v. 1. p. 29-40.

Santos, P.S.M. (2009). “Uma Análise da Utilização da Metodologia da Pesquisa Ação Em Engenharia de Software ”. Dissertação de Mestrado em Engenharia de Sistemas e Computação, Programa de Engenharia de Sistemas e Computação, Universidade Federal do Rio de Janeiro, Rio de Janeiro, 176f.

Santos, P.S.M., Travassos, G. H. (2009) “Action Research Use in Software Engineering: an Initial Survey” 3nd International Symposium on Empirical Software Engineering and Measurement, Orlando, USA.

Shaw, M.; Clements, P. (2006). The Golden Age of Software Architecture: A Comprehensive Survey. IEEE Software, vol 23, no 2, pp. 31-19, March/April.

Shull, F., Carver, J., Travassos, G.H. (2001). An Empirical Methodology for Introducing Software Processes In: 8th European Software Engineering Conference (ESEC) and 9th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE-9), Vienna. Proceedings of the 8th ESEC – 9th ACM SIGSOFT FSE. ACM Press, p.288 – 296.

Shull, F.; Mendonça, M.; Basili, V.; Carver, J.; Maldonado, J. C.; Fabbri, S.; Travassos, G. H.; Ferreira, M. C. (2004). Knowledge-Sharing Issues in Experimental Software Engineering. Empirical Software Enginnering An International Journal, USA, v. 9, n. 1-2, p. 111-137.

Travassos, G.; Shull, F.; Fredericks, M., and Basili, V. (1999). Detecting Defects in Object-Oriented Designs: Using Reading Techniques to Improve Software Quality. ACM SIGPLAN Notices.

Travassos, G. H.; Barros, M. O. (2003). Contributions of In Virtuo and In Silico Experiments for the Future of Empirical Studies in Software Engineering. In: 2nd Workshop in Workshop Series on Empirical Software Engineering: The Future of Empirical Studies in Software Engineering , 2003, Roma. Fraunhofer IRB Verlag.

Travassos, G. H. ; Santos, P. S. M. ; Mian, P. ; Dias Neto, A. C. ; Biolchini, J. (2008) . An Environment to Support Large Scale Experimentation in Software Engineering. In: IEEE International Conference on Engineering of Complex Computer Systems, 2008, 2008, Belfast. Proceedings of ICECCS 2008. p. 193-202.

Winch, G. (1999), “Knowledge Management”, Manufacturing Engineering, August, pp 178-180.