BeJUG Session 2009-12-03: Alfresco by Tim Goffings


Published on

We created a website showing dynamic content based on web services exposed by Siebel and content generated in the Alfresco web content management system to create an integrated front-end for offering .

As the website is a direct link to the customer, OAK3 needed to have full control over the content on the website. The requirement included that non-technical people should easily be able to change the texts, images, add news on the website etc...

The material, scheduling and booking of the courses is centralized in the company CRM system (Siebel), so an integration with this is system was also an immediate requirement.

To be able to reuse the current hosting contract, the system needed to be independent of the underlying CMS system when the website is live.

Published in: Technology
1 Like
  • Be the first to comment

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

No notes for slide

BeJUG Session 2009-12-03: Alfresco by Tim Goffings

  1. 1. Bejug together we can make IT XPLORE GROUP ALFRESCO WCM & Java Tim Goffings / Xplore Group
  2. 2. Agenda • Brief Alfresco overview • Alfresco WCM case study – The OAK3 campus Customer requirements Architecture & design Development cycle Demo • Q&A
  3. 3. Alfresco overview • Alfresco is led by John Newton, founder of Documentum, and John Powell, former COO of Business Objects, and is backed by Accel Partners, Mayfield Fund and SAP Ventures. • What is it about ? Document Management Web Content Management Collaboration Content Integration and Content Services
  4. 4. Document Management • Shared drive • Integration with Microsoft Office • Rules for content applications • Basically : a virtual file system that adds features like Version control Search Workflow Organization (spaces) JSR 170 …
  5. 5. Web content management • Simple contribution by teams Through simple web forms Versioned Authorized Through proper workflow • Alfresco Surf platform • Low-cost commodity scalability Content can be transactionally deployed to static content servers or Alfresco runtime repositories
  6. 6. Collaboration • Document library Store library (bulk upload) Tag & search data • Activity feeds Find by activity metadata (who/what/when/where) • Create virtual teams People = content -> find people & teams as you would do content • SharePoint Protocol Support
  7. 7. Alfresco content platform • Content management - “in the cloud” Amazon EC2 (Elastic Compute Cloud) Old way New way Scale on high-end, high-cost, SMP Scale on a set of loosely coupled, low machines and cluster software - the cost, commodity hardware and software proprietary way - the open source way Let the ECM system dictate the stack Reuse existing hardware, software and you have to use skills – database, application server, clustering, load balancing Access Content through a complex Deliver Content-as-a-Service as simply as proprietary API tying you to that ECM accessing a URL and simply mash-up vendor and cutting you off from any internal and external content external content
  8. 8. Standards • Recently submitted to OASIS CMIS Content Management Interoperability Services "define a domain model and bindings that are designed to be layered on top of existing Content Management systems and their existing programmatic interfaces. The TC will not prescribe how specific features should be implemented within those Enterprise Content Management (ECM) systems. Rather it will seek to define a generic/universal set of capabilities provided by an ECM system and a set of services for working with those capabilities.“ • JSR 170 & 283 (Java Content Repositories API)
  9. 9. Focus of tonight : WCM case study • Customer : The OAK3 Campus • Customer goals Management of courses / exams / customers / subscriptions to exams and course-enrolls Website publishing & authoring Workflow implementation for controlled updates • Our goals Integrate Alfresco in a standard Java development environment Segregate CMS & Java work
  10. 10. OAK3 – case – Business data • Courses & Trainings
  11. 11. OAK3 – case – Business actions • Training subscriptions
  12. 12. OAK3 – case – Business actions • Exams & subscriptions
  13. 13. Solution Components • Siebel CRM was the product of choice (legacy) • Simple Tomcat web server
  14. 14. Deployment • Possibilities Deploy within Alfresco infrastructure Using a separate web server • Tomcat • Apache ...
  15. 15. Component details
  16. 16. Siebel CRM • Siebel contains all business data Courses & training data Exams Customers Subscriptions Enrols News letters • Made available as SOAP Web services .NET development • Secured on transport level (SSL)
  17. 17. Java Development • Eclipse • Source control • J-Unit • Spring • AXIS • Simple JSP Tag for exposing CRM data • Maven
  18. 18. Alfresco - Structure • Web Project • Users Alfresco Administrator OAK3 Administrator OAK3 Author • Sandbox • Workflow • Deployment server - remote
  19. 19. Alfresco web form • Structured content XSD for structure Template (Freemarker) <html> .... <title>${homepage.pagetitle}</title> ... </html>
  20. 20. Software Factory flow • Graphical team creates an HTML website • .NET team develop web services in Siebel • Java team creates dynamic components as JSP tags. (remember references to css files is required) • Alfresco team Create XSD schema Create FTL template from HTML page Reference Schema elements in FTL Create web form in Alfresco
  21. 21. Making Announcements editable • Get original JSP / HTML • Create XSD Schema • Create Freemarker Template • Add to Web Project • Demo
  22. 22. Lessons learnt • Software factory is possible, splitting up WCM & java development for 1 project is feasible • Alfresco Community edition is not stable, enterprise edition is recommended.
  23. 23. Q&A