Open source solutions for implementing ECM



Various open source solutions available in the market are :-

Solution Platform Features
Alfresco Microsoft Windows and Unix-like operating systems

Technologies:
  • Java
  • Document Management
  • Web Content Management (including full webapp & session virtualization)
  • Repository-level versioning (similar to Subversion)
  • Transparent overlays (similar to unionfs)
  • Records Management, including 5015.2 certification
  • Image Management
  • Auto-generated XForms with AJAX support
  • Integrated Publishing
  • Repository access via CIFS/SMB, FTP, WebDAV, NFS and CMIS
  • Activities workflow
  • Lucene search
  • Federated servers
  • Multi-language support
  • Portable application packaging
  • Multi-platform support (officially Windows, GNU/Linux and Solaris)
  • Browser-based GUI (official support for Internet Explorer and Firefox)
  • Desktop integration with Microsoft Office, OpenOffice.org and LibreOffice.
  • Clustering support
  • Pluggable authentication: NTLM, LDAP, Kerberos, CAS
  • Multiple Database support: MySQL, PostgreSQL (Community Edition), Oracle Database, IBM DB2, Microsoft SQL Server (Enterprise Edition)
LogicalDOC GNU/Linux, Windows, Mac OS X

Technologies:
  • Apache_Tomcat Application Server
  • Java J2SE (JDK 1.6 or higher)
  • GWT (Google Web Toolkit - Ajax)
  • Lucene
  • Spring Framework
  • Document Management
  • Document revisioning (minor and major revisions)
  • Image Management
  • Repository access via WebDAV and Webservice
  • jBPM workflow
  • Lucene search
  • Multi-language support
  • Multi-platform support (Windows, GNU/Linux, Mac OS X)
  • Browser-based GUI (Internet Explorer, Firefox, Google Chrome, Safari)
  • Desktop integration with Microsoft Office and Microsoft Outlook
  • Clustering support
  • Pluggable authentication: LDAP or Active Directory
  • Multiple Database support: MySQL, PostgreSQL, Oracle, Microsoft SQL Server
  • Documents full preview
  • Integrated OCR and Barcode recognition
  • Integrated TWAIN scanner support
KnowledgeTree Microsoft Windows, Mac OS and Linux clients

Technologies:
  • PHP
  • Apache Web Server
  • Document management
  • Version control
  • Access control through roles and permissions
ApexKB Platform :
  • Apache
  • Microsoft Internet Information Services
  • Hiawatha
  • Cherokee or Zeus Web Servers


Database:
  • Oracle
  • IBM DB2
  • Microsoft SQL Server


Technologies:
  • PHP
  • Javascript
  • leverages bookmarking to create a user-submitted index engine
  • allows users to tag any data, not just web pages
  • provides keyword and description tags
  • also provides expanded knowledge tags
  • knowledge tags can be customized to meet specific requirements
  • tag terms can be aligned with corporate taxonomies or data dictionary
  • a tag term is highlighted if it exists in the dictionary – user can click through to read the term
  • group based permissions and easy integration with LDAP
Nuxeo Platform :
  • Apache
  • Microsoft Internet Information Services
  • Hiawatha
  • Cherokee or Zeus Web Servers


Database:
  • Oracle
  • IBM DB2
  • Microsoft SQL Server


Technologies:
  • PHP
  • Javascript
  • Content models (via XSD schemas)
  • Document life cycle management
  • Access controls for security
  • Event model and event handler
  • Query system
  • Lock handling
  • Configurable versioning policy
  • Configurable persistence back-end
  • Support for CMIS 1.0: Apache Chemistry OpenCMIS
  • Customizable audit trail management
  • Document Routing Service: enables user-designed workflows of documents and selection of stages (human or automated) among a shared library of steps
  • Content annotation management (W3C Annotea)
  • Management of relationships within RDF graphs
  • Comment service
  • Notifications and email alerts
  • Import/Export in XML format
  • Directory: users, groups, vocabularies
  • Dashboards with an OpenSocial gadgets container
  • Web publishing tools - Wiki, blogs, simple web page creation
  • Content views - manage, configure, and sort content listings
  • Faceted navigation - repository browsing with dynamic filtering on multiple facets


What ?



Enterprise Content Management (ECM) is the strategies, methods and tools used to capture, manage, store, preserve, and deliver content and documents related to organizational processes. ECM covers the management of information within the entire scope of an enterprise whether that information is in the form of a paper document, an electronic file, a database print stream, or even an email.

What ?


ECM follows a set of Government standards which are listed below:

- HIPAA (Health Insurance Portability and Accountability Act)
- SAS 70 (Statement on Auditing Standards No. 70)
- BS 7799 (Best practices for Information Security Management)
- ISO/IEC 27001 (Information Security Management System (ISMS) )


Where ?


ECM is used for various relationships in and between

- B2E (Business to Employee)
- B2B (Business to Business)
- B2G (Business to Government) derived from B2B


To start with there are various open source solutions available in the market see my article for details and their features.

Various roles of Architect



A word "Architect" is very confusing and does trigger lot of questions. Here are some

What does an architect do ?
Who is called Architect ?



Here are some of them defined:-
Senior Enterprise Architect
Enterprise Architect
Solutions Architect
Lead Architect
Enterprise Architect
Chief Architect
Technical Architect
Infrastructure Architect

to be updated soon....

How important is design for a sprint ?



First sprint meeting has been completed and all members involved in the sprint have agreed to a list of user stories required by product owner. Now second sprint meeting has been started. Discussion started between development team, product manager and product owner.

………..

Dev Team
- We need a design task for defining the architecture,
- Decide frameworks, patterns and practices, 3rdparty tools/components
- Design sequence diagrams, activity diagrams etc.

Product Manager – Why ?

Dev Team
- Everyone gets the overall picture of what we are doing
- Easy reference point for anyone in the team and also for new team members

Product Manager – So do we need this in every sprint?

Dev Team – Yes to have update design documentation relating to changes/enhancement

………..

This is a common question for any scrum projects. Now the answer is basic and smart design which helps today and flexible for tomorrow. Also there are various tools available in the market that helps you generate design diagrams from code. So Development team do not have to update design documents each time there is a change in the requirement or added a new enhancement.

Here are some examples of how to achieve this

- Generate sequence diagrams from code
- Class diagrams from code

And more importantly now you can generate layer diagrams which give the overall picture of the whole projects along with components for more details refer to MSDN

Also layer diagrams allow you to define a set of rules which can be validated against the project. Layer diagrams can be validated as part of the build process that shows if any of the design rules are violated. So no longer do you need to manually verify code against the design document.

All of these can be automated or can be generated as and when required. So no longer design is a separate task. We only need to do what we need at this point of sprint (fit for purpose) not overestimating other things that might come in future (this is waste of time).

“Simplicity is the ultimate sophistication.”
Leonardo da Vinci quotes
top