DEMO : Alfstore – Alfresco Portlet for IBM WebSphere Portal

March 14, 2011

Alfstore has just released the version 2.0 of the Alfresco Portlet for IBM WebSphere Portal.

For more details on the portlet features, visit Alfstore module webpage


Integrating Alfresco with Social Software / Principles and real life use-cases

January 28, 2011


Our company ( just delivered a new Widget component to integrate Jive (Enterprise Social Networking solution) with Alfresco ECM platform.
I think this project is a good example of how Alfresco social foundation can be integrated with another social software, dedicated to Enterprise social networking.

This Widget is in production now since a few days, used by one of the biggest French industrial company. basically, it gives Jive users the ability to browse and access Alfresco library from their Jive dashboard:

Jive Widget for Alfresco

Jive Widget for Alfresco

It’s a little bit too early to speak about this new Widget component features and its roadmap, but of course we plan to build an Enterprise supported version, for other customers.

So this post is not about the Widget itself (yes more technical communication will come later on), but about all the thinking that lead to the current v1.0 design, and why we have selected this approach to start with.
I think this might be of interest because this could apply to other similar projects of integration between Social Software, and ECM (not only Jive / Alfresco).

For people who have a very limited time to read, here is the synthesis of the approach:

ESN = Enterprise Social Networking Tool = Front-End = Place to collaborate around document
ECM = Foundation for Content Management = Back-End = Document Repository
Integration = ESN view component = Window to expose and browse ECM data

JIVE = Enterprise Social Networking Tool = Front-End = Place to collaborate around document
ALFRESCO = Foundation for Content Management = Back-End = Document Repository
Integration = JIVE Widget = Window to expose and browse ALFRESCO data

General questions about use-cases:
During the specification phase of the Jive-Alfresco widget, we had to address the following questions about the global design and the responsibility of each IT system:

Let’s assume my company uses both an ESN tool (like Jive), and an ECM tool (like Alfresco):
– For a new document (available on my desktop) : should I publish it in Jive first or in Alfresco first ?
– What about existing documents ? If the document is already in Jive, when and how (and why ?) should I push it to Alfresco ?
– If the document is already in Alfresco, how can I push it to Jive ?
– If I add a tag, a rating or a comment on an existing document, should I synchronize also this meta-data to the other system along with the doc binary ?
– When a document is moved from one system to another, should I keep a copy or a reference in the source system ?
– etc, etc, etc.

So we had to address some infra/IT questions, as well as functional questions…But the main question to answer first was: where should I finally store my document and/or data ?

Infrastructure perspective: ESN/ECM system responsibility
Actually, the answer to the previous question is quite obvious (at least for me).

Yes ESN systems are used to manage a lot of data (documents, images, video, etc)…but they are usually not designed as highly scalable data repository. They are primarily designed to improve collaboration, and to ease social networking.
Think about your youtube video : you will upload them first in youtube (youtube is the highly scalable storage), and then exposed them in your web site. So you can consider Alfresco as the youtube for documents, and Jive as the front-end application that needs to expose documents to allow collaboration.

So it was clear for us that the final document and data repository should be the Alfresco ECM system…But now, more and more, conversation will start in the ESN system first….how could we manage that ?

Document life cycle / Social and collaboration creation process
Actually, the good question about storage location and responsibility might be where should I store my documents in the short, middle or long term.

With new ESN systems, document creation will be more and more a collaborative process and documents will likely have to be moved from one storage to another during their life cycle. For instance:

Short term: for a new “draft” document, the first storage location could now be ESN. The “document” could be already a draft document (word, excel, etc), but it could also just be a web piece of content (blog post, wiki page), or just an idea (forum discussion, comments).
Middle term: once the document is “finalized”, it should be moved to the Document Management system (ECM). Document can still be modified, but less frequently. Security/Control are important here, because we need to have fined grain control on the reader audience.
Long term: for long term storage, you might need to move the document in an archiving system.

So yes, you finally will have to deal with long term storage strategy/archiving, retention policies, security policies, etc…I know it’s not as fun as doing social networking, but you need to take care about your documents. You need some form of control to keep and manage this company knowledge in the long term so that someone else (another employee) could securely but easily find it, and could re-use it.
Important documents should not stay forever in your ESN system…otherwhise, you might loose informations…

Selected use-cases:
Based on the previous architecture rules for document storage location, we have then defined the main principles and the selected approach in our case (for this Jive-Alfresco Widget). To summarize them quickly:

For an existing and finalized document (think word, excel, etc):
– User should store it in ECM (Alfresco) first.
– To collaborate around this existing document, go to your ESN tool (Jive),
– From Jive, browse your ECM document library (using our Widget of course !), get the ECM document reference (link) and use it to start a discussion, or include it in any ESN item (blog post, wiki page, etc).

For a “draft” document:
– It could be uploaded in ESN tool first (could be a draft, but it could also just be a web piece of content, or just an idea).
– ESN (Jive) is then the tool used to collaborate around document,
– Once the document is “finalized”, it should preferably be moved to the ECM system (Alfresco).

Operations on document:
Once the responsibility of each system is clearly defined, as well as use-cases, it is time to detail the operations available on documents/folders:

Basically, there are 4 main kinds of operations identified in our scenario:
– Browse ECM folders/documents (from the ESN interface),
– CRUD operation on document (from the ESN interface),
– Move document (from ESN to ECM system),
– Collaborate around document (using the ESN tool).

Browse ECM folders/documents from the ESN interface:
Basically, you need to build an ESN view component (Jive Widget in our case), and then use appropriate framework to build the dynamic view (Struts, YUI, etc).
For those who are familiar with Portal, a Widget is functionally “similar” to a Portlet.

Jive Alfresco Widget view

Jive Alfresco Widget view

CRUD operation on document/folder:
You need at least to implement the basic document management feature (create, update, delete, rename, etc), and to expose them in the ESN interface (Widget). This can easily be done using one of the Alfresco Web Services (REST, SOAP, CMIS, etc).
For instance, you need an upload “wizard”, to put document in Alfresco, directly from the Jive web interface.

Document Menu

Document Menu

Folder Menu

Folder Menu

Upload file wizard

Upload file wizard

Move document (from ESN to ECM system):
The purpose of this feature is to move the document binary from the ESN system to the ECM system, once it has been finalized.

This “Move To” feature has not been implemented for the moment, in the v1.0 of the Widget. Actually, it was quite complex to manage (as Jive is not open-source), and you need to have full control on the ESN code and data model to implement it. Also, there are several options to do it (duplicate file binary, keep meta-data in ESN after the move operation, remove meta-data from ESN, etc). We had limited time to deliver v1.0, and wanted to keep the system as much simple as possible, mostly to avoid any painful upgrade due to big system customization…Anyway, this feature will likely be scheduled for v2.0.

Note: if you want an example of such “Move To” feature, you can have a look at the existing IBM Quickr and Alfresco integration (more info). The scenarios described above have already been implemented by IBM/Alfresco (duplicate, detached, etc).

And the last scenario is “collaborate around document” (see section below).

Jive social content management features:
In our scenario, collaboration around the document is managed in the ESN system (tagging, rating, comments, discussions, etc).

When the document is uploaded directly in the ESN tool, then it is quite easy to do: your ESN system usually provides mechanism to collaborate around its own objects (whether it is a document, a blog post, a wiki page, a news, etc).

But when document is stored in the ECM, you need to find a way get its reference (nodeID, URL, etc) to refer to it from the ESN system.

We had 2 main technical constraints:
– First we wanted the 2 systems (ESN/ECM) to be loosely coupled (we use Ajax to browse the ECM tree structure),
– We wanted to be able to use the ECM doc reference (Alfresco nodeID) in all kind of Jive object (Jive Documents, Blog, Wiki, Discussion, etc).

So it has been decided to simply implement a “Copy link to clipboard” feature, on each document:

Jive-Alfresco Widget : copy link to clipboard

Jive-Alfresco Widget : copy link to clipboard


The use case for the “Copy link to clipboard” is as follows:
– The Jive user browses the Widget folder tree view, and copy the link of the target Alfresco document,
– Then he/she creates a new Jive Object (Jive Documents, Blog, Wiki, Discussion, etc), and paste the link in the corresponding Jive HTML rich text editor, using the standard Jive insert link wizard.

Yes it’s basic, but it works well :-)…and also it is very easy to maintain (no Jive code or data model customization here), so no regression expected during the Jive software upgrade. For the next version of the Widget, we might consider using the new Jive activity stream feature…to provide a more integrated experience…to be studied.

