New paper “Introducing OSLC, an open standard for interoperability of open source development tools”

We’ll be presenting at ICSSEA 2011 in november, our paper “Introducing OSLC, an open standard for interoperability of open source development tools“, which recaps of some efforts we conducted in COCLICO.

Authors: Olivier BERGER, Sabri LABBENE, Madhumita DHAR, Christian BAC

Abstract: In the COCLICO project, efforts have been made to improve interoperability of software development forges, to help integrate them better in the modern software quality process of organizations. In order to improve such interoperability, implementation of the Open Services for Lifecycle Collaboration (OSLC) specifications has been conducted (in particular the Change Management domain specifications). The OSLC-compatible open source adapters we have developed for the Jenkins Continuous Integration server and the FusionForge bugtrackers, have been integrated in a Web mashup, allowing to demonstrate the interoperability potential of OSLC-CM in a continuous integration use case. Even though deployment of OSLC is still limited for open source tools in the Application Lifecycle Management (ALM) field, we believe it will offer great benefits and potential, for new complex and difficult problems, in particular for large scale bug tracking applications.

Keywords: ALM, standard, interoperability, OSLC, OSLC-CM, FusionForge, Jenkins, open source, free software

Integrating JUnit tests inside a PHPUnit+Selenium test suite

I’ve spent some time recently integrating the OSLC open source test suite (from the OSLC open source support project)into the FusionForge test suite.

FusionForge‘s test suite uses PHPUnit to drive Selenium (RC) “end user” like tests. Selenium is a tool that makes such tests possible by piloting an instance of FireFox browsing the Web interface of the forge, in a controlled environment.

The OSLC test suite consists in a series of JUnit tests, which is driven by Maven (initially started from inside Eclipse, then also from command-line after I found the nasty command line parameters and changes in the pom.xml file that were required ;).

The whole of the test suite may not pass for our implementation of OSLC-CM in FusionForge, so some tests fail, but I don’t bother too much as this is “normal”, and all we’re caring for at the moment is mainly non-regression. There seemed to be no way to exclude some of the tests from the suite for the moment, but fortunately, that doesn’t matter, since the way I have integrated both test suites happens to allow the verification of only success on some of the tests.

So, the way they are integrated is through execution of the JUnit suite during one of the test cases of the Selenium suite (using a system( ) PHP call), which generates an HTML report (using the Maven SureFire reports plugin), which can then be viewed in the Web pages of the tested forge, so that Selenium + PHPUnit assertions can verify the content of the test report.

This is a bit hackish, but all in all suites our needs so far. Next step is to see if it works in other people’s test environments, including the automated executions in Hudson.

Quick report from OSLC meetup in Paris last week

Last week, as part of the COCLICO project‘s efforts to work on forges interoperability issues, we invited partners and contacts for a short meetup in Paris, with a special guest, Steve Speicher, lead of the OSLC-CM domain work-group.

Steve was in Paris to speak at the Open World Forum 2010 in the forges interoperability track. As time slots at OWF were quite short, we proposed to have this meetup a few days earlier to be able to have more detailed discussions and demos.

Steve has presented the following slides : OSLC Specifications for Interoperability and a screencast of AJAX interaction between an OSLC-CM server and a consumer.

On our side, we made a quick demo (a screencast actually) of our Mantis add-on for OSLC-CM.

We have discussed several technical aspects of OSLC, and also the community of actors working on the specifications. Regarding the french speaking community, there doesn’t seem to be an urgent need to have a specific structure setup so far, but we will nevertheless probably continue sharing content in french whenever we have some time.

I’ve been very glad to meet Steve, and hopefully, there are gonna be other times for new meetups. Why not a formal OSLC conference some day ?

In the meantime, feel free to tell us if you’d like to discuss OSLC and forges interoperability.

“Weaving a Semantic Web Across OSS Repositories: Unleashing a New Potential for Academia and Practice” published

A new paper of ours was just published. If you’re curious about all that Semantic Web and Linked Data hype and how it would impact forges and other software development tools, and the link with Open Source development platforms, then, read this :

Weaving a Semantic Web Across OSS Repositories: Unleashing a New Potential for Academia and Practice
(DOI: 10.4018/jossp.2010040103)
Authors: Olivier Berger (Institut Telecom, France); Valentin Vlasceanu (Institut Telecom, France); Christian Bac (Institut Telecom, France); Quang Vu Dang (Institut Telecom, France); Stéphane Lauriere (Mandriva, France)
in International Journal of Open Source Software & Processes (IJOSSP) Volume: 2, Issue: 2 (2010), Pages: 29-40 pp.

Here’s the abstract:
Continue reading ““Weaving a Semantic Web Across OSS Repositories: Unleashing a New Potential for Academia and Practice” published”

Repost of “Open Source OSLC-CM implementations in PHP”

Reposting from : Open Source OSLC-CM implementations in PHP posted on Helios project’s blog at :

Steve Speicher at IBM/Rational has blogged about OSLC reference implementations and test suites.

He’s been kind to link to our implementation, which uses Zend framework in PHP, and will provide an Open Source OSLC-CM V1 server component for the Open Source Mantis bugtracker (and later for FusionForge trackers too).

I hope people can learn how OSLC-CM V1 works, by testing with a Mantis 1.2 installation plus our server add-on, and by looking at our server’s code (and maybe, then decide to use it in production too, of course).

More at