cancel
Showing results for 
Search instead for 
Did you mean: 

WCM and pre-version 2.0 abstraction integration...

rkylberg
Champ in-the-making
Champ in-the-making
Alfresco is an exciting platform to me for two reasons:
    1. The architecture offers a number of powerful abstractions for content management that map well onto the underlying technology.
    2. The underlying technology is open source and standards or pseudo-standards based (e.g. Spring) thereby promoting best practices, robust implementation and configurability.
Several important abstractions have been added to Alfresco in version 2.0 with the introduction of WCM. Some of these new abstractions and some pre-version 2.0 abstractions seem not to be integrated across the entire platform; specifically:

Pre-version 2.0 abstractions not integrated with WCM:
    - Extending the content model with custom aspects.
    - Applying custom rules over space content.
    - Define custom associations between space content.
    - Search across content and properties.
Version 2.0 WCM abstractions not integrated with pre-2.0 Alfresco content:
    - XSD definition and XForm creation of content.
    - Template engine transformation of content.
    - Transparent layering of content.
Some forum discussions and Jira issues suggest that integration is underway:
As I am new to Alfresco and despite having studied the roadmap, I remain uncertain of Alfresco's goals with regard to integrating these abstractions across the platform. I am concerned that what Alfresco is today is insufficient for our business requirements, yet I am optimistic that our requirements could be met provided these abstractions are extended across the platform.

Specifically, we publish a web site that promotes a catalog of products, events and services. The product, event and service information originates from any of n business divisions and we modify, embellish and assign supplementary information for publication to the web. Our production process involves the collaboration of many actors with distinct roles and therefore, access control, workflow, versioning and virtualization are all important concerns.

Ideally, division product, event and service information could be ingested into our system and extended with custom meta-data using aspects for reuse, tracking and assembly. This information backed by transparent layering could be collaboratively updated using XForms associated with rendition templates for producing site content. Content changes could be managed via approval workflows that, in conjunction with associated meta-data, would trigger custom rules for further transformation and approval or publication. Contributors include both machines and people so we need interfaces for collaboration suitable to both (specifically APIs and UIs respectively). Finally, our site content must be published either by crawling a virtualized view or from a CIFs mount or a combination of the two.

Alfresco offers the necessary abstractions for each part of our scenario, however, the abstractions do not extend across the entire platform; consequently, there results an arbitrary distinction between pre-2.0 and WCM content that breaks the feasibility of our business requirements. We need the pre and post version 2.0 abstractions working across the entire platform in order to achieve our goals.

Could someone knowledgeable about the Alfresco roadmap and vision speak to these concerns? Will Alfresco be able to meet the requirements of the scenario I outline above and in what timeframe?

Thanks,
Bob


P.S. I found the following thread comments closely related to my questions:
2 REPLIES 2

rivetlogic
Champ on-the-rise
Champ on-the-rise
Alfresco 2.0 may meet your needs today. 

You would need to consider which content is best managed within a Web Project Space (using WCM sandboxes, Web Forms, WCM-specific workflows, etc) and which content is best managed within Alfresco's normal Smart Spaces (using content rules, metadata extractors, M2 content modeling/custom metadata, categorization, content transformers, content- or document-specific workflows, etc.).

If there's a relatively clean separation, then Alfresco may suffice today.  On the other hand, if you really need to use Alfresco's XForms to author some of your enterprise content and manage it within rule-based folders, then you may have to wait for a future release.

As one concrete example, we're developing a web app for a client that dynamically accesses Alfresco's main repository for content managed within normal spaces via Alfresco's Web Services API.  This content includes Word, PDF, XML, or really any type of content that proceeds through approval workflows, has specialized metadata, may be queried, etc.

All website-specific assets (static HTMLs, CSS, Images, JSPs, etc.) are managed within a WCM project space.   Web developers/authors/administrators will primarily utilize the WCM project space(s), while the rest of the enterprise will primarily interact with content managed within the other spaces.  And all content, not just WCM content, is deployed for web delivery.