This Widget component is a first example of how the Alfresco/ECM foundation could be integrated with ESN/Jive system.
It’s a first step, we know we can do much more with social software integration.

So what are the next steps ?
This v1.0 of the Widget is deployed in Jive production environment at customer site, and used by thousands of users. We are waiting for customer feedback to gather evolutions request, and improve next releases. We are planning to build a GA Enterprise version as soon as possible, for other customers.

Before this Enterprise release is ready, if you want to test it, feel free to contact us:

1 reason to choose Alfresco vs Quickr for document management : scalability

January 26, 2011

More and more people are asking me the same questions about IBM Quickr vs Alfresco Document Management solution.

– what are the main technical and/or functional differences between Quickr and Alfresco ?
– When should I use Quickr, when is Alfresco more appropriate ?
– What is the best solution for document management ?
– etc.

I have already published a few blog post about this topic (see list below), but to summarize:
– Alfresco is a Document Management system, Quickr is not.
– Alfresco is a scalable solution, Quickr is not.

OK…let me give you more details 🙂

– Alfresco is designed as a highly scalable document repository, and can store huge volume of documents, Quickr cannot.
– Alfresco has a very light and robust software infrastructure, which allow to support a lots of concurrent users. Quickr is much more limited.
– From the hardware point of view, Alfresco can run on a very small server, with a few CPU/RAM resources. Quickr relies on a portal application architecture, so it is a quite heavy solution.
– Quickr is primarily a collaboration tool, Alfresco (now with Alfresco Share) also offers collaboration capabilities.

