WCM-5 WCM Solutions with Drupal and Alfresco


Published on

This presentation will outline Appnovation’s Canopy technology solution. Canopy is a standard based integration solution that brings together the best of Alfresco with the best of Drupal. Covered in this presentation will be specific details about how the Canopy solution is architected and put together. Some of the Alfresco/Drupal integration topics covered will include: content type integration, bi-directional integration and authentication

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

WCM-5 WCM Solutions with Drupal and Alfresco

  1. 1. About AppnovationWe  specialize  in  the  use  of  leading  open-­‐source  technologies  
  2. 2. Appnovation provides unparalleled expertise in creating •  Consumer facing and B2B websites •  Corporate and gov’t intranets •  Enterprise level back-end document management and workflow processes •  Mobile website optimization •  Cross platform mobile applications •  eLearning platforms •  Ecommerce •  Locations: Vancouver, BC & Atlanta, GA
  3. 3. Clients  
  4. 4. Why Drupal? •  Thousands of modules and a large developer community •  Lightweight webserver footprint •  Highly scalable and expandable •  Cloud hosting ready •  Enterprise hosting and support from Acquia •  Supports Multi-site and Multilingual deployments •  Ease of use for non-technical users •  Great in-context editing capabilities •  Extremely Secure
  5. 5. Why Drupal?
  6. 6. Why Alfresco? •  Very rich document repository system with many great out of the box features ie. Versioning, Document transformation •  Excellent document search and retrieval capabilities using a Lucene (or Solr) document indexer •  Complex workflow structure can support any type of organization structure •  Great records management capabilities •  Highly scalable and expandable and cloud hosting ready •  Highly Secure •  Supports open standards (CMIS, Web Services, Rest Api’s, webdav, CIFS, JSON, JSR 168, RSS, Atom, etc… •  Enterprise Support from Alfresco
  7. 7. Why Integrate? Integrated  Solu8on  (Canopy)   •  Enables  process  AND  presenta8on  of   content   Alfresco   Drupal   •  Focuses  on  the  processes  around   •  Focuses  on  the  presenta8on  of   content   content  
  8. 8. Why They are Good Together? •  World class Open Source document repository application combined with highly scalable and popular Open Source website development tool allows for the best of both worlds •  Alfresco compliments Drupal by providing a feature rich UI for managing web assets, as well as providing full document and knowledge management for entire organizations. •  Drupal as the frontend provides Alfresco with a highly flexible presentation layer that can be used to build websites that would be difficult with Alfresco alone
  9. 9. Comparison: Canopy and CMIS
  10. 10. High Level Comparison of Canopy and CMIS •  CMIS •  Documents are maintained only in Alfresco •  Documents can be linked to a custom Drupal Content Type •  Content cannot be “pushed” to Drupal from Alfresco •  Canopy •  Documents are replicated across both Alfresco and Drupal •  Documents are mapped to existing node types within Drupal (example: blog posts, articles, etc). •  Content can be “pushed” in either direction
  11. 11. Integrating Alfresco and Drupal with CMIS •  Use the Drupal “CMIS” contributed module as a starting point •  Create custom Drupal Content type such as “Alfresco Document” which includes a link to a CMIS document that is stored within Alfresco repository •  Content remains in Alfresco, with links to that content stored in Drupal
  12. 12. Simple Alfresco/Drupal Integration using CMIS
  13. 13. Integrating Alfresco and Drupal with Canopy •  Canopy custom code is installed on both Alfresco and Drupal •  Adds 2 new Actions to the Alfresco repository: “Sync” and “Sync to Preview” •  Data is pushed and replicated on Drupal into existing Drupal Content Types •  Data can also be pushed and replicated from Drupal to Alfresco
  14. 14. Diagram of Integrating Alfresco/Drupal using Canopy
  15. 15. Video Presentation...
  16. 16. Case Study: Agency for Healthcare Research and QualityArchitecturalProof of Concept
  17. 17. Requirements •  AHRQ was looking to understand how to best leverage Drupal and Alfresco together in a complex Enterprise environment. •  The Drupal / Alfresco solution also needed to work with existing Enterprise technologies such as SSO, and operate across separate Cloud environments. •  Specific features, functions, and capabilities that are critical to support their business needed to work.
  18. 18. POC Architecture
  19. 19. Results •  Appnovation and Acquia delivered a fully functioning Canopy POC that demonstrated the stable and feature rich integration between Drupal and Alfresco in the context of AHRQ business. •  Canopy architecture integrated seamlessly with SSO, and operated across two separate Cloud hosting environments. •  This POC clearly demonstrated how to deliver the best value from both Drupal and Alfresco to AHRQ.
  20. 20. Canopy Architecture
  21. 21. Canopy Stack
  22. 22. Technical Details •  Data is passed between Alfresco and Drupal using a custom REST JSON interface •  Drupal JSON web service written as a Drupal module •  Alfresco JSON service written as webscripts •  Can setup custom sync Rules using Alfresco rules system
  23. 23. Canopy Services
  24. 24. Architectural Benefits •  Simple JSON REST API integrates easily into both Alfresco and Drupal. •  By replicating data between the 2 applications there are no weird hacks made to either applications data model or data access model. •  Because each application can talk with its own database as they were intended you get the full set of features of each application as they are meant to work. •  There are many options in terms of scaling the application, for example you can have a low end Alfresco implementation combined with a high scale large volume Drupal frontend.
  25. 25. Canopy Future Plans •  Plan to open source Canopy code •  Improve customization interface (some customizations are still at the code level, better to have them in a config file or separate module) •  More sophisticated authentication mechanism (currently single user integration).