Note that one limitation with this configuration is that in-context preview doesn't work out of the box, but it could with enough hacking  Smiley Very Happy

Hope this sheds some light on a possible use case that may be applicable for you.

–Mike

kvc
Champ in-the-making
Champ in-the-making
Let me address your concerns in two parts:

1.  Alfresco general collaboration and publishing model

2.  Integration roadmap


Publishing Model
——————-

Alfresco's publishing model is broken into three distinct phases:  pre-production, production, and delivery.  Pre-production is the stage where knowledge assets originate.  These knowledge assets are created by knowledge workers and collaborated on in the context of a space.  These assets typically originate in MS Office file formats, and may be "published" to one or more websites, often in an automated manner based on metadata and after going through a transformation step (to PDF, for example, to make for web-ready distribution).

The production stage is associated with WCM sandboxes.  The production stage can be itself broken down into three phases:  development, review, and staging.  Development occurs in authoring sandboxes, review in reviewer sandboxes (temporary sandboxes associated with each task for in-context review), and staging sandboxes.  Assets promoted from a collaboration space - either manually using the Alfresco Clipboard (cut and paste of files and entire spaces (a deep copy) work against spaces and sandboxes) or in an automated manner (using a content rule - in 2.0.0, this is done using a custom Javascript action; in 2.0.1, this is done using a pre-built Alfresco action) - can be reviewed by a web publisher, embellished, and promoted to the website - potentially along with other items submitted by different knowledge workers.

The delivery stage is associated with an Alfresco run-time environment.  This is a known snapshot of the Staging sandbox that is deployed to one or multiple run-time Alfresco servers in your DMZ or outside your firewall.  This deployment service is available with our upcoming Alfresco 2.0.1.

So, in this context, your scenario you document works quite nicely.  Assets originate or are ingested into an Alfresco space.  Metadata is assigned to the asset.  Content rules drive the transform and "push" of an asset based on metadata to one or multiple web projects.  Assets pushed into a web projects can be reviewed by a web publishers, linked into web pages, and pushed along with other assets for editorial review, timed launch (via workflow), promotion to staging, and deployment to a run-time server.  This is all possible with Alfresco 2.0.0, except the deployment bit which comes in the next two weeks with 2.1.0.  In fact, I'd love to map out your existing publishing process to model this with 2.0.0 - I think it's an excellent use case and one that should be well-described so that others may use as a model.


Integration Roadmap
————————

Moving forward, we will have a deeper integration between collaboration spaces and sandboxes.

Today (2.0.0):

1.  Custom content model models with custom aspects supported
     server-side with web assets. 

2.  Promotion of assets (individual files, entire spaces) from spaces
     to sandboxes supported via Clipboard and JavaScript API.  This
     enables either manual or automated (via rules) promotion of
     content to one or multiple web projects.  All metadata is carried
     over upon promotion.

     NOTE:  This is a critical part of our model.  The goal is that
                knowledge workers should simply work in a collaborative
                environment using tools like Office.  In the background,
                assets can be transformed into formats suitable for the
                web (locked down PDF format, potentially with digital
                rights assigned via Adobe Policy Server) and promoted
                to MULTIPLE websites (for example, a product datasheet
                that may need to go to an internet, intranet, and extranet
                site, with each site potentially running on different servers
                and using a different content delivery framework).

Tomorrow (2.0.1):

1.  Pre-built rule for asset promotion.
     Instead of via a custom JavaScript, users can build a rule for
     promoting an asset to one or multiple web projects by simply
     browsing and selecting when the asset should go.

Near-term (2.1.0 - June):

1.  Search integration

Medium-term (2.x.0):

1.  GUI support for custom metadata
2.  AVM support for associations
3.  AVM support for content rules


This is an excellent thread, and I'd love to answer any more questions related to this.  And, like I said, I'd love to explore how your current process can be mapped into 2.0.0, using spaces for asset ingestion, origination, collaboration, metadata assignment and promotion to a web project for embellishment, staging, and deployment.

Cheers.


Kevin