CCF aka CollabNet Connect /synch has been CollabNet’s Software Lifecycle Integration (SLI) solution to seamlessly connect various tools with our ALM platform TeamForge for quite a while already. Over the years, its architecture evolved from a local Windows-only client, to a stable, distributed, platform independent solution. CCF has always been Open Source and defined a common artifact data model from the very beginning. The steps how to write your own synchronization engine are well documented, and we have quite a selection of community integrations, among them MS TeamFoundation Server, Atlassian Jira, Rational ClearQuest (and of course our officially supported integrations for HP QC/ALM and ScrumWorks Pro).
While coming up with new synchronization engines has always been pretty straight forward, providing a graphical user interface has been more challenging. The main reason was that until CCF 2.0, the only way to configure CCF was by writing Eclipse plugins. While this is doable, it requires at least basic knowledge in Eclipse RCP, a skill set not necessarily available at every group who wanted to connect their tools with TeamForge.
With CCF 2.2 we now are taking SLI to the next layer: the GUI layer. You can now define the graphical user interface to setup and maintain your synchronization of your favorite tool without having to write a single line of code – editing one XML file (additions to the Spring application context) will do. If you want to have sophisticated validation and repository selection logic, you can still contribute those in the form of simple Java code (no Eclipse knowledge required), but for most aspects you can just stick to the configuration over coding approach. If you are concerned how to assemble and properly package your synchronization engine, your GUI and standard CCF components together – no problem, we deliver the build system for you as well.
To provide you an idea on how this looks, we decided to come up with two show cases for the pluggable UI layer: One for Atlassian Jira, which does not need any custom code at all, and one for MS Team Foundation Server which shows what is possible if you are willing to write some simple Java code and like to customize every single aspect of the UI.
The CCF team is excited to see where our new pluggable UI layer will bring us in the future and we are looking forward to seeing even more community integrations popping up now. There should be no reason left to not upgrade any existing CCF 1.x synchronization engine to CCF 2.2 now and benefit from all CCF 2.x specific features. If our existing framework documentation is not giving you the details you need or you like to tweak some UI behavior which has not been exposed to plugins yet, just leave a comment on this blog post.
While the customizable UI for synch plugins is probablly the biggest feature in CCF 2.2, it is definitely not the only one. If you like to learn about the others too, check out our release notes and feature presentation.