The Alfresco open source ECM system was founded by John Newton, co-founder of Documentum, and John Powell, former COO of Business Objects, in 2005. Alfresco is a very scalable and extensible solution. Alfresco comes in various flavors: Alfresco Enterprise Edition, Alfresco Community Edition, and
Alfresco in Cloud.
Alfresco Community Edition is only for small-scale development or research purposes. It is not recommended for production systems as there are certain functional differences. The Community version doesn't support clustering, enterprise application servers such as WebLogic, enterprise databases such as Oracle, encryption of content stores, advanced admin tools, advanced media management, and so on. There is no Alfresco support provided for the Community version. Alfresco Enterprise Edition is production-ready code. It has been load tested and certified for use in production. The Enterprise build is fully supported by Alfresco. Alfresco in Cloud is a SaaS (Software as a Service) version of Alfresco. More details on this are given in later sections.
Refer to the following URL for more details about the differences between Community and Enterprise versions:
https://wiki.alfresco.com/wiki/Enterprise_EditionAlfresco
Enterprise Edition has various unique features, which distinguish it from other ECM systems.
Enterprise and open source
As Alfresco is built upon open source technologies, it reduces the cost of overall software acquisition, development, and maintenance. Due to this open source model, Alfresco can use the best open source technologies on the market and build a strong system at a low cost. Alfresco provides a very cost-effective solution.
Scalability is a very important aspect for any ECM system. For enterprise organizations in fields such as media, healthcare, finance, and so on, the amount of content grows exponentially, so scalability becomes an important parameter. As Alfresco is built using open source standards and technologies, it provides a very scalable architecture.
Alfresco Enterprise can be deployed on any platform, and supports multiple databases such as MySQL, Oracle, PostgreSQL, and so on. It also supports multiple application servers such as Tomcat, JBoss, WebLogic, and so on. Each tier in an Alfresco application can be deployed on a separate machine, which allows the vertical scalability of the system. Alfresco supports a clustered environment, which allows it to scale horizontally.
ECM systems should support any type of content, regardless of application or organization. Alfresco supports the storage and management of multiple types of electronic content, from normal documents to any multimedia files. It provides automatic extraction of the information from files, associates it as metadata with content, and enables easy searching.
Security and content protection is critical for any ECM system. Alfresco has a very strong authentication and authorization model. It provides an out-of-the-box database membership system; it can also be integrated with identity management systems like LDAP and
Active Directory (AD), and have centralized security and single sign-on. Alfresco provides full access control on individual content to ensure that security and business integrity is maintained. Access control can be set at the folder level or individual content.
Because of its open source model, Alfresco can be extended and customized as per requirements. Organizations can have a trained in-house team to maintain and customize Alfresco as per their needs.
Alfresco supports open standard protocols for integration with external systems. Alfresco can be integrated with any Java-based portal, such as Liferay (https://www.liferay.com/products/liferay-portal/overview) using the CMIS or REST protocols.
CMIS is a standard open source protocol to allow a document management repository to connect with a web application. It defines an abstract layer so the web interface can connect with any repository. For more details, refer to https://en.wikipedia.org/wiki/Content_Management_Interoperability_Services.
The REST protocol allows an external application to access the repository using the HTTP protocol using the same HTTP verbs, such as GET, POST, and so on. For more details, refer to https://en.wikipedia.org/wiki/Representational_state_transfer.
Alfresco provides integration with various scanning solutions, such as Ephesoft or Kofax, which gives a complete end-to-end solution. It allows organizations to perform document capture, extraction, classification, storage, and distribution via a centralized environment.
For more details about Ephesoft and Kofax refer to these URLs:
Nowadays, due to social media, collaboration has become very important for any organization as part of ECM. Alfresco, as well as content management, also provides a platform for collaboration between users internally and externally with full security and control over content. Powerful tools such as blogs, wikis, forums, and so on are provided within the Alfresco system to provide collaboration within teams.
Each project can have its own space for complete collaboration and the sharing of content.
Alfresco supports the publishing of content to various social platforms such as Twitter, Facebook, YouTube, SlideShare, and so on. It also provides Google Doc integration, which allows users to have real-time collaboration.
Business process management
Efficient business processes are an integral part of any organization. Automation of this process helps organizations to streamline processes, improve efficiency, and reduce cost. In organizations where the review and approval process of any document is very important, there would always be a need for these documents to be moved and accessed effectively.
Alfresco provides the Java-based, highly configurable BPM engine Activiti (http://www.activiti.org/). It also provides graphical tools so that less technical persons can easily design the process flow, allowing the faster rollout of processes.
As Alfresco can be accessed by any supported browser or mobile device, users get the flexibility to perform their tasks from anywhere.
Alfresco provides easy configurable rules, which can help to trigger and control this business process in a smart way.
Alfresco provides a fully managed SaaS ECM solution, leveraging the power of a cloud-based environment. Alfresco in Cloud is a ready-to-go Alfresco implementation which requires no installation and minimal configuration by customers. It allows full control over, and collaboration on, documents, similar to what can be achieved by Alfresco deployed on-premises.
Alfresco also supports a hybrid model, where content can be synchronized from your on-premises Alfresco to the cloud. This allows content to be always in sync and easily available from any location. An Alfresco on-premises solution can be used for long-term storage and compliance, and Alfresco in cloud can be used for sharing and collaboration too.
Finding the correct content within a system is very important for any content management system. Alfresco provides searching with Apache Solr (http://lucene.apache.org/solr). It provides full-text indexing of content, and metadata indexing, which allows users to easily search and locate the content in the repository. Alfresco also provides advanced search capabilities.
Alfresco also supports searches for archived content, users, and groups in the system.
Maintaining all versions of a document is also a critical aspect of an ECM system. Alfresco provides strong version management for documents. It maintains all the version changes of a document and its associated metadata. Alfresco also has a feature that allows you to revert a document to any version.
Alfresco provides very strong auditing. Each and every action on content is captured in an audit trail. This audit information can be easily retrieved and generated as a report.