As you can see reasons seem more technical than functional, and that’s true.

If you study the respective DM features of each product, a high level functional analysis might show that these 2 solutions seem to offer the “same” level of service (versioning, security management, checkIn-Out, tagging, etc).

OK, but what if your end-users request (in the middle/long term) more advanced features like workflows/BPM, automated rules, archiving, etc…Then Alfresco will be more adapted.

If you are already using Quickr for document management/collaboration, for a limited number of users, and with a *very* small volume of data (50 GB, 100 GB ?), then you might think that switching to Alfresco does not make sense (due to cost of migration) in the short term…

OK, but I’m almost sure that your volume of document is growing quickly each day…right ?
(Even if it is not the case, just from the infrastructure cost perspective, you should consider Alfresco to reduce your hardware budget…).

So one of the main reason to choose Alfresco is its capacity to manage a huge volume of documents.
Scalability is the key argument. Be sure that, whatever the DM system you will implement in your company, people will very quickly adopt it (just because so far they had no other place to store their data), and the number of documents in your repository will grow faster and faster. Not only documents, but also images, videos, blogs, wiki, etc.
So sooner or later (but most likely sooner that you would expect), you will have to deal with hundreds of gigabyte of data or terabyte of data…and this is clearly not something Quickr is able to support.

Finally, I’m not saying that Quickr is not a good solution. My point of view here is that it is more a portal/collaborative solution, than a DM system.
So IBM Quickr could be an appropriate solution, for collaboration use-cases, portal integration, etc, but not as a document management solution.

Related posts:

Quickr and ECM relationship

Quickr and ECM integration

IBM and Alfresco partnership : Portal, Collaboration and Social Networking

Alfresco Portlet for IBM WebSphere Portal (JSR-286)

October 17, 2010


Alfresco document management features now available for IBM WebSphere Portal

Alfstore ( is proud to announce the release of a new Portlet for Alfresco that has been certified to run on IBM WebSphere Portal, and other JSR-286 Portal containers (as Liferay).

The treeview portlet exposes the content of an Alfresco space in the tree-view way. It provides all in-line editing features for documents and folders.

The user can then easily access to his/her documents, through a portal, using an ajax-style view. Only the common document management operations are exposed, to make the interface as simple as possible:

Actions on documents:
– Create (upload), Update, Delete,
– Edit : user can edit and save a document directly online from the portal (using the CIFS or the WebDAV protocols).

Actions on folders:
– Create, Delete, Refresh, Rename.

An advanced configuration mode allowing flexible appearance and functionality tuning. For example, the CIFS protocol can be disabled, and the user can select a specific space as the “root folder” to start the navigation.

So the “complexity” of the Alfresco standard interface is hidden, and this Portlet can really be used by none advanced users.

The Portlet layout is light and small so it can be integrated on a multi-column page with others portlets.

– This Portlet was written for the IBM’s WebSphere Portal first of all (and fully tested on it), but does not use any WebSphere specific functionality, so it can run on others JSR-286 portals.
– The Portlet uses the standard Alfresco Web Service, and is compliant with Alfresco DM v2.x, 3.x.

– A free (not supported) open source version can be downloaded on Alfresco forge (
– A basic SSO mechanism is provided, so Portlet can be easily tested.
– The Enterprise version will be available shortly (end of Oct. 2010)for Alfresco customers.
– The Enterprise version will be fully supported by Alfstore and will be updated in lock-step with new versions of Alfresco and/or WebSphere Portal.

Enterprise version:
– Along with a professional support, the commercial version will include more advanced features, like:   
– Support for Enterprise SSO solutions (SSO CAS, IBM, Siteminder),
– Search features (search Alfresco documents from Portal),
– Multi-file upload,
– etc.

Learn More:
– Please feel free to contact us ( for more information.
– The detailed roadmap of this component will be updated on the Alfresco wiki.
– A webinar will also be presented in the near future.
– Company website :

Alfresco launches services to simplify migration from your legacy and proprietary ECM

June 2, 2010

As part of the campaign « switch to Alfresco », Alfresco has launched a packaged migration services, to help organization migrating from their current (and costly 🙂 ECM system to Alfresco.

The migration services will initially be available only for EMC/Documentum and Microsoft SharePoint.

As far as I know, Alfresco has made a partnership with a well known “connector editor” company (I think we can say it is EntropySoft), which will provide the set of tool to automate the data migration.

We have already tested such data migration toolkit provided by EntropySoft (for the migration from IBM “Portal Document Manager” to Alfresco repository), and I can say these are very good migration tool.

For more info : Switch to Alfresco